1 /*
2 * Copyright (c) 2013, Texas Instruments Incorporated
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 *
12 * * Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution.
15 *
16 * * Neither the name of Texas Instruments Incorporated nor the names of
17 * its contributors may be used to endorse or promote products derived
18 * from this software without specific prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 */
32 /*!
33 * @file dcmd_syslink.h
34 *
35 * @brief DCMD definitions for ipc device
36 *
37 * @ver 0001
38 */
39 #ifndef DCMD_SYSLINK_H
40 #define DCMD_SYSLINK_H
42 #include <devctl.h>
44 #if defined (__cplusplus)
45 extern "C" {
46 #endif
48 #define _DCMD_SYSLINK _DCMD_MISC
50 typedef enum {
51 _DCMD_SYSLINK_NAMESERVER = 0x2A,
52 _DCMD_SYSLINK_MESSAGEQ,
53 _DCMD_SYSLINK_MULTIPROC,
54 _DCMD_SYSLINK_GATEMP
55 } dcmd_class_t_val;
57 /* ----------------------------------------------------------------------------
58 * DEVCTL command IDs for Nameserver
59 * ----------------------------------------------------------------------------
60 */
61 /*!
62 * @brief Command for NameServer_setup
63 */
64 #define DCMD_NAMESERVER_SETUP __DIOTF(_DCMD_SYSLINK_NAMESERVER,\
65 2,\
66 NameServerDrv_CmdArgs)
67 /*!
68 * @brief Command for NameServer_setup
69 */
70 #define DCMD_NAMESERVER_DESTROY __DIOTF(_DCMD_SYSLINK_NAMESERVER,\
71 3,\
72 NameServerDrv_CmdArgs)
73 /*!
74 * @brief Command for NameServer_destroy
75 */
76 #define DCMD_NAMESERVER_PARAMS_INIT __DIOTF(_DCMD_SYSLINK_NAMESERVER,\
77 4,\
78 NameServerDrv_CmdArgs)
79 /*!
80 * @brief Command for NameServer_create
81 */
82 #define DCMD_NAMESERVER_CREATE __DIOTF(_DCMD_SYSLINK_NAMESERVER,\
83 5,\
84 NameServerDrv_CmdArgs)
85 /*!
86 * @brief Command for NameServer_delete
87 */
88 #define DCMD_NAMESERVER_DELETE __DIOTF(_DCMD_SYSLINK_NAMESERVER,\
89 6,\
90 NameServerDrv_CmdArgs)
92 /*!
93 * @brief Command for NameServer_addUInt32
94 */
95 #define DCMD_NAMESERVER_ADDUINT32 __DIOTF(_DCMD_SYSLINK_NAMESERVER,\
96 7,\
97 NameServerDrv_CmdArgs)
99 /*!
100 * @brief Command for NameServer_remove
101 */
102 #define DCMD_NAMESERVER_REMOVE __DIOTF(_DCMD_SYSLINK_NAMESERVER,\
103 8,\
104 NameServerDrv_CmdArgs)
105 /*!
106 * @brief Command for NameServer_removeEntry
107 */
108 #define DCMD_NAMESERVER_REMOVEENTRY __DIOTF(_DCMD_SYSLINK_NAMESERVER,\
109 9,\
110 NameServerDrv_CmdArgs)
111 /*!
112 * @brief Command for NameServer_getUInt32
113 */
114 #define DCMD_NAMESERVER_GETUINT32 __DIOTF(_DCMD_SYSLINK_NAMESERVER,\
115 10, \
116 NameServerDrv_CmdArgs)
117 /*!
118 * @brief Command for NameServer_add
119 */
120 #define DCMD_NAMESERVER_ADD __DIOTF(_DCMD_SYSLINK_NAMESERVER,\
121 11,\
122 NameServerDrv_CmdArgs)
123 /*!
124 * @brief Command for NameServer_get
125 */
126 #define DCMD_NAMESERVER_GET __DIOTF(_DCMD_SYSLINK_NAMESERVER,\
127 12, \
128 NameServerDrv_CmdArgs)
131 /* ----------------------------------------------------------------------------
132 * IOCTL command IDs for MessageQ
133 * ----------------------------------------------------------------------------
134 */
136 /*!
137 * @brief Command for MessageQ_getConfig
138 */
139 #define DCMD_MESSAGEQ_GETCONFIG __DIOTF(_DCMD_SYSLINK_MESSAGEQ,\
140 1,\
141 MessageQDrv_CmdArgs)
142 /*!
143 * @brief Command for MessageQ_setup
144 */
145 #define DCMD_MESSAGEQ_SETUP __DIOTF(_DCMD_SYSLINK_MESSAGEQ,\
146 2,\
147 MessageQDrv_CmdArgs)
148 /*!
149 * @brief Command for MessageQ_setup
150 */
151 #define DCMD_MESSAGEQ_DESTROY __DIOTF(_DCMD_SYSLINK_MESSAGEQ,\
152 3,\
153 MessageQDrv_CmdArgs)
154 /*!
155 * @brief Command for MessageQ_create
156 */
157 #define DCMD_MESSAGEQ_CREATE __DIOTF(_DCMD_SYSLINK_MESSAGEQ,\
158 4,\
159 MessageQDrv_CmdArgs)
160 /*!
161 * @brief Command for MessageQ_delete
162 */
163 #define DCMD_MESSAGEQ_DELETE __DIOTF(_DCMD_SYSLINK_MESSAGEQ,\
164 5,\
165 MessageQDrv_CmdArgs)
167 /* ----------------------------------------------------------------------------
168 * IOCTL command IDs for MultiProc
169 * ----------------------------------------------------------------------------
170 */
172 /*!
173 * @brief Command for MultiProc_getConfig
174 */
175 #define DCMD_MULTIPROC_GETCONFIG __DIOTF(_DCMD_SYSLINK_MULTIPROC,\
176 1,\
177 MultiProcDrv_CmdArgs)
179 /* ----------------------------------------------------------------------------
180 * IOCTL command IDs for GateMP
181 * ----------------------------------------------------------------------------
182 */
184 /*!
185 * @brief Command for GateMP_getFreeResource
186 */
187 #define DCMD_GATEMP_GETFREERES __DIOTF(_DCMD_SYSLINK_GATEMP,\
188 1,\
189 GateMPDrv_CmdArgs)
191 /*!
192 * @brief Command for GateMP_releaseResource
193 */
194 #define DCMD_GATEMP_RELRES __DIOTF(_DCMD_SYSLINK_GATEMP,\
195 2,\
196 GateMPDrv_CmdArgs)
198 /*!
199 * @brief Command for GateMP_getNumResources
200 */
201 #define DCMD_GATEMP_GETNUMRES __DIOTF(_DCMD_SYSLINK_GATEMP,\
202 3,\
203 GateMPDrv_CmdArgs)
205 /*!
206 * @brief Command for GateMP_start
207 */
208 #define DCMD_GATEMP_START __DIOTF(_DCMD_SYSLINK_GATEMP,\
209 4,\
210 GateMPDrv_CmdArgs)
212 /*!
213 * @brief Command for GateMP_isSetup
214 */
215 #define DCMD_GATEMP_ISSETUP __DIOTF(_DCMD_SYSLINK_GATEMP,\
216 5,\
217 GateMPDrv_CmdArgs)
219 #if defined (__cplusplus)
220 }
221 #endif
223 #endif