Prevent SR0 owner from being stopped if host process is still using GateMP
[ipc/ipcdev.git] / qnx / src / ipc3x_dev / ti / syslink / build / Qnx / resmgr / dcmd_syslink.h
1 /*
2  * Copyright (c) 2013-2014, 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_stop
214  */
215 #define DCMD_GATEMP_STOP                    __DIOTF(_DCMD_SYSLINK_GATEMP,\
216                                             5,\
217                                             GateMPDrv_CmdArgs)
219 /*!
220  *  @brief  Command for GateMP_isSetup
221  */
222 #define DCMD_GATEMP_ISSETUP                 __DIOTF(_DCMD_SYSLINK_GATEMP,\
223                                             6,\
224                                             GateMPDrv_CmdArgs)
226 #if defined (__cplusplus)
228 #endif
230 #endif