RT-AC66 3.0.0.4.374.130 core
[tomato.git] / release / src-rt-6.x / cfe / cfe / vendor / cfe_vendor_iocb.h
blob909f69eb4507c41f92af287712d6a769bdc8e9c3
1 /* *********************************************************************
2 * Broadcom Common Firmware Environment (CFE)
3 *
4 * IOCB definitions File: cfe_iocb.h
5 *
6 * This module describes CFE's IOCB structure, the main
7 * data structure used to communicate API requests with CFE.
8 *
9 * Author: Mitch Lichtenberg (mpl@broadcom.com)
11 *********************************************************************
13 * Copyright 2000,2001,2002,2003
14 * Broadcom Corporation. All rights reserved.
16 * This software is furnished under license and may be used and
17 * copied only in accordance with the following terms and
18 * conditions. Subject to these conditions, you may download,
19 * copy, install, use, modify and distribute modified or unmodified
20 * copies of this software in source and/or binary form. No title
21 * or ownership is transferred hereby.
23 * 1) Any source code used, modified or distributed must reproduce
24 * and retain this copyright notice and list of conditions
25 * as they appear in the source file.
27 * 2) No right is granted to use any trade name, trademark, or
28 * logo of Broadcom Corporation. The "Broadcom Corporation"
29 * name may not be used to endorse or promote products derived
30 * from this software without the prior written permission of
31 * Broadcom Corporation.
33 * 3) THIS SOFTWARE IS PROVIDED "AS-IS" AND ANY EXPRESS OR
34 * IMPLIED WARRANTIES, INCLUDING BUT NOT LIMITED TO, ANY IMPLIED
35 * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
36 * PURPOSE, OR NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT
37 * SHALL BROADCOM BE LIABLE FOR ANY DAMAGES WHATSOEVER, AND IN
38 * PARTICULAR, BROADCOM SHALL NOT BE LIABLE FOR DIRECT, INDIRECT,
39 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
40 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
41 * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
42 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
43 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
44 * TORT (INCLUDING NEGLIGENCE OR OTHERWISE), EVEN IF ADVISED OF
45 * THE POSSIBILITY OF SUCH DAMAGE.
46 ********************************************************************* */
48 #ifndef _CFE_VENDOR_IOCB_H
49 #define _CFE_VENDOR_IOCB_H
51 /* *********************************************************************
52 * Constants
53 ********************************************************************* */
55 #define CFE_CMD_VENDOR_SAMPLE (CFE_CMD_VENDOR_USE+0)
57 #define CFE_CMD_VENDOR_MAX (CFE_CMD_VENDOR_USE+1)
60 /* *********************************************************************
61 * Structures
62 ********************************************************************* */
65 * Vendor note: The fields in this structure leading up to the
66 * union *must* match the ones in cfe_iocb.h
68 * You can declare your own parameter list members here, since
69 * only your functions will be using them.
73 typedef struct cfe_vendor_iocb_s {
74 cfe_uint_t iocb_fcode; /* IOCB function code */
75 cfe_int_t iocb_status; /* return status */
76 cfe_int_t iocb_handle; /* file/device handle */
77 cfe_uint_t iocb_flags; /* flags for this IOCB */
78 cfe_uint_t iocb_psize; /* size of parameter list */
79 union {
80 /* add/replace parameter list here */
81 iocb_buffer_t iocb_buffer; /* buffer parameters */
82 } plist;
83 } cfe_vendor_iocb_t;
86 #endif