versadac  1
versadac - Scalable Recorder Firmware
message.h
1 /*---------------------------------------------------------------------------*/
2 /* Copyright (C) 2006 Woodhead Software & Electonics. All rights reserved. */
3 /*---------------------------------------------------------------------------*/
4 /* This program is protected by international copyright. */
5 /* */
6 /* The use of this software including but not limited to its Source Code */
7 /* is subject to restrictions as agreed in the license agreement between */
8 /* you and Woodhead. */
9 /* Copying or distribution is not allowed unless expressly permitted */
10 /* according to your license agreement with Woodhead. */
11 /*---------------------------------------------------------------------------*/
12 /* */
13 /* Project : STACK PROFINET Controller */
14 /* Component : Message RELATION */
15 /* $Workfile:: message.h $*/
16 /* $Revision:: 9 $*/
17 /* $Date:: 13/07/11 13:57 $*/
18 /* */
19 /*---------------------------------------------------------------------------*/
20 /* */
21 /* D e s c r i p t i o n : */
22 /* Definition */
23 /* */
24 /*---------------------------------------------------------------------------*/
25 #ifndef _MESSAGE_H
26 #define _MESSAGE_H
27 
28 #define MSG_DATA_SIZE (ETHERNET_MAX_FRAME_LENGTH + 4 + 87) /* Max Size of the data inside a message + 87 is used to align PN message with Applicom message*/
29 #define MIN_MESSAGE_FOR_STACK 5
30 
31 #ifdef LLDP_SUPPORTED
32  #define MAX_MSG (15+20*MAX_DEVICE+WSE_LLDP_MAX_PORT) /* Max message in the system*/
33 #endif
34 #ifndef LLDP_SUPPORTED
35  #define MAX_MSG (15+20*MAX_DEVICE) /* Max message in the system*/
36 #endif
37 
38 
39 #define PND_MAX_RETRY 1000000ul /* Max retry to get message wait or Rpc buffer */
40 extern APP_DWORD gdwTaskID[MAXNUM_OF_QUEUE];
41 
42 #define PN_MSG_VERSION_H 2
43 #define PN_MSG_VERSION_L 0
44 /*-----------------------------------------------------------------------*/
45 /* FSPMDEV Messages list */
46 /*-----------------------------------------------------------------------*/
47 
48 #define ID_FSPMDEV_START_STACK 0
49 
50 #define ID_FSPMDEV_RMPM_INIT_CNF_POS 1
51 #define ID_FSPMDEV_RMPM_INIT_CNF_NEG 2
52 #define ID_FSPMDEV_RMPM_STOP_IND 3
53 #define ID_FSPMDEV_READ_RSP_POS 4
54 #define ID_FSPMDEV_READ_RSP_NEG 5
55 #define ID_FSPMDEV_WRITE_RSP_POS 6
56 #define ID_FSPMDEV_WRITE_RSP_NEG 7
57 #define ID_FSPMDEV_ALARM_REQ 8
58 #define ID_FSPMDEV_ALARM_ACK_REQ 9
59 #define ID_FSPMDEV_CONNECT_RSP_POS 10
60 #define ID_FSPMDEV_CONNECT_RSP_NEG 11
61 #define ID_FSPMDEV_RELEASE_RSP_POS 12
62 #define ID_FSPMDEV_RELEASE_RSP_NEG 13
63 #define ID_FSPMDEV_DCONTROL_RSP_POS 14
64 #define ID_FSPMDEV_DCONTROL_RSP_NEG 15
65 #define ID_CPM_NO_DATA_IND 16
66 #define ID_FSPMDEV_CCONTROL_REQ 17
67 #define ID_CM_READ_IND 18
68 #define ID_CM_WRITE_IND 19
69 #define ID_CPM_SET_RED_ROLE_CNF 20
70 #define ID_ALPMR_ACK_CNF_NEG 21
71 #define ID_ALPMR_ACK_CNF_POS 22
72 #define ID_CMDEV_IN_DATA_IND 23
73 #define ID_CMDEV_NEW_OUTPUT_IND 24
74 #define ID_ALPMI_IND_CNF_POS 25
75 #define ID_ALPMI_IND_CNF_NEG 26
76 #define ID_ALPMI_ACK 27
77 #define ID_CMDEV_CONNECT_IND 28
78 #define ID_CMDEV_RELEASE_IND 29
79 #define ID_CMDEV_ABORT_IND 30
80 #define ID_CMDEV_DCONTROL_IND 31
81 #define ID_CMDEV_CCONTROL_CNF_POS 32
82 #define ID_CMDEV_CCONTROL_CNF_NEG 33
83 #define ID_RM_DCP_SET_NAME 34
84 #define ID_RM_DCP_SET_IP 35
85 #define ID_RM_DCP_SET_BLINK 36
86 #define ID_RM_DCP_SET_RESET_FACTORY 37
87 #define ID_FSPMDEV_ASESM_ABORT_REQ 38
88 #define ID_CM_INIT_CNF_POS 39
89 #define ID_CM_INIT_CNF_NEG 40
90 #define ID_FSPMDEV_DCP_SET_BLINK_CNF_POS 41
91 #define ID_FSPMDEV_DCP_SET_NAME_CNF_POS 42
92 #define ID_FSPMDEV_DCP_SET_NAME_CNF_NEG 43
93 #define ID_FSPMDEV_DCP_SET_IP_CNF_POS 44
94 #define ID_FSPMDEV_DCP_SET_IP_CNF_NEG 45
95 
96 #define ID_FSPMDEV_DCP_SET_RESET_FACTORY_CNF_POS 46
97 #define ID_FSPMDEV_DCP_SET_RESET_FACTORY_CNF_NEG 47
98 
99 #define ID_FSPMDEV_ALARM_CTRL_IND 48
100 #define ID_POOL_UNLOCK_REQ 49
101 
102 #ifdef DHCP_ACTIVATE
103 
104  #define ID_RM_DCP_SET_DHCP 50
105  #define ID_FSPMDEV_DCP_SET_DHCP_CNF_POS 51
106  #define ID_FSPMDEV_DCP_SET_DHCP_CNF_NEG 52
107 
108 #endif /* DHCP_ACTIVATE */
109 
110 #define ID_FSPMDEV_SR_NEWSTAT_IND 53
111 #define ID_FSPMDEV_SR_RDHT_TIMEOUT_IND 54
112 
113 #define ID_FSPMDEV_MAX 55
114 
115 
116 /*-----------------------------------------------------------------------*/
117 /* CMDEV Messages list */
118 /*-----------------------------------------------------------------------*/
119 
120 #define ID_CMDEV_INIT_REQ 0
121 #define ID_RM_CONNECT_IND 1
122 #define ID_CM_CONNECT_RSP_POS 2
123 #define ID_CM_CONNECT_RSP_NEG 3
124 #define ID_RM_WRITE_IND 4
125 #define ID_CM_WRITE_RSP_POS 5
126 #define ID_CM_WRITE_RSP_NEG 6
127 #define ID_RM_READ_IND 7
128 #define ID_CM_READ_RSP_POS 8
129 #define ID_CM_READ_RSP_NEG 9
130 #define ID_RM_DCONTROL_IND 10
131 #define ID_CM_DCONTROL_RSP_POS 11
132 #define ID_CM_DCONTROL_RSP_NEG 12
133 #define ID_RM_RELEASE_IND 13
134 #define ID_RM_RELEASE_RSP_POS 14
135 #define ID_RM_RELEASE_RSP_NEG 15
136 #define ID_CM_CCONTROL_REQ 16
137 #define ID_RM_CCONTROL_CNF_POS 17
138 #define ID_RM_CCONTROL_CNF_NEG 18
139 #define ID_CM_SET_PROV_STATUS_REQ 19
140 #define ID_CM_ABORT_REQ 20
141 #define ID_ALPMI_ACTIVATE_CNF_POS 21
142 #define ID_ALPMI_ACTIVATE_CNF_NEG 22
143 
144 /* PPM TO CMCTL */
145 #define ID_PPM_ACTIVE_CNF_POS 23
146 #define ID_PPM_ACTIVE_CNF_NEG 24
147 
148 #define ID_PPM_CLOSE_CNF_POS 25
149 #define ID_PPM_CLOSE_CNF_NEG 26
150 
151 /* CPM TO CMCTL */
152 #define ID_CPM_ACTIVE_CNF_POS 27
153 #define ID_CPM_ACTIVE_CNF_NEG 28
154 
155 #define ID_CPM_CLOSE_CNF_POS 29
156 #define ID_CPM_CLOSE_CNF_NEG 30
157 
158 #define ID_CPM_STOP_IND 31
159 #define ID_CPM_NEW_CONS_DATA_IND 32
160 
161 #define ID_ALPMI_CLOSE_CNF_POS 33
162 #define ID_ALPMI_ERROR_IND 34
163 #define ID_ALPMR_ERROR_IND 35
164 #define ID_ALPMI_CLOSE_CNF_NEG 36
165 #define ID_CMDEV_TIMEOUT 37
166 #define ID_RM_ABORT_CNF 38
167 #define ID_ALPMR_ACTIVATE_CNF_POS 39
168 #define ID_ALPMR_ACTIVATE_CNF_NEG 40
169 #define ID_ALPMR_CLOSE_CNF_POS 41
170 #define ID_ALPMR_CLOSE_CNF_NEG 42
171 #define ID_PPM_ERROR_IND 43
172 #define ID_CMDEV_MAX 44
173 
174 
175 
176 
177 
178 /*-----------------------------------------------------------------------*/
179 /* RMPM Messages list */
180 /*-----------------------------------------------------------------------*/
181 
182 #define ID_RMPM_INIT_REQ 0
183 #define ID_RMPM_DCPMCR_ACTIVATE_CNF_POS 1
184 #define ID_RMPM_DCPMCR_ACTIVATE_CNF_NEG 2
185 #define ID_RMPM_DCPUCR_ACTIVATE_CNF_POS 3
186 #define ID_RMPM_DCPUCR_ACTIVATE_CNF_NEG 4
187 #define ID_RMPM_SETUP_IND 5
188 #define ID_RMPM_DHCP_OFFER_IND 6
189 #define ID_RMPM_DCPUCR_SET_IND 7
190 #define ID_RMPM_DCPMCR_IDENTIFY_IND 8
191 #define ID_RMPM_DCPUCR_GET_IND 9
192 #define ID_RMPM_TIMEOUT 10
193 #define ID_RMPM_CCONTROL_REQ 11
194 #define ID_RMPM_CCONTROL_CNF_POS 12
195 #define ID_RMPM_CCONTROL_CNF_NEG 13
196 #define ID_RMPM_DCONTROL_IND 14
197 #define ID_RMPM_DCONTROL_RSP_POS 15
198 #define ID_RMPM_DCONTROL_RSP_NEG 16
199 #define ID_RMPM_WRITE_IND 17
200 #define ID_RMPM_WRITE_RSP_POS 18
201 #define ID_RMPM_WRITE_RSP_NEG 19
202 #define ID_RMPM_READ_IND 20
203 #define ID_RMPM_READ_RSP_POS 21
204 #define ID_RMPM_READ_RSP_NEG 22
205 #define ID_RMPM_CONNECT_IND 23
206 #define ID_RMPM_CONNECT_RSP_POS 24
207 #define ID_RMPM_CONNECT_RSP_NEG 25
208 #define ID_RMPM_RELEASE_IND 26
209 #define ID_RMPM_RELEASE_RSP_POS 27
210 #define ID_RMPM_RELEASE_RSP_NEG 28
211 #define ID_RMPM_DCPMCR_CLOSE_CNF_POS 29
212 #define ID_RMPM_DCPMCR_CLOSE_CNF_NEG 30
213 #define ID_RMPM_DCPUCR_CLOSE_CNF_POS 31
214 #define ID_RMPM_DCPUCR_CLOSE_CNF_NEG 32
215 #define ID_RMPM_ABORT_REQ 33
216 #define ID_RMPM_DCP_SET_NAME_CNF_POS 34
217 #define ID_RMPM_DCP_SET_NAME_CNF_NEG 35
218 #define ID_RMPM_DCP_SET_IP_CNF_POS 36
219 #define ID_RMPM_DCP_SET_IP_CNF_NEG 37
220 #define ID_RMPM_DCP_SET_BLINK_CNF_POS 38
221 #define ID_RMPM_DCP_SET_RESET_FACTORY_CNF_POS 39
222 #define ID_RMPM_DCP_SET_RESET_FACTORY_CNF_NEG 40
223 #define ID_RPC_READ_IMPL_IND 41
224 
225 #define ID_RPC_CANCEL_CNF 42
226 #define ID_RPC_LOOKUP_REQ 43
227 #define ID_RPC_LOOKUPFREE_REQ 44
228 
229 #define ID_RMPM_HELLO_TIMER_EXPIRED 45
230 #define ID_RMPM_HELLO_REQUESTED 46
231 
232 #ifdef DHCP_ACTIVATE
233 #define ID_RMPM_DCP_SET_DHCP_CNF_POS 47
234 #define ID_RMPM_DCP_SET_DHCP_CNF_NEG 48
235 #define ID_RMPM_MAX 49
236 #endif /* DHCP_ACTIVATE */
237 
238 #ifndef DHCP_ACTIVATE
239 #define ID_RMPM_MAX 47
240 #endif /* DHCP_ACTIVATE */
241 
242 
243 
244 /* sttup message */
245 #define ID_FSPMDEV_DCP_SET_NAME_IND 0
246 #define ID_FSPMDEV_DCP_SET_IP_IND 1
247 #define ID_FSPMDEV_DCP_SET_BLINK_IND 2
248 #define ID_FSPMDEV_CONNECT_IND 3
249 #define ID_FSPMDEV_WRITE_IND 4
250 #define ID_FSPMDEV_READ_IND 5
251 #define ID_FSPMDEV_DCONTROL_IND 6
252 #define ID_FSPMDEV_CCONTROL_RSP_POS 7
253 #define ID_FSPMDEV_CCONTROL_RSP_NEG 8
254 #define ID_FSPMDEV_RELEASE_IND 9
255 #define ID_STTUP_CONTROL_REQUEST 10
256 #define ID_FSPMDEV_ABORT_IND 11
257 #define ID_FSPMDEV_DCP_SET_RESET_FACTORY_IND 12
258 #define ID_FSPMDEV_ALARM_NOTIFICATION_CNF_NEG 13
259 #define ID_FSPMDEV_ALARM_NOTIFICATION_CNF_POS 14
260 #define ID_FSPMDEV_ALARM_ACK_IND 15
261 #define ID_STTUP_PLUG_REQ 16
262 #define ID_STTUP_PULL_REQ 17
263 #define ID_STTUP_GET_INPUT_REQ 18
264 #define ID_STTUP_SET_OUTPUT_REQ 19
265 #define ID_STTUP_SET_INPUT_IOCS_REQ 20
266 #define ID_STTUP_GET_OUTPUT_IOCS_REQ 21
267 #define ID_STTUP_SET_OUTPUT_APDU_REQ 22
268 
269 #define ID_PPM_SET_INPUT_CNF_POS 23
270 #define ID_PPM_SET_INPUT_CNF_NEG 24
271 #define ID_PPM_SET_OUTPUT_APDU_CNF_POS 25
272 #define ID_PPM_SET_OUTPUT_APDU_CNF_NEG 26
273 #define ID_CPM_GET_OUTPUT_CNF_POS 27
274 #define ID_CPM_GET_OUTPUT_CNF_NEG 28
275 #define ID_CPM_GET_OUTPUT_IOCS_CNF_POS 29
276 #define ID_CPM_GET_OUTPUT_IOCS_CNF_NEG 30
277 #define ID_STTUP_ALARM_REQ 31
278 #define ID_STTUP_CTRL_ALARM_ACK 32
279 #define ID_STTUP_ALARM_CTRL_IND 33
280 #define ID_STTUP_INIT 34
281 
282 #define ID_FSPMDEV_INIT_CNF_POS 35
283 #define ID_FSPMDEV_INIT_CNF_NEG 36
284 
285 #define ID_STTUP_GET_INPUT_APDU_REQ 37
286 
287 #define ID_STTUP_STOP 38
288 
289 #define ID_STTUP_HELLO_CONFIGURATION 39
290 /*
291  Well managed DHCP and New Input
292 */
293 #ifdef DHCP_ACTIVATE
294 
295  #define ID_FSPMDEV_DCP_SET_DHCP_IND 40
296 
297  #ifdef NEW_INPUT_DATA_MODE
298 
299  #define ID_FSPMDEV_DCP_NEW_DATA_IND 41
300  #define ID_STTUP_MAX 42
301 
302  #else /*NEW_INPUT_DATA_MODE*/
303 
304  #define ID_STTUP_MAX 41
305 
306  #endif /*NEW_INPUT_DATA_MODE*/
307 
308 #else /* DHCP_ACTIVATE */
309 
310  #ifdef NEW_INPUT_DATA_MODE
311 
312  #define ID_FSPMDEV_DCP_NEW_DATA_IND 40
313  #define ID_STTUP_MAX 41
314 
315  #else /*NEW_INPUT_DATA_MODE*/
316 
317  #define ID_STTUP_MAX 40
318 
319  #endif /*NEW_INPUT_DATA_MODE*/
320 
321 
322 #endif /* DHCP_ACTIVATE */
323 
324 
325 
326 /*-----------------------------------------------------------------------*/
327 /* ERROR Messages list */
328 /*-----------------------------------------------------------------------*/
329 
330 /*-----------------------------------------------------------------------*/
331 /* FAL Messages list */
332 /*-----------------------------------------------------------------------*/
333 #define ID_MSG_ACYC_STOP 0
334 #define ID_MSG_ACYC_START 1
335 
336 #ifdef IOCONTROLLER
337 /*-----------------------------------------------------------------------*/
338 /* CMCTL Messages list */
339 /*-----------------------------------------------------------------------*/
340 /* FSPMCTL to CMCTL */
341 #define ID_CM_INIT_REQ 0
342 #define ID_CM_CONNECT_REQ 1
343 #define ID_CM_WRITE_REQ 2
344 #define ID_CM_READ_REQ 3
345 #define ID_CM_ABORT_REQ 4
346 #define ID_CM_DCONTROL_REQ 5
347 
348 /* NRPM TO CMCTL */
349 #define ID_RM_INIT_CNF_POS 6
350 #define ID_RM_INIT_CNF_NEG 7
351 #define ID_RM_CONNECT_CNF_POS 8
352 #define ID_RM_CONNECT_CNF_NEG 9
353 #define ID_RM_WRITE_CNF_POS 10
354 #define ID_RM_WRITE_CNF_NEG 11
355 #define ID_RM_READ_CNF_POS 12
356 #define ID_RM_READ_CNF_NEG 13
357 #define ID_RM_ABORT_CNF_POS 14
358 #define ID_RM_ABORT_CNF_NEG 15
359 #define ID_RM_CANCEL_CNF_POS 16
360 #define ID_RM_CANCEL_CNF_NEG 17
361 #define ID_RM_CCONTROL_IND 18
362 #define ID_RM_DCONTROL_CNF_POS 19
363 #define ID_RM_DCONTROL_CNF_NEG 20
364 #define ID_RM_RELEASE_CNF_POS 21
365 #define ID_RM_RELEASE_CNF_NEG 22
366 
367 /* PPM TO CMCTL */
368 #define ID_PPM_ACTIVE_CNF_POS 23
369 #define ID_PPM_ACTIVE_CNF_NEG 24
370 #define ID_PPM_CLOSE_CNF_POS 25
371 #define ID_PPM_CLOSE_CNF_NEG 26
372 
373 /* CPM TO CMCTL */
374 #define ID_CPM_ACTIVE_CNF_POS 27
375 #define ID_CPM_ACTIVE_CNF_NEG 28
376 #define ID_CPM_CLOSE_CNF_POS 29
377 #define ID_CPM_CLOSE_CNF_NEG 30
378 #define ID_CPM_STOP_IND 31
379 #define ID_CPM_NEW_CONS_DATA_IND 32
380 
381 /* ALMPMR TO CMCTL */
382 /*#define ID_ALMPMR_ACTIVE_CNF_POS 33
383 #define ID_ALMPMR_ACTIVE_CNF_NEG 34
384 #define ID_ALMPMR_CLOSE_CNF_POS 35
385 #define ID_ALMPMR_CLOSE_CNF_NEG 36
386 #define ID_ALMPMR_ERROR_IND 37
387 #define ID_CM_RELEASE_REQ 38*/
388 #pragma define("ID_PPM_ERROR_IND yet define ")
389 /*#define ID_PPM_ERROR_IND 39
390 #define ID_CMCTL_MAX 40
391 */
392 /*-----------------------------------------------------------------------*/
393 /* NRPM Messages list */
394 /*-----------------------------------------------------------------------*/
395 
396 /*CMCTL to NRPM*/
397 #define ID_RM_INIT_REQ 0
398 #define ID_RM_CONNECT_REQ 1
399 #define ID_RM_READ_REQ 2
400 #define ID_RM_WRITE_REQ 3
401 #define ID_RM_DCONTROL_REQ 4
402 #define ID_RM_RELEASE_REQ 5
403 #define ID_RM_CANCEL_REQ 6
404 #define ID_RM_ABORT_REQ 7
405 #define ID_RM_CCONTROL_RSP_POS 8
406 #define ID_RM_CCONTROL_RSP_NEG 9
407 
408 /*RPC to NRPM*/
409 #define ID_RPC_DCONTROL_CNF_POS 10
410 #define ID_RPC_DCONTROL_CNF_NEG 11
411 #define ID_RPC_CONNECT_CNF_POS 12
412 #define ID_RPC_CONNECT_CNF_NEG 13
413 #define ID_RPC_READ_CNF_POS 14
414 #define ID_RPC_READ_CNF_NEG 15
415 #define ID_RPC_WRITE_CNF_POS 16
416 #define ID_RPC_WRITE_CNF_NEG 17
417 #define ID_RPC_CCONTROL_IND 18
418 #define ID_RPC_RELEASE_CNF_POS 19
419 #define ID_RPC_RELEASE_CNF_NEG 20
420 
421 /*Another task to NRPM*/
422 #define ID_ARP_GETMACQ_IND 21
423 #define ID_DCPMCS_IDENTIFY_CNF_NEG 22
424 #define ID_DCPMCS_IDENTIFY_CNF_POS 23
425 #define ID_DCPUCS_SETVALUE_CNF_NEG 24
426 #define ID_DCPUCS_SETVALUE_CNF_POS 25
427 #define ID_DCPUCS_GETVALUE_CNF_NEG 26
428 #define ID_DCPUCS_GETVALUE_CNF_POS 27
429 
430 #define ID_DCPMCS_ACTIVATE_CNF_POS 28
431 #define ID_DCPMCS_ACTIVATE_CNF_NEG 29
432 #define ID_DCPUCS_ACTIVATE_CNF_POS 30
433 #define ID_DCPUCS_ACTIVATE_CNF_NEG 31
434 #define ID_DCPMCS_CLOSE_CNF_POS 32
435 #define ID_DCPMCS_CLOSE_CNF_NEG 33
436 #define ID_DCPUCS_CLOSE_CNF_POS 34
437 #define ID_DCPUCS_CLOSE_CNF_NEG 35
438 
439 #define ID_DNS_GETHOSTBYNAME_IND 36
440 #define ID_NRPM_TIMER 37
441 #define ID_RPC_CANCEL_CNF 38
442 
443 
444 #define ID_NRPM_MAX 39
445 
446 
447 #endif /* IOCONTROLLER */
448 /*-----------------------------------------------------------------------*/
449 /* RPC Messages list */
450 /*-----------------------------------------------------------------------*/
451 
452 #define ID_RPCRUNTIME_STOP 0
453 #define ID_RPCRUNTIME_INVOKE 1
454 #define ID_RPCRUNTIME_CANCEL 2
455 #define ID_RPC_ALLOC 3
456 #define ID_RPCRUNTIME_RESPONSE 4
457 #define ID_RPCRUNTIME_TIMER 5
458 #define ID_RPCRUNTIME_TMFRAG 6
459 #define ID_RPCRUNTIME_TMWAIT 7
460 #define ID_RPCRUNTIME_TMPING 8
461 #define ID_RPCRUNTIME_TMACK 9
462 #define ID_RPCRUNTIME_TMCANCEL 10
463 #define ID_RPCRUNTIME_TMBROADCAST 11
464 #define ID_RPCRUNTIME_TMIDLE 12
465 #define ID_RPCRUNTIME_TMRESEND 13
466 #define ID_RPCRUNTIME_START 14
467 #define ID_RPCRUNTIME_RESTART_SERVER 15
468 #define ID_RPC_MAX 16
469 
470 
471 /*-----------------------------------------------------------------------*/
472 /* CPM Messages list */
473 /*-----------------------------------------------------------------------*/
474 #define ID_CPM_ACTIVE_REQ 0
475 #define ID_CPM_CLOSE_REQ 1
476 #define ID_CPM_GET_CONS_STATUS_REQ 2
477 #define ID_CPM_SET_RED_ROLE_REQ 3
478 #define ID_CPM_GET_CONS_DATA_REQ 4
479 #define ID_CPM_C_DATA_IND 5
480 #define ID_CPM_STOP 6
481 #define ID_CPM_START 7
482 #define ID_CPM_READY 8
483 #define ID_CPM_END 9
484 #define ID_CPM_MAX 10
485 
486 
487 /*-----------------------------------------------------------------------*/
488 /* PPM Messages list */
489 /*-----------------------------------------------------------------------*/
490 
491 #define ID_PPM_START 0
492 #define ID_PPM_ACTIVE_REQ 1
493 #define ID_PPM_CLOSE_REQ 2
494 #define ID_PPM_SET_PROV_DATA_REQ 3
495 #define ID_PPM_SET_PROV_STATUS_REQ 4
496 #define ID_PPM_C_DATA_CNF 5
497 #define ID_PPM_STOP 6
498 #define ID_PPM_READY 7
499 #define ID_PPM_END 8
500 #define ID_PPM_MAX 9
501 
502 
503 /*-----------------------------------------------------------------------*/
504 /* DCP Messages list */
505 /*-----------------------------------------------------------------------*/
506 #define ID_DV_DCPMCS_ACTIVE_REQ 0
507 #define ID_DV_DCPMCS_CLOSE_REQ 1
508 #define ID_DV_DCPMCS_IDENTIFY_REQ 2
509 #define ID_DV_DCPMCS_IDENTIFY_RES 3
510 #define ID_DV_DCPMCS_TIMEOUT 4
511 
512 #define ID_DV_DCPUCS_ACTIVE_REQ 5
513 #define ID_DV_DCPUCS_CLOSE_REQ 6
514 #define ID_DV_DCPUCS_GET_REQ 7
515 #define ID_DV_DCPUCS_GET_RES 8
516 #define ID_DV_DCPUCS_SET_REQ 9
517 #define ID_DV_DCPUCS_SET_RES 10
518 
519 #define ID_DV_DCPMCR_ACTIVATE_REQ 11
520 #define ID_DV_DCPMCR_CLOSE_REQ 12
521 #define ID_DV_DCPMCR_IDENTIFY_REQ 13
522 #define ID_DV_DCPMCR_IDENTIFY_RSP 14
523 
524 #define ID_DV_DCPUCR_ACTIVATE_REQ 15
525 #define ID_DV_DCPUCR_CLOSE_REQ 16
526 
527 #define ID_DV_DCPUCR_GET_REQ 17
528 #define ID_DV_DCPUCR_SET_REQ 18
529 
530 #define ID_DV_DCPUCS_TIMEOUT 19
531 #define ID_DV_DCPMCR_TIMEOUT 20
532 
533 #define ID_DV_DCPUCR_RMPM_GET_RSP_POS 21
534 #define ID_DV_DCPUCR_RMPM_GET_RSP_NEG 22
535 #define ID_DV_DCPUCR_RMPM_SET_RSP_POS 23
536 #define ID_DV_DCPUCR_RMPM_SET_RSP_NEG 24
537 #define ID_DV_DCPUCR_TIMEOUT 25
538 #define ID_DV_DCPHMCS_HELLO_REQ 26
539 
540 #define ID_DV_DCP_MAX 27
541 
542 
543 
544 /*-----------------------------------------------------------------------*/
545 /* ASE,FSPM Messages list */
546 /*-----------------------------------------------------------------------*/
547 #ifdef IOCONTROLLER
548 
549 #define ID_PPM_SET_PROV_DATA_CNF_POS 0
550 #define ID_PPM_SET_PROV_DATA_CNF_NEG 1
551 #define ID_CPM_GET_CONS_DATA_CNF_POS 2
552 #define ID_CPM_GET_CONS_DATA_CNF_NEG 3
553 #define ID_CPM_GET_CONS_STATUS_CNF_POS 4
554 #define ID_CPM_GET_CONS_STATUS_CNF_NEG 5
555 #define ID_PPM_SET_PROV_STATUS_CNF_POS 6
556 #define ID_PPM_SET_PROV_STATUS_CNF_NEG 7
557 #define ID_CPM_SET_RED_ROLE_CNF_POS 8
558 #define ID_CPM_SET_RED_ROLE_CNF_NEG 9
559 
560 #define ID_CMCTL_INIT_CNF_POS 10
561 #define ID_CMCTL_INIT_CNF_NEG 11
562 #define ID_CMCTL_CONNECT_CNF_POS 12
563 #define ID_CMCTL_CONNECT_CNF_NEG 13
564 #define ID_CMCTL_ABORT_CNF_POS 14
565 #define ID_CMCTL_ABORT_CNF_NEG 15
566 /*Ind*/
567 #define ID_CPM_NO_DATA_IND 16
568 /*DCP*/
569 #define ID_DCPUCS_SET_CNF_POS 17
570 #define ID_DCPUCS_SET_CNF_NEG 18
571 #define ID_DCPUCS_GET_CNF_POS 19
572 #define ID_DCPUCS_GET_CNF_NEG 20
573 /*REQ*/
574 #define ID_FSPM_CONNECT_REQ 21
575 #define ID_FSPM_ABORT_REQ 22
576 #define ID_FSPM_DECLARE_DEVICE_REQ 23
577 #define ID_FSPM_UNDECLARE_DEVICE_REQ 24
578 /*CM_Ind*/
579 #define ID_CM_NEW_INPUT_DATA_IND 25
580 #define ID_CM_CCONTROL_IND 26
581 #define ID_CM_INDATA_IND 27
582 /*alarm*/
583 #define ID_ALMPR_ALARM_NOTIFICATION_IND 28
584 #define ID_ALPMR_ERROR_IND 29
585 /*DCP*/
586 #define ID_DCPUCR_ERROR_IND 30
587 #define ID_DCPMCR_ERROR_IND 31
588 /*IFW*/
589 #define ID_IFW_ERROR_IND 32
590 
591 #define ID_FSPM_ALARM_REQ 33
592 #define ID_ALPMR_ALARM_ACK_CNF_POS 34
593 #define ID_ALPMR_ALARM_ACK_CNF_NEG 35
594 
595 #define ID_FSPM_SET_PROV_DATA_REQ 36
596 #define ID_FSPM_SET_PROV_STATUS_REQ 37
597 #define ID_FSPM_GET_CONS_DATA_REQ 38
598 #define ID_FSPM_GET_CONS_STATUS_REQ 39
599 #define ID_FSPM_SET_RED_ROLE_REQ 40
600 
601 #define ID_FSPM_RELEASE_REQ 41
602 #define ID_CMCTL_RELEASE_CNF_POS 42
603 #define ID_CMCTL_RELEASE_CNF_NEG 43
604 #define ID_CMCTL_READ_CNF_POS 44
605 #define ID_CMCTL_READ_CNF_NEG 45
606 #define ID_CMCTL_WRITE_CNF_POS 46
607 #define ID_CMCTL_WRITE_CNF_NEG 47
608 
609 #define ID_FSPM_READ_REQ 48
610 #define ID_FSPM_WRITE_REQ 49
611 
612 #define ID_FSPM_ERROR_SYSTEM_REQ 50
613 
614 #define ID_FSPM_STOP 51
615 
616 #define ID_FSPM_IDENTIFY_REQ 52
617 #define ID_FSPM_SET_REQ 53
618 #define ID_FSPM_GET_REQ 54
619 #define ID_FSPM_IDENTIFY_CNF_POS 55
620 #define ID_FSPM_IDENTIFY_CNF_NEG 56
621 
622 #define ID_FSPM_DCONTROL_REQ 57
623 #define ID_FSPM_DCONTROL_CNF_POS 58
624 #define ID_FSPM_DCONTROL_CNF_NEG 59
625 
626 #define ID_FAL_PHASE_INIT_CNF_POS 60
627 #define ID_FAL_PHASE_INIT_CNF_NEG 61
628 
629 #define ID_INIT_CONTROLLER 62
630 
631 #define ID_FSPM_INIT_CALLBACk_TIMER 63
632 #define ID_FSPM_CALLBACk_TIMER 64
633 
634 #define ID_FSPM_MAX 65
635 
636 /*-----------------------------------------------------------------------*/
637 /* ALM Messages list */
638 /*-----------------------------------------------------------------------*/
639 
640 /*ALPMR page 611 T 451*/
641 /*cmctl to alpmr*/
642 #define ID_ALPMR_ACTIVE_REQ 0
643 #define ID_ALPMR_CLOSE_REQ 1
644 #define ID_ALPMR_ALARM_ACK_REQ 2
645 /*APMR to alpmr*/
646 #define ID_APMR_DATA_IND 3
647 #define ID_APMR_ERROR_IND 4
648 #define ID_APMR_ACTIVE_CNF_POS 5
649 #define ID_APMR_ACTIVE_CNF_NEG 6
650 #define ID_APMR_ACK_CNF_POS 7
651 #define ID_APMR_ACK_CNF_NEG 8
652 #define ID_APMR_CLOSE_CNF_POS 9
653 #define ID_APMR_CLOSE_CNF_NEG 10
654 /*APMS to alpmr*/
655 #define ID_APMS_DATA_CNF_POS 11
656 #define ID_APMS_DATA_CNF_NEG 12
657 #define ID_APMS_ERROR_IND 13
658 #define ID_APMS_ACTIVE_CNF_POS 14
659 #define ID_APMS_ACTIVE_CNF_NEG 15
660 #define ID_APMS_CLOSE_CNF_POS 16
661 #define ID_APMS_CLOSE_CNF_NEG 17
662 
663 /*APMS (page 199 T 132)*/
664 #define ID_APMS_ACTIVE_REQ 18
665 #define ID_APMS_CLOSE_REQ 19
666 #define ID_APMS_A_DATA_REQ 20
667 #define ID_APMS_A_DATA_IND 21
668 #define ID_APMS_A_DATA_CNF 22
669 #define ID_APMS_A_TIMER_EVENT 23
670 
671 /*APMR (page 204 T 137)*/
672 #define ID_APMR_ACTIVE_REQ 24
673 #define ID_APMR_CLOSE_REQ 25
674 #define ID_APMR_ACK_REQ 26
675 #define ID_APMR_A_DATA_IND 27
676 #define ID_APMR_A_DATA_CNF 28
677 
678 /*Frame*/
679 #define ID_ALM_STOP 29
680 #define ID_ALARM_START 30
681 #define ID_ALM_MAX 31
682 
683 
684 #endif /* IOCONTROLLER */
685 
686 
687 
688 /*-----------------------------------------------------------------------*/
689 /* ALM Messages list */
690 /*-----------------------------------------------------------------------*/
691 
692 /*ALPMR page 611 T 451*/
693 /*cmctl to alpmr*/
694 #define ID_ALPMR_ACTIVE_REQ 0
695 #define ID_ALPMR_CLOSE_REQ 1
696 #define ID_ALPMR_ALARM_ACK_REQ 2
697 
698 /*APMR to alpmr*/
699 #define ID_APMR_DATA_IND 3
700 #define ID_APMR_ERROR_IND 4
701 #define ID_APMR_ACTIVE_CNF_POS 5
702 #define ID_APMR_ACTIVE_CNF_NEG 6
703 #define ID_APMR_ACK_CNF_POS 7
704 #define ID_APMR_ACK_CNF_NEG 8
705 #define ID_APMR_CLOSE_CNF_POS 9
706 #define ID_APMR_CLOSE_CNF_NEG 10
707 
708 /*APMS to alpmr*/
709 #define ID_APMS_DATA_CNF_POS 11
710 #define ID_APMS_DATA_CNF_NEG 12
711 #define ID_APMS_ERROR_IND 13
712 #define ID_APMS_ACTIVE_CNF_POS 14
713 #define ID_APMS_ACTIVE_CNF_NEG 15
714 #define ID_APMS_CLOSE_CNF_POS 16
715 #define ID_APMS_CLOSE_CNF_NEG 17
716 
717 /*APMS (page 199 T 132)*/
718 #define ID_APMS_ACTIVE_REQ 18
719 #define ID_APMS_CLOSE_REQ 19
720 #define ID_APMS_A_DATA_REQ 20
721 #define ID_APMS_A_DATA_IND 21
722 #define ID_APMS_A_DATA_CNF 22
723 #define ID_APMS_A_TIMER_EVENT 23
724 
725 /*APMR (page 204 T 137)*/
726 #define ID_APMR_ACTIVE_REQ 24
727 #define ID_APMR_CLOSE_REQ 25
728 #define ID_APMR_ACK_REQ 26
729 #define ID_APMR_A_DATA_IND 27
730 #define ID_APMR_A_DATA_CNF 28
731 
732 /*Frame*/
733 #define ID_ALM_STOP 29
734 #define ID_ALARM_START 30
735 
736 /*ALPMI page 605 T 442*/
737 /*cmdev to alpmi*/
738 #define ID_ALPMI_ACTIVE_REQ 31
739 #define ID_ALPMI_CLOSE_REQ 32
740 #define ID_ALPMI_ALARM_REQ 33
741 
742 #define ID_ALM_MAX 34
743 
744 /*-----------------------------------------------------------------------*/
745 /* ADDIN Messages list */
746 /*-----------------------------------------------------------------------*/
747 #define ID_MSG_ADDIN_STOP 0
748 #define ID_MSG_ADDIN_START 1
749 #define ID_MSG_ADDIN_MAX 2
750 
751 /*-----------------------------------------------------------------------*/
752 /* MRP Messages list */
753 /*-----------------------------------------------------------------------*/
754 #define ID_MRP_INIT 0
755 #define ID_MRP_EXIT 1
756 #define ID_MRM_START 2
757 #define ID_MRM_STOP 3
758 #define ID_MRM_READ 4
759 #define ID_MRC_START 5
760 #define ID_MRC_STOP 6
761 #define ID_MRC_READ 7
762 #define ID_MRP_RCV_PDU 8
763 #define ID_MRP_LOCAL_LINK_CHANGE 9
764 #define ID_MRP_TIMER 10
765 #define ID_MRP_MAX 11
766 
767 /*-----------------------------------------------------------------------*/
768 /* LMPM Messages list */
769 /*-----------------------------------------------------------------------*/
770 #define ID_LMPM_START 0
771 #define ID_LMPM_MAX 1
772 
773 /*-----------------------------------------------------------------------*/
774 /* BT Messages list */
775 /*-----------------------------------------------------------------------*/
776 #define ID_SCHEDULE_START 0
777 #define ID_SCHEDULE_STOP 1
778 #define ID_SCHEDULE_CREATE 2
779 #define ID_SCHEDULE_CLOSE 3
780 #define ID_PPM_PROD_INSERT 4
781 #define ID_PPM_PROD_REMOVE 5
782 #define ID_CPM_CONS_INSERT 6
783 #define ID_CPM_CONS_REMOVE 7
784 
785 #define ID_WRITE_FRAME 8
786 #define ID_WRITE_FRAME_SPECIFIC_PORT 9
787 #define ID_SCHEDULE_MAX 10
788 
789 /*-----------------------------------------------------------------------*/
790 /* BT Messages list */
791 /*-----------------------------------------------------------------------*/
792 #define ID_BT_START 0
793 #define ID_BT_STOP 1
794 #define ID_BT_CREATE 2
795 #define ID_BT_CLOSE 3
796 #define ID_BT_MAX 4
797 
798 #ifdef __RPC_MICROSOFT_WSE
799 /*-----------------------------------------------------------------------*/
800 /* MS Messages list */
801 /*-----------------------------------------------------------------------*/
802 #endif
803 
804 
805 
806 /*-----------------------------------------------------------------------*/
807 /* macro message */
808 /*-----------------------------------------------------------------------*/
809 
810 #define OS_MESSAGE __LPMSG
811 #define OS_DECLARE_MESSAGE LPST_MSG __LPMSG = APP_NULL
812 #define OS_USE_MESSAGE(pmsg) LPST_MSG __LPMSG = pmsg
813 
814 #define OS_FREE_MESSAGE OsFreeMessage(&__LPMSG)
815 
816 #define OS_RECEIVE_MESSAGE OsReadMessageWaitPtr(StackGetThreadId(),&__LPMSG)
817 
818 #define OS_SEND_MESSAGE_ASE(a,c)\
819  __LPMSG->dwQueue = a;\
820  __LPMSG->wCodeFnct = c;\
821  OsSendMessagePtr(gdwTaskID[a],&__LPMSG,MSG_PRIO_NORMAL)
822 
823 #define OS_SEND_MESSAGE_MRP(c)\
824  __LPMSG->dwQueue = ID_QUEUE_MRP;\
825  __LPMSG->wCodeFnct = c;\
826  OsSendMessagePtr(gdwTaskID[ID_QUEUE_MRP],&__LPMSG,MSG_PRIO_NORMAL)
827 
828 #define OS_SEND_MESSAGE_ADDIN(c)\
829  __LPMSG->dwQueue = ID_QUEUE_ADDIN;\
830  __LPMSG->wCodeFnct = c;\
831  OsSendMessagePtr(gdwTaskID[ID_QUEUE_ADDIN],&__LPMSG,MSG_PRIO_NORMAL)
832 
833 #define OS_SEND_MESSAGE_STTUP(c)\
834  __LPMSG->dwQueue = ID_QUEUE_ASESM;\
835  __LPMSG->wCodeFnct = c;\
836  OsSendMessagePtr(gdwTaskID[ID_QUEUE_ASESM],&__LPMSG,MSG_PRIO_NORMAL)
837 
838 #define OS_SEND_MESSAGE_FSPMDEV(c)\
839  __LPMSG->dwQueue = ID_QUEUE_FSPMDEV;\
840  __LPMSG->wCodeFnct = c;\
841  OsSendMessagePtr(gdwTaskID[ID_QUEUE_FSPMDEV],&__LPMSG,MSG_PRIO_NORMAL)
842 
843 #define OS_SEND_MESSAGE_CMDEV(c)\
844  __LPMSG->dwQueue = ID_QUEUE_CMDEV;\
845  __LPMSG->wCodeFnct = c;\
846  OsSendMessagePtr(gdwTaskID[ID_QUEUE_CMDEV],&__LPMSG,MSG_PRIO_NORMAL)
847 
848 #define OS_SEND_MESSAGE_FALDEV(c)\
849  __LPMSG->dwQueue = ID_QUEUE_FALDEV;\
850  __LPMSG->wCodeFnct = c;\
851  OsSendMessagePtr(gdwTaskID[ID_QUEUE_FALDEV],&__LPMSG,MSG_PRIO_NORMAL)
852 
853 #define OS_SEND_MESSAGE_CMCTL(c)\
854  __LPMSG->dwQueue = ID_QUEUE_CMCTL;\
855  __LPMSG->wCodeFnct = c;\
856  OsSendMessagePtr(gdwTaskID[ID_QUEUE_CMCTL],&__LPMSG,MSG_PRIO_NORMAL)
857 
858 #define OS_SEND_MESSAGE_RMPM(c)\
859  __LPMSG->dwQueue = ID_QUEUE_RMPM;\
860  __LPMSG->wCodeFnct = c;\
861  OsSendMessagePtr(gdwTaskID[ID_QUEUE_RMPM],&__LPMSG,MSG_PRIO_NORMAL)
862 
863 #define OS_SEND_MESSAGE_DCP(c)\
864  __LPMSG->dwQueue = ID_QUEUE_DCP;\
865  __LPMSG->wCodeFnct = c;\
866  OsSendMessagePtr(gdwTaskID[ID_QUEUE_DCP],&__LPMSG,MSG_PRIO_NORMAL)
867 
868 #define OS_SEND_MESSAGE_CPM(c)\
869  __LPMSG->dwQueue = ID_QUEUE_CPM;\
870  __LPMSG->wCodeFnct = c;\
871  OsSendMessagePtr(gdwTaskID[ID_QUEUE_CPM],&__LPMSG,MSG_PRIO_NORMAL)
872 
873 #define OS_SEND_MESSAGE_PPM(c)\
874  __LPMSG->dwQueue = ID_QUEUE_PPM;\
875  __LPMSG->wCodeFnct = c;\
876  OsSendMessagePtr(gdwTaskID[ID_QUEUE_PPM],&__LPMSG,MSG_PRIO_NORMAL)
877 
878 #define OS_SEND_MESSAGE_ALM(c)\
879  __LPMSG->dwQueue = ID_QUEUE_ALM;\
880  __LPMSG->wCodeFnct = c;\
881  OsSendMessagePtr(gdwTaskID[ID_QUEUE_ALM],&__LPMSG,MSG_PRIO_NORMAL)
882 
883 #define OS_SEND_MESSAGE_LMPM(c)\
884  __LPMSG->dwQueue = ID_QUEUE_LMPM;\
885  __LPMSG->wCodeFnct = c;\
886  OsSendMessagePtr(gdwTaskID[ID_QUEUE_LMPM],&__LPMSG,MSG_PRIO_NORMAL)
887 
888 #define OS_SEND_MESSAGE_SCHEDULE(c)\
889  __LPMSG->dwQueue = ID_QUEUE_SCHEDULE;\
890  __LPMSG->wCodeFnct = c;\
891  OsSendMessagePtr(gdwTaskID[ID_QUEUE_SCHEDULE],&__LPMSG,MSG_PRIO_NORMAL)
892 
893 #define SEND_MESSAGE_RPC(m,c)\
894  (*m)->dwQueue = ID_QUEUE_RPC;\
895  (*m)->wCodeFnct = c;\
896  OsSendMessagePtr(gdwTaskID[ID_QUEUE_RPC],m,MSG_PRIO_NORMAL)
897 
898 #define OS_SEND_MESSAGE_RPC(c) SEND_MESSAGE_RPC(&__LPMSG,c)
899 
900 #define OS_SEND_MESSAGE_FROM_RPC(q,c)\
901  __LPMSG->dwQueue = (q);\
902  __LPMSG->wCodeFnct = (c);\
903  OsSendMessagePtr(gdwTaskID[(q)],&__LPMSG,MSG_PRIO_NORMAL)
904 
905 #define OS_SEND_MESSAGE(q,c)\
906  __LPMSG->dwQueue = (q);\
907  __LPMSG->wCodeFnct = (c);\
908  OsSendMessagePtr(gdwTaskID[(q)],&__LPMSG,MSG_PRIO_NORMAL)
909 
910 #define OS_SEND_MESSAGE_LLDP(c)\
911  __LPMSG->dwQueue = ID_QUEUE_LLDP;\
912  __LPMSG->wCodeFnct = c;\
913  OsSendMessagePtr(gdwTaskID[ID_QUEUE_LLDP],&__LPMSG,MSG_PRIO_NORMAL)
914 
915 
916 #define LLDP_DATA_IND OS_SEND_MESSAGE_LLDP(ID_LLDP_LLDPDU)
917 #define OS_GET_MESSAGE_WAIT OsGetMessageWait(&__LPMSG)
918 
919 #define OS_GET_MESSAGE_POOL(lpstPoolIocr, lpstPoolUsi, lpstPoolEc) \
920 {\
921  APP_DWORD dwCmp = 0;\
922  while( OsGetMessage(&__LPMSG) == OS_NOT_OK ) \
923  {\
924  OsWait_ms(10);\
925  dwCmp++;\
926  if(dwCmp > PND_MAX_RETRY){\
927  OS_ASSERT(APP_FALSE);\
928  }\
929  }\
930  __LPMSG->wDataSize = 0;\
931  lpstPoolIocr = (LPST_POOL)&__LPMSG->byData[(__LPMSG->wDataSize)];\
932  __LPMSG->wDataSize += sizeof(ST_POOL);\
933  lpstPoolUsi = (LPST_POOL)&__LPMSG->byData[(__LPMSG->wDataSize)];\
934  __LPMSG->wDataSize += sizeof(ST_POOL);\
935  lpstPoolEc = (LPST_POOL)&__LPMSG->byData[(__LPMSG->wDataSize)];\
936  lpstPoolIocr->wSize = 0;\
937  lpstPoolIocr->wSizeElt = sizeof(ST_CR);\
938  lpstPoolIocr->wMaxElt = (MAX_CR_PER_AR*MAX_CONNEXION_PER_INSTANCE);\
939  lpstPoolUsi->wSize = 0;\
940  lpstPoolUsi->wSizeElt = sizeof(ST_CR);\
941  lpstPoolUsi->wMaxElt = (MAX_CONNEXION_PER_INSTANCE*( (HASH_KEY_MAX_API) * (HASH_KEY_MAX_SSLOT) * (HASH_KEY_MAX_SLOT) ) );\
942  lpstPoolEc->wSize = 0;\
943  lpstPoolEc->wSizeElt = sizeof(ST_CR);\
944  lpstPoolEc->wMaxElt = (MAX_CONNEXION_PER_INSTANCE*( (HASH_KEY_MAX_API) * (HASH_KEY_MAX_SSLOT) * (HASH_KEY_MAX_SLOT) ) );\
945 }\
946 
947 #define OS_GET_MESSAGE OsGetMessage(&__LPMSG)
948 
949 #define OS_GET_MESSAGE_SIZE(a) (APP_WORD)a = __LPMSG-wDataSize
950 #define OS_SET_MESSAGE_SIZE(a) __LPMSG-wDataSize = (APP_WORD)a
951 
952 
953 #define OS_GET_HELLO_PARAM_WAIT(x) \
954  OS_GET_MESSAGE_WAIT;\
955  x=(LPST_HELLO_PARAMETERS)__LPMSG->byData;\
956  __LPMSG->wDataSize = ST_HELLO_PARAMETERS_SIZEOF
957 
958 #define OS_GET_SET_PARAM_WAIT(x) \
959  OS_GET_MESSAGE_WAIT;\
960  x=(LPST_SET_PARAM)__LPMSG->byData;\
961  __LPMSG->wDataSize = ST_SET_PARAM_SIZEOF
962 
963 #define OS_GET_INPUT_PARAM_WAIT(x) \
964  OS_GET_MESSAGE_WAIT;\
965  x=(LPST_INPUT_PARAM)__LPMSG->byData;\
966  __LPMSG->wDataSize = ST_INPUT_PARAM_SIZEOF
967 
968 #define OS_GET_PLUG_PULL_PARAM_WAIT(x) \
969  OS_GET_MESSAGE_WAIT;\
970  x=(LPST_PLUG_PULL_PARAM)__LPMSG->byData;\
971  __LPMSG->wDataSize = ST_PLUG_PULL_PARAM_SIZEOF
972 
973 #define OS_GET_RPC_CONF_WAIT(x) \
974  OS_GET_MESSAGE_WAIT;\
975  x=(LPST_RPC_CONF)__LPMSG->byData;\
976  __LPMSG->wDataSize = ST_RPC_CONF_SIZEOF
977 
978 #define OS_GET_INITIALIZATION_WAIT(x) \
979  OS_GET_MESSAGE_WAIT;\
980  x=(LPST_INITIALIZATION)__LPMSG->byData;\
981  __LPMSG->wDataSize = ST_INITIALIZATION_SIZEOF
982 
983 #define OS_GET_DOWNLOAD_WAIT(x) \
984  OS_GET_MESSAGE_WAIT;\
985  x=(LPST_DOWNLOAD)__LPMSG->byData;\
986  __LPMSG->wDataSize = ST_DOWNLOAD_SIZEOF
987 
988 #define OS_GET_ADD_DOWNLOAD_WAIT(x) \
989  OS_GET_MESSAGE_WAIT;\
990  x=(LPST_ADD_DOWNLOAD)__LPMSG->byData;\
991  __LPMSG->wDataSize = ST_ADD_DOWNLOAD_SIZEOF
992 
993 #define OS_GET_CREP_WAIT(x) \
994  OS_GET_MESSAGE_WAIT;\
995  x=(LPST_CREP)__LPMSG->byData;\
996  __LPMSG->wDataSize = ST_CREP_SIZEOF
997 
998 #define OS_GET_CREP_ALM_WAIT(x) \
999  OS_GET_MESSAGE_WAIT;\
1000  x=(LPST_CREP_ALM)__LPMSG->byData;\
1001  __LPMSG->wDataSize = ST_CREP_ALM_SIZEOF
1002 
1003 #define OS_GET_ALM_NOTIFICATION_WAIT(x, wSizeOfData) \
1004  OS_GET_MESSAGE_WAIT;\
1005  x=(LPST_DATA_ALARM_NOTIFICATION)&(__LPMSG->byData[12]);\
1006  __LPMSG->wDataSize = (APP_WORD)(ST_DATA_ALARM_NOTIFICATION_SIZEOF+wSizeOfData)
1007 
1008 #define OS_GET_RPC_REQ_WAIT(x) \
1009  OS_GET_MESSAGE_WAIT;\
1010  x=(LPST_RPC_REQ)__LPMSG->byData;\
1011  __LPMSG->wDataSize = ST_RPC_REQ_SIZEOF
1012 
1013 #define OS_GET_INTERFACE_REG_WAIT(x) \
1014  OS_GET_MESSAGE_WAIT;\
1015  x=(LPST_INTERFACE_REGISTER)__LPMSG->byData;\
1016  __LPMSG->wDataSize = ST_INTERFACE_REGISTER_SIZEOF
1017 
1018 #define OS_GET_ST_PPM_SET_PROV_DATA_REQ_WAIT(pData,wSizeOfData) \
1019  OS_GET_MESSAGE_WAIT;\
1020  pData=(LPST_PPM_SET_PROV_DATA_REQ)__LPMSG->byData;\
1021  __LPMSG->wDataSize = wSizeOfData
1022 
1023 #define OS_GET_ST_CPM_GET_CONS_DATA_REQ_WAIT(pData,wSizeOfData) \
1024  OS_GET_MESSAGE_WAIT;\
1025  pData=(LPST_CPM_GET_CONS_DATA_REQ)__LPMSG->byData;\
1026  __LPMSG->wDataSize = wSizeOfData
1027 
1028 #define OS_GET_DCP_SET_NAME_WAIT(x)\
1029  OS_GET_MESSAGE_WAIT;\
1030  x=(LPST_DCP_SET_NAME)__LPMSG->byData;\
1031  __LPMSG->wDataSize = ST_DCP_SET_NAME_SIZEOF
1032 
1033 #define OS_GET_ST_SCHEDULE_INSERT_WAIT(pData) \
1034  OS_GET_MESSAGE_WAIT;\
1035  pData=(LPST_SCHEDULE_INSERT)__LPMSG->byData;\
1036  __LPMSG->wDataSize = ST_SCHEDULE_INSERT_SIZEOF
1037 
1038 #define OS_GET_ST_SCHEDULE_REMOVE_WAIT(pData) \
1039  OS_GET_MESSAGE_WAIT;\
1040  pData=(LPST_SCHEDULE_REMOVE)__LPMSG->byData;\
1041  __LPMSG->wDataSize = ST_SCHEDULE_REMOVE_SIZEOF
1042 
1043 #define OS_GET_ST_MRM_CONF_WAIT(pData) \
1044  OS_GET_MESSAGE_WAIT;\
1045  pData=(LPST_MRM_CONF)(&__LPMSG->byData[OFFSET_PARAM2_MESSAGE]);\
1046  __LPMSG->wDataSize = sizeof(ST_MRM_CONF)
1047 
1048 #define OS_GET_ST_MRC_CONF_WAIT(pData) \
1049  OS_GET_MESSAGE_WAIT;\
1050  pData=(LPST_MRC_CONF)(&__LPMSG->byData[OFFSET_PARAM2_MESSAGE]);\
1051  __LPMSG->wDataSize = sizeof(ST_MRC_CONF)
1052 
1053 #define STACK_SEND_MSG_STOP_THREAD(a,b)\
1054  while( OsGetMessage(&__LPMSG) == OS_NOT_OK){\
1055  OsWait_ms(10);\
1056  }\
1057  __LPMSG->dwQueue = a;\
1058  __LPMSG->wCodeFnct = b;\
1059  __LPMSG->wDataSize = 0;\
1060  OsSendMessagePtr(gdwTaskID[a],&__LPMSG,MSG_PRIO_HIGH)
1061 
1062 /**************************** LLDP messaging *********************************/
1063 #define OS_GET_ST_LLDP_CONFIGTIME_WAIT(pData, wSizeOfData) \
1064  OS_GET_MESSAGE_WAIT;\
1065  pData=(LPST_MSG_LLDP_CONFIGTIME)__LPMSG->byData;\
1066  __LPMSG->wDataSize = wSizeOfData
1067 
1068 #define GET_ST_LLDP_CONFIGTIME_IN_MESSAGE(a,b) (b)=(LPST_MSG_LLDP_CONFIGTIME)(&((a)->byData))
1069 
1070 
1071 #define OS_GET_ST_LLDP_PORTCONFIG_WAIT(pData, wSizeOfData) \
1072  OS_GET_MESSAGE_WAIT;\
1073  pData=(LPST_MSG_LLDP_PORTCONFIG)__LPMSG->byData;\
1074  __LPMSG->wDataSize = wSizeOfData
1075 
1076 #define GET_ST_LLDP_PORTCONFIG_IN_MESSAGE(a,b) (b)=(LPST_MSG_LLDP_PORTCONFIG)(&((a)->byData))
1077 
1078 #define OS_GET_ST_LLDP_SYSTEMCONFIG_WAIT(pData, wSizeOfData) \
1079  OS_GET_MESSAGE_WAIT;\
1080  pData=(LPST_MSG_LLDP_SYSTEM_CONFIG)__LPMSG->byData;\
1081  __LPMSG->wDataSize = wSizeOfData
1082 
1083 #define GET_ST_LLDP_SYSTEMCONFIG_IN_MESSAGE(a,b) (b)=(LPST_MSG_LLDP_SYSTEM_CONFIG)(&((a)->byData))
1084 
1085 
1086 #define OS_GET_ST_LLDP_DESCRIPTION_WAIT(pData, wSizeOfData) \
1087  OS_GET_MESSAGE_WAIT;\
1088  pData=(LPST_MSG_LLDP_DESCRIPTION)__LPMSG->byData;\
1089  OS_MEMSET(pData, 0, sizeof(ST_MSG_LLDP_DESCRIPTION));\
1090  __LPMSG->wDataSize = wSizeOfData
1091 
1092 #define GET_ST_LLDP_DESCRIPTION_IN_MESSAGE(a,b) (b)=(LPST_MSG_LLDP_DESCRIPTION)(&((a)->byData))
1093 
1094 
1095 #define OS_GET_ST_LLDP_PNPORTSTATUS_WAIT(pData, wSizeOfData) \
1096  OS_GET_MESSAGE_WAIT;\
1097  pData=(LPST_MSP_LLDP_PN_PORTSTATUS)__LPMSG->byData;\
1098  __LPMSG->wDataSize = wSizeOfData
1099 
1100 #define GET_ST_LLDP_PNPORTSTATUS_IN_MESSAGE(a,b) (b)=(LPST_MSP_LLDP_PN_PORTSTATUS)(&((a)->byData))
1101 
1102 #define OS_GET_ST_LLLDP_PN_CHASSISMAC_WAIT(pData, wSizeOfData) \
1103  OS_GET_MESSAGE_WAIT;\
1104  pData=(LPST_MSG_LLLDP_PN_CHASSISMAC)__LPMSG->byData;\
1105  __LPMSG->wDataSize = wSizeOfData
1106 
1107 #define GET_ST_LLLDP_PN_CHASSISMAC_IN_MESSAGE(a,b) (b)=(LPST_MSG_LLLDP_PN_CHASSISMAC)(&((a)->byData))
1108 
1109 #define OS_GET_ST_LLLDP_PN_MRP_WAIT(pData, wSizeOfData) \
1110  OS_GET_MESSAGE_WAIT;\
1111  pData=(LPST_MSG_LLDP_PN_MRP)__LPMSG->byData;\
1112  __LPMSG->wDataSize = wSizeOfData
1113 
1114 #define GET_ST_LLLDP_PN_MRP_IN_MESSAGE(a,b) (b)=(LPST_MSG_LLDP_PN_MRP)(&((a)->byData))
1115 
1116 #define OS_GET_ST_LLLDP_8023_AUTONEG_WAIT(pData, wSizeOfData) \
1117  OS_GET_MESSAGE_WAIT;\
1118  pData=(LPST_LLDP_MSG_8023_AUTONEG)__LPMSG->byData;\
1119  __LPMSG->wDataSize = wSizeOfData
1120 
1121 #define GET_ST_LLLDP_8023_AUTONEG_IN_MESSAGE(a,b) (b)=(LPST_LLDP_MSG_8023_AUTONEG)(&((a)->byData))
1122 
1123 
1124 #define OS_GET_ST_LLLDP_PN_ADDR_MGT_WAIT(pData, wSizeOfData) \
1125  OS_GET_MESSAGE_WAIT;\
1126  pData=(LPST_LLDP_MSG_PN_ADDR_MGT)__LPMSG->byData;\
1127  __LPMSG->wDataSize = wSizeOfData
1128 
1129 #define GET_ST_LLLDP_PN_ADDR_MGT_IN_MESSAGE(a,b) (b)=(LPST_LLDP_MSG_PN_ADDR_MGT)(&((a)->byData))
1130 
1131 
1132 /*-----------------------------------------------------------------------*/
1133 /* definition */
1134 /*-----------------------------------------------------------------------*/
1135 
1136 #define SEND_MESSAGE 0
1137 #define NO_SEND_MESSAGE ((APP_DWORD)(~SEND_MESSAGE))
1138 #define MSG_PRIO_NORMAL 0
1139 #define MSG_PRIO_HIGH 1
1140 
1141 typedef union _UN_PN_VERSION{
1142  struct
1143  {
1144  APP_BYTE byVerH; /* Version Higth of the current message */
1145  APP_BYTE byVerL; /* Version Low of the current message */
1146  }ST_PN_VERSION_MSG;
1147  APP_DWORD dwVersion; /* Align this structure on a DWORD ! */
1148 }UN_PN_VERSION;
1149 
1150 typedef union _UN_PN_SIZE{
1151 
1152  APP_WORD wSizeMailMax; /* Max Data that this mail can store */
1153  APP_DWORD dwSize; /* Align this structure on a DWORD ! */
1154 }UN_PN_SIZE;
1155 
1156 #define MSG_VERSION_L unVersion.ST_PN_VERSION_MSG.byVerL
1157 #define MSG_VERSION_H unVersion.ST_PN_VERSION_MSG.byVerH
1158 
1159 /*-----------------------------------------------------------------------*/
1160 /* message structure */
1161 /*-----------------------------------------------------------------------*/
1162 
1163 typedef struct _stack_msg
1164 {
1165  UN_PN_VERSION unVersion; /* Version of the current message */
1166  UN_PN_SIZE unSize; /* Max Data that this mail can store */
1167  APP_DWORD dwReserved; /* Now this parameter is not used. Later use it to link mail ? */
1168 
1169  APP_DWORD dwQueue; /* ID of sub queue inside the Thread/Task */
1170  APP_DWORD dwQueueSender; /* */
1171 
1172  APP_LPVOID lpvRepContext; /* Arep/Drep/Irep */
1173  APP_LPVOID lpvContexte; /* Contexte in message */
1174 
1175  APP_WORD wCodeFnct; /* ID of the function to call */
1176  APP_WORD wDataSize; /* Size of data used in byData */
1177  APP_BYTE byData[MSG_DATA_SIZE]; /* Data Associated to the message */
1178 } ST_MSG,APP_FAR *LPST_MSG;
1179 
1180 
1181 
1182 #define SIZE_ST_MSG (MSG_DATA_SIZE + 24)
1183 
1184 /*inter thread message call type*/
1185 typedef APP_DWORD (APP_FAR *FCT_MSG_ARG)(LPST_MSG* ppMsg);
1186 
1187 /*-----------------------------------------------------------------------*/
1188 /* Prototype */
1189 /*-----------------------------------------------------------------------*/
1190 APP_WORD OsInitMessage();
1191 APP_WORD OsExitMessage();
1192 /*Get/Free a message in the message pool*/
1193 APP_WORD OsGetMessage(LPST_MSG* ppMsg);
1194 APP_WORD OsGetMessageWait(LPST_MSG* ppMsg);
1195 APP_WORD OsFreeMessage(LPST_MSG* ppMsg);
1196 
1197 /*---------------------------- Messages ---------------------------*/
1198 
1199 APP_WORD OsCreateMsgQueue (APP_LONG lTaskId);
1200 APP_WORD OsGetNbFreeMessage(APP_VOID);
1201 
1202 
1203 /*Send/Receaved the ptr of the message*/
1204 APP_WORD OsSendMessagePtr (APP_LONG lTaskId, LPST_MSG* pMsg, APP_WORD wPrio);
1205 
1206 APP_WORD OsReadMessageNoWaitPtr(APP_LONG lTaskId, LPST_MSG* pMsg );
1207 APP_WORD OsReadMessageWaitPtr(APP_LONG lTaskId, LPST_MSG* pMsg );
1208 APP_DWORD APP_FAR FxEmpty (LPST_MSG* ppMsg);
1209 
1210 
1211 #endif
Definition: message.h:1163
Definition: message.h:1141
Definition: message.h:1150