27 #ifndef _PNIO_ACYCLIC_PDU_H_
28 #define _PNIO_ACYCLIC_PDU_H_
35 #define STS_RTAERROR 0xCF
36 #define STS_ALARMACK 0xDA
37 #define STS_IODCONNECTRES 0xDB
38 #define STS_IODRELEASERES 0xDC
39 #define STS_IOXCONNECTRES 0xDD
40 #define STS_IODREADRES 0xDE
41 #define STS_IODWRITERES 0xDF
44 #define STS_ED_APPRW 0x80
45 #define STS_ED_APP 0x81
50 #define BT_ALARMNOTIFICATIONHIGH 0x001
51 #define BT_ALARMNOTIFICATIONLOW 0x002
52 #define BT_WRITERECORDREQ 0x008
53 #define BT_READRECORDREQ 0x009
54 #define BT_DIAGNOSISDATA 0x010
55 #define BT_MULTICASTCONSUINFO 0x011
56 #define BT_EXPECTEDIDENTIFICATION 0x012
57 #define BT_READIDENTIFICATION 0x013
58 #define BT_SUBSTITUTEVALUE 0x014
59 #define BT_LOGDATA 0x019
60 #define BT_ARBLOCKREQ 0x101
61 #define BT_IOCRBLOCKREQ 0x102
62 #define BT_ALARMCRBLOCKREQ 0x103
63 #define BT_EXPECTEDSUBMODULEBLOCKREQ 0x104
64 #define BT_PRMSERVERBLOCKREQ 0x105
65 #define BT_MCRBLOCKREQ 0x106
66 #define BT_SRINFOBLOCKREQ 0x10A
67 #define BT_IODCONTROLBLOCKREQ 0x110
68 #define BT_DCONTROLBLOCKPLUG 0x111
69 #define BT_IOXCONTROLBLOCKREQ 0x112
70 #define BT_CCONTROLBLOCKPLUG 0x113
71 #define BT_RELEASEBLOCKREQ 0x114
72 #define BT_ARRPCBLOCKREQ 0x115
74 #define BT_IODREADREQ 0x0500
76 #define BT_ALARMACKHIGH 0x8001
77 #define BT_ALARMACKLOW 0x8002
80 #define BT_ARBLOCKRES 0x8101
81 #define BT_IOCRBLOCKRES 0x8102
82 #define BT_ALARMCRBLOCKRES 0x8103
83 #define BT_EXPECTEDSUBMODULEBLOCKRES 0x8104
84 #define BT_PRMSERVERBLOCKRES 0x8105
85 #define BT_MCRBLOCKRES 0x8106
86 #define BT_IODCONTROLBLOCKRES 0x8110
87 #define BT_CONTROLBLOCKPLUGRES 0x8111
88 #define BT_IOXCONTROLBLOCKRES 0x8112
89 #define BT_CCONTROLBLOCKPLUGRES 0x8113
90 #define BT_RELEASEBLOCKRES 0x8114
91 #define BT_ARRPCBLOCKRES 0x8115
92 #define BT_WRITERECORDRES 0x8008
93 #define BT_READRECORDRES 0x8009
97 #define IF_UUIDDATA4 {0x82, 0x71, 0x00,0xA0, 0x24,0x42,0xDF,0x7D}
102 #define ACT_UUIDDATA1 0x00000003
104 #define ACT_UUIDDATA2 0x0000
106 #define ACT_UUIDDATA3 0x1010
109 #define ACT_UUIDDATA4 {0x81,0x9A, 0x08,0x00,0x06,0x6B,0x92,0xEC}
112 #define BLOCKVERSIONHIGH 1
113 #define BLOCKVERSIONLOW 0
119 #define IO_CR_PRIORITY 49152L
122 #define IOCRARSINGLE 0x01
123 #define IOCRARSAR 0x06
127 #define IOCR_INPUT_CR 1
128 #define IOCR_OUTPUT_CR 2
129 #define IOCR_MULTICAST_PROV 3
130 #define IOCR_MULTICAST_CONS 4
133 #define IOCR_ALARM_CR 1
136 #define FRAMEID_ALM_LOW 0xFE01
137 #define FRAMEID_ALM_HIGH 0xFC01
139 #define MIN_ALARM_LEN 200
140 #define MAX_ALARM_LEN 1432
143 #define FRAMEID_OUTPUT_CR 0xFFFF
147 #define ERR_PNIO 0x81
149 #define ERR_ALARM_ACK 0XDA
150 #define ERR_IODCONNECT_RES 0XDB
151 #define ERR_IODRELEASE_RES 0XDC
152 #define ERR_IOXCONTROLRES 0XDD
153 #define ERR_IODREADRES 0XDE
154 #define ERR_IODWRITERES 0XDF
158 #define ERR_CPROTOCOL 2
159 #define ERR_CINTERNAL 255
162 #define ERR_INVALID_STATE 0
163 #define ERR_TIME_OUT 1
165 #define UDPRTPORT_MAX 0x03FF
167 #define CONTROL_COMMAND_PRM_END 0x0001
168 #define CONTROL_COMMAND_APPLICATION_READY 0x0002
169 #define CONTROL_COMMAND_RELEASE 0x0004
170 #define CONTROL_COMMAND_DONE 0x0008
173 #define MODULE_STATE_NO 0
174 #define MODULE_STATE_WRONG 1
175 #define MODULE_STATE_PROPER 2
176 #define MODULE_STATE_SUSTITUTE 3
179 #define ALARM_CR_TYPE 0x0001
182 #define SUBMODULE_STATE_FORMAT_INDICATOR 0x8000
183 #define SUBMODULE_STATE_FORMAT_IDENTINFO 0x7000
184 #define SUBMODULE_STATE_FORMAT_ARINFO 0x00780
185 #define SUBMODULE_STATE_DETAIL !SUBMODULE_STATE_FORMAT_INDICATOR
187 #define SUBMODULE_STATE_FORMAT_IDENTINFO_OK 0
188 #define SUBMODULE_STATE_FORMAT_IDENTINFO_SUBSTITUTE 1
189 #define SUBMODULE_STATE_FORMAT_IDENTINFO_WRONG 2
190 #define SUBMODULE_STATE_FORMAT_IDENTINFO_NOSUBMODULE 3
192 #define SUBMODULE_STATE_FORMAT_ARINFO_OWN 0
193 #define SUBMODULE_STATE_FORMAT_ARINFO_ARP 1
194 #define SUBMODULE_STATE_FORMAT_ARINFO_SO 2
195 #define SUBMODULE_STATE_FORMAT_ARINFO_IOC 3
196 #define SUBMODULE_STATE_FORMAT_ARINFO_IOS 4
197 #define SUBMODULE_STATE_FORMAT_NOT_CONNECTED 0xffff
199 #define SUBMODULE_STATE_DETAIL_NOSUBMODULE 0
200 #define SUBMODULE_STATE_DETAIL_WRONGSUBMODULE 1
201 #define SUBMODULE_STATE_DETAIL_IOCLOCK 2
202 #define SUBMODULE_STATE_DETAIL_ARR 4
203 #define SUBMODULE_STATE_DETAIL_SUBSTITUTE 7
206 #define GET_SUBMODULE_STATE_IDENTINFO(a) (a&SUBMODULE_STATE_FORMAT_IDENTINFO)>>11
207 #define GET_SUBMODULE_STATE_ARINFO(a) (a&SUBMODULE_STATE_FORMAT_ARINFO)>>7
208 #define GET_SUBMODULE_STATE_DETAIL(a) (a&SUBMODULE_STATE_DETAIL)
214 #define INDEX_SUBSLOT_EXPECTEDIDENTIFICATIONDATA 0x8000
215 #define INDEX_SUBSLOT_REALIDENTIFICATIONDATA 0x8001
216 #define INDEX_SUBSLOT_DIAGINCHANNELCODING 0x800A
217 #define INDEX_SUBSLOT_DIAGINALLCODING 0x800B
218 #define INDEX_SUBSLOT_DIAGMAINTENANCE 0x800C
219 #define INDEX_SUBSLOT_MAINTENANCEREQUIREDCHANNELCODING 0x8010
220 #define INDEX_SUBSLOT_MAINTENANCEDEMANDEDCHANNELCODING 0x8011
221 #define INDEX_SUBSLOT_MAINTENANCEREQUIREDALLCODING 0x8012
222 #define INDEX_SUBSLOT_MAINTENANCEDEMANDEDALLCODING 0x8013
223 #define INDEX_SUBSLOT_SUBSTITUTE 0x801E
224 #define INDEX_SUBSLOT_RECORDINPUTDATA 0x8028
225 #define INDEX_SUBSLOT_RECORDOUTPUTDATA 0x8029
226 #define INDEX_SUBSLOT_PORTDATAREAL 0x802A
227 #define INDEX_SUBSLOT_PORTDATACHECK 0x802B
228 #define INDEX_SUBSLOT_PDIRDATA 0x802C
229 #define INDEX_SUBSLOT_PDSYNCDATAOVERRTA 0x802D
230 #define INDEX_SUBSLOT_PDSYNCDATAOVERRTC 0x802E
231 #define INDEX_SUBSLOT_PDPORTDATAADJUST 0x802F
232 #define INDEX_SUBSLOT_ISOCHRONOUSMODE 0x8030
234 #define INDEX_SUBSLOT_PDSYNCDATA1 0x8031
235 #define INDEX_SUBSLOT_PDSYNCDATA2 0x8032
236 #define INDEX_SUBSLOT_PDSYNCDATA3 0x8033
237 #define INDEX_SUBSLOT_PDSYNCDATA4 0x8034
238 #define INDEX_SUBSLOT_PDSYNCDATA5 0x8035
239 #define INDEX_SUBSLOT_PDSYNCDATA6 0x8036
240 #define INDEX_SUBSLOT_PDSYNCDATA7 0x8037
241 #define INDEX_SUBSLOT_PDSYNCDATA8 0x8038
242 #define INDEX_SUBSLOT_PDSYNCDATA9 0x8039
243 #define INDEX_SUBSLOT_PDSYNCDATA10 0x803A
244 #define INDEX_SUBSLOT_PDSYNCDATA11 0x803B
245 #define INDEX_SUBSLOT_PDSYNCDATA12 0x803C
246 #define INDEX_SUBSLOT_PDSYNCDATA13 0x803D
247 #define INDEX_SUBSLOT_PDSYNCDATA14 0x803E
248 #define INDEX_SUBSLOT_PDSYNCDATA15 0x803F
249 #define INDEX_SUBSLOT_PDSYNCDATA16 0x8040
250 #define INDEX_SUBSLOT_PDSYNCDATA17 0x8041
251 #define INDEX_SUBSLOT_PDSYNCDATA18 0x8042
252 #define INDEX_SUBSLOT_PDSYNCDATA19 0x8043
253 #define INDEX_SUBSLOT_PDSYNCDATA20 0x8044
254 #define INDEX_SUBSLOT_PDSYNCDATA21 0x8045
255 #define INDEX_SUBSLOT_PDSYNCDATA22 0x8046
256 #define INDEX_SUBSLOT_PDSYNCDATA23 0x8047
257 #define INDEX_SUBSLOT_PDSYNCDATA24 0x8048
258 #define INDEX_SUBSLOT_PDSYNCDATA25 0x8049
259 #define INDEX_SUBSLOT_PDSYNCDATA26 0x804A
260 #define INDEX_SUBSLOT_PDSYNCDATA27 0x804B
261 #define INDEX_SUBSLOT_PDSYNCDATA28 0x804C
262 #define INDEX_SUBSLOT_PDSYNCDATA29 0x804D
263 #define INDEX_SUBSLOT_PDSYNCDATA30 0x804E
264 #define INDEX_SUBSLOT_PDSYNCDATA31 0x804F
266 #define INDEX_SUBSLOT_PDIFMRPDATAREAL 0x8050
267 #define INDEX_SUBSLOT_PDIFMRPDATACHECK 0x8051
268 #define INDEX_SUBSLOT_PDIFMRPDATAADJUST 0x8052
271 #define INDEX_SUBSLOT_PDPORTMRPDATAADJUST 0x8053
272 #define INDEX_SUBSLOT_PDPORTMRPDATAREAL 0x8054
274 #define INDEX_SUBSLOT_PORTFOMRPDATAREAL 0x8060
275 #define INDEX_SUBSLOT_PORTFODATACHECK 0x8061
276 #define INDEX_SUBSLOT_PORTFODATAADJUST 0x8062
278 #define INDEX_SUBSLOT_PDNCDATACHECK 0x8070
279 #define INDEX_SUBSLOT_PDINTERFACEADJUST 0x8071
280 #define INDEX_SUBSLOT_PDPORTSTATISTIC 0x8072
282 #define INDEX_SUBSLOT_PDITFDATA_REAL 0x8080
283 #define INDEX_ARFSU_DATA_ADJUST 0x8090
284 #define INDEX_SUBSLOT_IM0 0xAFF0
285 #define INDEX_SUBSLOT_IM1 0xAFF1
286 #define INDEX_SUBSLOT_IM2 0xAFF2
287 #define INDEX_SUBSLOT_IM3 0xAFF3
288 #define INDEX_SUBSLOT_IM4 0xAFF4
289 #define INDEX_SUBSLOT_IM5 0xAFF5
290 #define INDEX_SUBSLOT_IM6 0xAFF6
291 #define INDEX_SUBSLOT_IM7 0xAFF7
292 #define INDEX_SUBSLOT_IM8 0xAFF8
293 #define INDEX_SUBSLOT_IM9 0xAFF9
294 #define INDEX_SUBSLOT_IM10 0xAFFA
295 #define INDEX_SUBSLOT_IM11 0xAFFB
296 #define INDEX_SUBSLOT_IM12 0xAFFC
297 #define INDEX_SUBSLOT_IM13 0xAFFD
298 #define INDEX_SUBSLOT_IM14 0xAFFE
299 #define INDEX_SUBSLOT_IM15 0xAFFF
302 #define INDEX_SLOTEXPECTEDIDENTIFICATION 0xC000
303 #define INDEX_SLOTREALIDENTIFICATION 0xC001
304 #define INDEX_SLOTCHANNELDIAGNOSIS 0xC00A
305 #define INDEX_SLOTALLDIAGNOSIS 0xC00B
306 #define INDEX_SLOTDIAGNOSISMAINTENANCE 0xC00C
307 #define INDEX_SLOTMAINTENANCEREQCHANNEL 0xC010
308 #define INDEX_SLOTMAINTENANCEDEMCHANNEL 0xC011
309 #define INDEX_SLOTMAINTENANCEREQALL 0xC012
310 #define INDEX_SLOTMAINTENANCEDEMALL 0xC013
311 #define INDEX_SLOT_0XC02A 0xC02A
312 #define INDEX_SLOT_0XC02B 0xC02B
313 #define INDEX_SLOT_0XC02C 0xC02C
314 #define INDEX_SLOT_0XC02D 0xC02D
315 #define INDEX_SLOT_0XC02E 0xC02E
316 #define INDEX_SLOT_0XC02F 0xC02F
319 #define INDEX_AREXPECTEDIDENTIFICATION 0xE000
320 #define INDEX_ARREALIDENTIFICATION 0xE001
321 #define INDEX_ARMODDIF 0xE002
322 #define INDEX_ARCHANNELDIAGNOSIS 0xE00A
323 #define INDEX_ARALLDIAGNOSIS 0xE00B
324 #define INDEX_ARDIAGNOSISMAINTENANCE 0xE00C
326 #define INDEX_ARMAINTENANCEREQCHANNEL 0xE010
327 #define INDEX_ARMAINTENANCEDEMCHANNEL 0xE011
328 #define INDEX_ARMAINTENANCEREQALL 0xE012
329 #define INDEX_ARMAINTENANCEDEMALL 0xE013
330 #define INDEX_AR_0XE02A 0xE02A
331 #define INDEX_AR_0XE02B 0xE02B
332 #define INDEX_AR_0XE02C 0xE02C
333 #define INDEX_AR_0XE02D 0xE02D
334 #define INDEX_AR_0XE02E 0xE02E
335 #define INDEX_AR_0XE02F 0xE02F
336 #define INDEX_ARISOCHRONOUS 0xE030
337 #define INDEX_ARMULTIPLE 0xE040
338 #define INDEX_ARFSU 0xE050
341 #define INDEX_APIREALIDENTIFICATION 0xF000
342 #define INDEX_APICHANNELDIAGNOSIS 0xF00A
343 #define INDEX_APIALLDIAGNOSIS 0xF00B
344 #define INDEX_APIDIAGNOSISMAINTENANCE 0xF00C
345 #define INDEX_APIMAINTENANCEREQCHANNEL 0xF010
346 #define INDEX_APIMAINTENANCEDEMCHANNEL 0xF011
347 #define INDEX_APIMAINTENANCEREQALL 0xF012
348 #define INDEX_APIMAINTENANCEDEMALL 0xF013
349 #define INDEX_APIARDATA 0xF020
352 #define INDEX_DEVICE_MAINTENANCEDIAG 0xF80C
353 #define INDEX_DEVICE_ARDATA 0xF820
354 #define INDEX_DEVICE_APIDATA 0xF821
355 #define INDEX_DEVICE_LOGDATA 0xF830
356 #define INDEX_DEVICE_PDEVDATA 0xF831
357 #define INDEX_DEVICE_IMFILTERDATA 0xF840
358 #define INDEX_DEVICE_PDREALDATA 0xF841
359 #define INDEX_DEVICE_PDEXPECTEDDATA 0xF842
360 #define INDEX_AUTO_CONFIGURATION 0xF850
363 #define MDIFF_BLOC_TYPE 0x8104
365 #define RECORD_WSE_DEBUG_INFO 0x7fff
368 #define EI_BLOC_TYPE 0x0012
369 #define RI_BLOC_TYPE 0x0013
370 #define RECORD_SUBSTITUE_VALUE_ELEMENT_TYPE 0x0014
371 #define RECORD_INPUT_DATA_OBJECT_ELEMENT_TYPE 0x0015
372 #define RECORD_OUTPUT_DATA_OBJECT_ELEMENT_TYPE 0x0016
373 #define ARDATA_BLOC_TYPE 0x0018
374 #define LOGATA_BLOC_TYPE 0x0019
375 #define IM0_BLOC_TYPE 0x0020
376 #define IM1_BLOC_TYPE 0x0021
377 #define IM2_BLOC_TYPE 0x0022
378 #define IM3_BLOC_TYPE 0x0023
379 #define IM4_BLOC_TYPE 0x0024
380 #define APIDATA_BLOC_TYPE 0x001A
381 #define IM0_FILTERDATA_BLOC_TYPE 0x0030
382 #define PDPORT_DATA_CHCK_BLOC_TYPE 0x0200
383 #define PDPORT_DATA_ADJT_BLOC_TYPE 0x0202
384 #define PDPORT_DATA_REAL_BLOC_TYPE 0x020F
385 #define MRP_IDA_FOR_SUBS_BLOC_TYPE 0x0211
386 #define MRP_IDC_FOR_SUBS_BLOC_TYPE 0x0213
387 #define MRP_IDR_FOR_SUBS_BLOC_TYPE 0x0212
388 #define MRP_PDA_FOR_SUBS_BLOC_TYPE 0x0214
389 #define MRP_PDR_FOR_SUBS_BLOC_TYPE 0x0215
390 #define MRP_CPARAM_BLOC_TYPE 0x0217
391 #define MRP_MPARAM_BLOC_TYPE 0x0216
392 #define PDTITFDATA_REAL_BLOC_TYPE 0x0240
393 #define PDTITFPORT_STATISTIC_BLOC_TYPE 0x0250
394 #define MULTIPLE_BLOCK_HEADER_BLOC_TYPE 0x0400
396 #define FS_HELLO_BLOCK_TYPE 0x0600
397 #define FS_PARAMETERS_BLOCK_TYPE 0x0601
398 #define AR_PD_ITF_FSU_DATAAJUST_BLOCK_TYPE 0x0608
399 #define AR_FSU_DATAAJUST_BLOCK_TYPE 0x0609
402 #define AUTO_CONF_DATA_HEADER_BLOC_TYPE 0x0700
403 #define AUTO_CONF_COMM_DATAHEADER_BLOC_TYPE 0x0701
404 #define AUTO_CONF_CONF_DATAHEADER_BLOC_TYPE 0x0702
408 #define AR_BLOC_RES_LEN 30
409 #define AR_BLOC_MAX_RESPONDER_PORT 0x03FF
412 #define CR_BLOC_RES_LEN 8
415 #define ALARM_BLOC_RES_LEN 8
418 #define PRMSERVER_BLOC_RES_LEN 26
421 #define READ_WRITE_BLOC_RES_LEN 60
422 #define READ_BLOC_RES_LEN 60
425 #define CTRL_BLOC_RES_LEN 28
426 #define CTRL_BLOC_REQ_LEN 54
430 #define RELEASE_BLOC_RES_LEN 28
433 #define ST_SRINFO_BLOCK_REQ_LEN (ST_SRINFO_BLOCK_REQ_SIZEOF+2)
435 #define DATA_DESCRITION_INPUT 1
436 #define DATA_DESCRITION_OUTPUT 2
438 #define SUBMODULE_PROPERTIES_TYPE_NO_IO_DATA 0
439 #define SUBMODULE_PROPERTIES_TYPE_INPUT_DATA 1
440 #define SUBMODULE_PROPERTIES_TYPE_OUTPUT_DATA 2
441 #define SUBMODULE_PROPERTIES_TYPE_IO_DATA 3
447 #ifdef AR_DATA_RATE_10GB
448 #define AR_DATA_RATE_MAX AR_DATA_RATE_10GB
451 #ifdef AR_DATA_RATE_1GB
452 #define AR_DATA_RATE_MAX AR_DATA_RATE_1GB
455 #ifdef AR_DATA_RATE_100MB
456 #define AR_DATA_RATE_MAX AR_DATA_RATE_100MB
458 #define AR_DATA_RATE_MAX AR_DATA_RATE_DEFAULT
467 #define AR_TIME_LOW_VALUE 0xDEA00000L
468 #define AR_TIME_MID_VALUE 0x6c97L
469 #define AR_TIME_HIGH_VERSION_VALUE 0x11D1L
470 #define AR_TIME_CLOCK2_VALUE2 0x82L
471 #define AR_TIME_CLOCK2_VALUE1 0x71L
473 #define AR_PROPERTIES_STATE_BACKUP 0
474 #define AR_PROPERTIES_STATE_PRIMARY 1
481 #define AR_PROPERTIES_PARAM_SERVER_PRM 0
482 #define AR_PROPERTIES_PARAM_SERVER_CM 16
491 #define AR_DEVICE_ACCESS_ONLY_FROM_EXPECTED_SUBMODULE 0
493 #define AR_DEVICE_ACCESS_CONTROLLE_BY_DEVICE 256
499 #define AR_COMPANION_AR_RESERVED 1536
505 #define IOCR_RT_CLASS_1_VALUE 1
506 #define IOCR_RT_CLASS_2_VALUE 2
507 #define IOCR_RT_CLASS_3_VALUE 3
508 #define IOCR_RT_CLASS_UDP_VALUE 4
511 #define LT_IP_UDP_RPC_SNMP_ICMP 0x0800
512 #define LT_ARP 0x0806
513 #define LT_TAG_CONTROL_INFORMATION 0x8100
514 #define LT_RTC_RTA_DCP_PTCP_MRRT 0x8892
515 #define LT_MRP 0x88E3
516 #define LT_LLDP 0x88CC
520 #define NO_MEDIA_REDUNDANT_FRAME 0
522 #define MEDIA_REDUNDANT_FRAME 2048
526 #define REDUCTION_RATIO_32 32
527 #define REDUCTION_RATIO_64 64
528 #define REDUCTION_RATIO_256 256
529 #define REDUCTION_RATIO_512 512
530 #define REDUCTION_RATIO_8192 8192
531 #define REDUCTION_RATIO_16384 16384
534 #define WATCHDOG_FACTOR_0_0001 0x0001
535 #define WATCHDOG_FACTOR_0_1e00 0x1e00
538 #define WATCHDOG_FACTOR_0_03125 (FSO_SEND_CLOCK_FACTOR_MULTIPLCATEUR) / (1000000L)
539 #define WATCHDOG_FACTOR_61440 61440L
540 #define WATCHDOG_FACTOR_1920 1920L
543 #define DATA_OLD_FACTOR_0_0001 0x0001
544 #define DATA_OLD_FACTOR_0_1e00 0x1e00
545 #define DATA_OLD_FACTOR_0_03125 (FSO_SEND_CLOCK_FACTOR_MULTIPLCATEUR) / (1000000L)
546 #define DATA_OLD_FACTOR_61440 61440L
547 #define DATA_OLD_FACTOR_1920 1920
550 #define FSO_SEND_CLOCK_FACTOR_MULTIPLCATEUR 31250L
551 #define FSO_FORMAT_MULTIPLCATEUR 1000L
552 #define FSO_MIN_VALUE 0x003d0900L
553 #define FSO_MAX_VALUE 0xfffffffeL
556 #define FRAME_ID_LOW_RANGE_RT_CLASS_3 0x0100
557 #define FRAME_ID_HIGTH_RANGE_RT_CLASS_3 0x7fff
559 #define FRAME_ID_LOW_RANGE_5_UNICAST 0xc000
560 #define FRAME_ID_HIGTH_RANGE_5_UNICAST 0xf7ff
562 #define FRAME_ID_LOW_RANGE_5_MULTICAST 0xf800
563 #define FRAME_ID_HIGTH_RANGE_5_MULTICAST 0xfbff
565 #define FRAME_ID_LOW_RANGE_4_UNICAST 0x8000
566 #define FRAME_ID_HIGTH_RANGE_4_UNICAST 0xbbff
568 #define FRAME_ID_LOW_RANGE_4_MULTICAST 0xbc00
569 #define FRAME_ID_HIGTH_RANGE_4_MULTICAST 0xbfff
571 #define FRAME_ID_OUT_OF_RANGE 0xffff
574 #define ALARM_TRANSPORT_RTA_CLASS_1 0
575 #define ALARM_TRANSPORT_RTA_CLASS_UDP 2
578 #define MAX_ALARM_LENGTH_MIN_VALUE 200
579 #define MAX_ALARM_LENGTH_MAX_VALUE 1432
582 #define MAX_ARBLOCK_CM_INITIATOR_TIMEOUT_FACTOR 1000
586 #define ALARM_USER_PRIORITY_LOW 0xa000
587 #define ALARM_USER_PRIORITY_HIGTH 0xc000
588 #define ALARM_CR_VLAN_IX_MAX_VALUE 0xfff
592 #define ADD_RESOLUTION_PROP_PROTOCOLE_DNS 0x01
595 #define ADD_RESOLUTION_PROP_PROTOCOLE_DCP 0x02
599 #define MCR_ADD_RESOLUTION_PROP_FACTOR_MIN_VALUE 0x0001
600 #define MCR_ADD_RESOLUTION_PROP_FACTOR_MAX_VALUE 0x0064
602 #define MCR_MCI_TIMEOUT_FACTOR_MAX_VALUR 100
604 #define MCR_STATION_NAME_MIN_LENGTH 1
605 #define MCR_STATION_NAME_MAX_LENGTH 240
607 #define MCR_BLOCK_REQ_FIELD_LENTGH 12
611 #define AR_BLOCK_ALARM_ALLOW_MASK 0x80
615 #define BT_ARRPCBLOCK_REQ_LEN 4
616 #define BT_ALARMCRBLOCK_REQ_LEN 22
620 #define SUB_SLOT_NUMBER_MAX_ALLOWED 0x7fff
623 #define SUB_MODULE_PROPERTIES_TYPE_CHECKING 0x2
624 #define SUB_MODULE_PROPERTIES_TYPE_MASK 3
626 #define SUB_MODULE_PROPERTIES_TYPE_LAG 3
628 #define SUB_MODULE_PROPERTIES_RESERVED_LAG 3
631 #define SUB_MODULE_PROPERTIES_SHARED_INPUT_CHECKING 0x4
632 #define SUB_MODULE_PROPERTIES_SHARED_INPUT_MASK 4
634 #define AR_BLOC_MULTICAST_MAC_MASK 0x01
636 #define SRINFO_BLOC_PROP_RESERVED_1_MASK 0x7FFC
641 #define AR_PROPERTIES_STATE_CHECKING 7
644 #define AR_PROPERTIES_TAKEOVERALLOWED 8
647 #define AR_PROPERTIES_PARAM_SERVER_CHECKING 16
650 #define AR_PROPERTIES_DATA_RATE_CHECKING 96
653 #define AR_DEVICE_ACCESS_CHECKING 256
656 #define AR_COMPANION_AR_CHECKING 1536
659 #define IOCRBLOCKREQ_RTCLASS_CHECKING 15
662 #define IOUSER_PRIORITY_CHECKING 57344L
665 #define ALARMCR_TRANSPORT_CHECKING 2
668 #define ALARMCR_RESERVED_CHECKING 0xfffffffcL
671 #define IOCRBLOCKREQ_IOCRPROPERTIES_RESERVED1_CHECKING 2032
674 #define IOCRBLOCKREQ_IOCRPROPERTIES_RESERVED2_CHECKING 0xfffff000L
677 #define IOCRBLOCKREQ_MEDIA_REDUNDANCY_CHECKING 2048
679 #define FRAME_SEND_OFFSET_BEST_AS_POSSIBLE 0xffffffffL
681 #define RTA_TIMEOUT_FACTOR_MIN 0x0001
682 #define RTA_TIMEOUT_FACTOR_MAX 0x0064
684 #define RTA_RETRY_MIN 3
685 #define RTA_RETRY_MAX 15
687 #define AR_RPC_INITIATOR_RPC_SERVER_PORT_MIN 0x0400
688 #define AR_RPC_INITIATOR_RPC_SERVER_PORT_MAX 0xffff
690 #define REDUNDANCY_DHF_MIN 0x00C9
691 #define REDUNDANCY_DHF_MAX 0xEA60
693 #define SUBMODULE_PROPERTIES_TYPE_MASK 3
698 #define ALARM_CRVLANID_CHECKIN 4095L
700 #define ALARM_USER_PRIORITY_CHECKIN 57344L
704 #define MCR_ADD_RESOLUTION_PROP_PROTOCOLE_CHECKIN 7L
707 #define MCR_ADD_RESOLUTION_PROP_RESERVED_CHECKIN 65528L
710 #define MCR_ADD_RESOLUTION_PROP_FACTOR_CHECKIN 0xffff0000L
713 #define DIFF_BLOCK_ARINFO_DECALLAGE (128)
714 #define DIFF_BLOCK_IDENT_INFO_DECALLAGE (2048L)
715 #define DIFF_BLOCK_FORMAT_IND_DECALLAGE (32768L)
717 #define INITIATOR_TIMEOUT_FACTOR_BASE 100
720 #define DCP_NAME_PORT_FORMAT "port-"
721 #define DCP_NAME_PORT_FORMAT_LEN 5
722 #define DCP_NAME_LABEL_MAX_LEN 63
723 #define DCP_NAME_LABEL_MIN_LEN 1
725 #define DCP_NAME_IP_MAX_NUMBER 3
726 #define DCP_NAME_IP_MIN_NUMBER 0
727 #define DCP_NAME_IP_LABEL_NUMBER 4
739 APP_BYTE ErrorDecode;
743 typedef struct _ST_PNIO_STATUS PACK_ALIGNEMENT(ST_PNIO_STATUS), APP_FAR * LPST_PNIO_STATUS;
744 #define ST_PNIO_STATUS_SIZEOF 4
745 STRUCT_SIZE_CHECK(ST_PNIO_STATUS, ST_PNIO_STATUS_SIZEOF)
750 APP_WORD BLockLength;
751 APP_BYTE BlockVersionHigh;
752 APP_BYTE BlockVersionLow;
754 typedef struct _ST_BLOCK_HEADER PACK_ALIGNEMENT(ST_BLOCK_HEADER), APP_FAR * LPST_BLOCK_HEADER;
755 #define ST_BLOCK_HEADER_SIZEOF 6
756 STRUCT_SIZE_CHECK(ST_BLOCK_HEADER, ST_BLOCK_HEADER_SIZEOF)
767 ST_CLR_RPC_UUID ARUUID;
769 APP_BYTE CMInitiatorMacAdd[6];
770 ST_CLR_RPC_UUID CMInitiatorObjectUUID;
771 ALIGNED_DWORD_DECL(ARProperties);
772 APP_WORD CMInitiatorActivityTimeoutFactor;
773 APP_WORD InitiatorUDPRTPort;
774 APP_WORD StationNameLength;
775 APP_BYTE CMInitiatorStationName[NAMELEN];
777 typedef struct _ST_AR_BLOCK_REQ PACK_ALIGNEMENT(ST_AR_BLOCK_REQ), APP_FAR *LPST_AR_BLOCK_REQ;
778 #define ST_AR_BLOCK_REQ_SIZEOF 292
779 STRUCT_SIZE_CHECK(ST_AR_BLOCK_REQ, ST_AR_BLOCK_REQ_SIZEOF)
784 APP_WORD IOCRReference;
786 ALIGNED_DWORD_DECL(IOCRProperties);
789 APP_WORD SendClockFactor;
790 APP_WORD ReductionRatio;
793 ALIGNED_DWORD_DECL(FrameSendOffset);
794 APP_WORD WatchdogFactor;
795 APP_WORD DataHoldFactor;
796 APP_WORD IOCRTagHeader;
797 APP_BYTE IOCRMulticastMACAdd[6];
798 APP_WORD NumberOfAPIs;
801 typedef struct _ST_IOCR_BLOCK_REQ PACK_ALIGNEMENT(ST_IOCR_BLOCK_REQ), APP_FAR *LPST_IOCR_BLOCK_REQ;
802 #define ST_IOCR_BLOCK_REQ_SIZEOF 40
803 STRUCT_SIZE_CHECK(ST_IOCR_BLOCK_REQ, ST_IOCR_BLOCK_REQ_SIZEOF)
807 ALIGNED_DWORD_DECL(API);
808 APP_WORD NumberOfIODataObjects;
811 typedef struct _ST_IOCR_BLOCK_REQ_API PACK_ALIGNEMENT(ST_IOCR_BLOCK_REQ_API),ST_IOCR_BLOCK_RES_API, APP_FAR * LPST_IOCR_BLOCK_REQ_API;
812 #define ST_IOCR_BLOCK_REQ_API_SIZEOF 6
813 STRUCT_SIZE_CHECK(ST_IOCR_BLOCK_REQ_API, ST_IOCR_BLOCK_REQ_API_SIZEOF)
819 APP_WORD SubSlotNumber;
820 APP_WORD IODataObjectFrameOffset;
823 #define ST_IOCR_BLOCK_REQ_IODATA_OBJECTS_SIZEOF 6
824 STRUCT_SIZE_CHECK(ST_IOCR_BLOCK_REQ_IODATA_OBJECTS, ST_IOCR_BLOCK_REQ_IODATA_OBJECTS_SIZEOF)
829 APP_WORD NumberofIOCS;
832 #define ST_IOCR_BLOCK_REQ_IOCS_SIZEOF 2
833 STRUCT_SIZE_CHECK(ST_IOCR_BLOCK_REQ_IOCS, ST_IOCR_BLOCK_REQ_IOCS_SIZEOF)
839 APP_WORD SubSlotNumber;
840 APP_WORD IOCSDataObjectFrameOffset;
843 #define ST_IOCR_BLOCK_REQ_IOCS_DATA_OBJECTS_SIZEOF 6
844 STRUCT_SIZE_CHECK(ST_IOCR_BLOCK_REQ_IOCS_DATA_OBJECTS, ST_IOCR_BLOCK_REQ_IOCS_DATA_OBJECTS_SIZEOF)
848 APP_WORD NumberOfAPIs;
852 #define ST_EXPETED_SUBMODULE_BLOCK_REQ_SIZEOF 2
853 STRUCT_SIZE_CHECK(ST_EXPETED_SUBMODULE_BLOCK_REQ, ST_EXPETED_SUBMODULE_BLOCK_REQ_SIZEOF)
858 ALIGNED_DWORD_DECL(API);
860 ALIGNED_DWORD_DECL(ModuleIdentNumber);
861 APP_WORD ModuleProperties;
862 APP_WORD NumberOfSubModules;
865 typedef struct _ST_MODULE_BLOCK_REQ PACK_ALIGNEMENT(ST_MODULE_BLOCK_REQ), APP_FAR * LPST_MODULE_BLOCK_REQ;
866 #define ST_MODULE_BLOCK_REQ_SIZEOF 14
867 STRUCT_SIZE_CHECK(ST_MODULE_BLOCK_REQ, ST_MODULE_BLOCK_REQ_SIZEOF)
872 APP_WORD SubSlotNumber;
873 ALIGNED_DWORD_DECL(SubModuleIdentNumber);
874 APP_WORD SubModuleProperties;
876 typedef struct _ST_SUBMODULE_BLOCK_REQ PACK_ALIGNEMENT(ST_SUBMODULE_BLOCK_REQ), APP_FAR * LPST_SUBMODULE_BLOCK_REQ;
877 #define ST_SUBMODULE_BLOCK_REQ_SIZEOF 8
878 STRUCT_SIZE_CHECK(ST_SUBMODULE_BLOCK_REQ, ST_SUBMODULE_BLOCK_REQ_SIZEOF)
883 APP_WORD DataDescription;
884 APP_WORD SubModuleDataLength;
889 #define ST_DATADESCRIPTION_BLOCK_REQ_SIZEOF 6
890 STRUCT_SIZE_CHECK(ST_DATADESCRIPTION_BLOCK_REQ, ST_DATADESCRIPTION_BLOCK_REQ_SIZEOF)
895 APP_WORD AlarmCRType;
897 ALIGNED_DWORD_DECL(AlarmCRProperties);
898 APP_WORD RTATimeoutFactor;
900 APP_WORD LocalAlarmReference;
901 APP_WORD MaxAlarmDataLength;
902 APP_WORD AlarmCRTagHeaderHigh;
903 APP_WORD AlarmCRTagHeaderLow;
905 typedef struct _ST_ALARM_CR_BLOCK_REQ PACK_ALIGNEMENT(ST_ALARM_CR_BLOCK_REQ), APP_FAR *LPST_ALARM_CR_BLOCK_REQ, APP_FAR *LPST_ALARM_CR_BLOCK_RES;
906 #define ST_ALARM_CR_BLOCK_REQ_SIZEOF 20
907 STRUCT_SIZE_CHECK(ST_ALARM_CR_BLOCK_REQ, ST_ALARM_CR_BLOCK_REQ_SIZEOF)
912 ST_CLR_RPC_UUID ParameterServerObjectUUID;
913 ALIGNED_DWORD_DECL(ParameterServerProperties);
914 APP_WORD CMInitiatorActivityTimeoutFactor;
915 APP_WORD StationNameLength;
916 APP_BYTE ParameterServerStationName[NAMELEN];
919 #define ST_PRMSERVER_CR_BLOCK_REQ_SIZEOF 264
920 STRUCT_SIZE_CHECK(ST_PRMSERVER_CR_BLOCK_REQ, ST_PRMSERVER_CR_BLOCK_REQ_SIZEOF)
924 APP_WORD IOCRReference;
925 ALIGNED_DWORD_DECL(AddressResolutionProperties);
926 APP_WORD MCTimeOutFactor;
927 APP_WORD StationNameLength;
928 APP_BYTE ProviderStationName[NAMELEN];
930 typedef struct _ST_MCR_CR_BLOCK_REQ PACK_ALIGNEMENT(ST_MCR_CR_BLOCK_REQ), APP_FAR *LPST_MCR_CR_BLOCK_REQ;
931 #define ST_MCR_CR_BLOCK_REQ_SIZEOF 250
932 STRUCT_SIZE_CHECK(ST_MCR_CR_BLOCK_REQ, ST_MCR_CR_BLOCK_REQ_SIZEOF)
937 APP_WORD InitiatorRPCServerPort;
939 typedef struct _ST_ARRPC_CR_BLOCK_REQ PACK_ALIGNEMENT(ST_ARRPC_CR_BLOCK_REQ), APP_FAR *LPST_ARRPC_CR_BLOCK_REQ;
940 #define ST_ARRPC_CR_BLOCK_REQ_SIZEOF 2
941 STRUCT_SIZE_CHECK(ST_ARRPC_CR_BLOCK_REQ, ST_ARRPC_CR_BLOCK_REQ_SIZEOF)
946 ST_AR_BLOCK_REQ ArBlockReq;
950 #define ST_IODCONNECT_REQ_SIZEOF 0
951 STRUCT_SIZE_CHECK(ST_IODCONNECT_REQ, ST_IODCONNECT_REQ_SIZEOF)
956 ST_CLR_RPC_UUID ARUIUID;
958 APP_BYTE CMResponderMac[6];
959 APP_WORD wCMResponderUdpPort;
961 typedef struct _ST_ARBLOCK_RES PACK_ALIGNEMENT(ST_ARBLOCK_RES), APP_FAR * LPST_ARBLOCK_RES;
962 #define ST_ARBLOCK_RES_SIZEOF sizeof(ST_ARBLOCK_RES)
963 STRUCT_SIZE_CHECK(ST_ARBLOCK_RES, ST_ARBLOCK_RES_SIZEOF)
969 APP_WORD wIOCRReference;
972 typedef struct _ST_IOCR_BLOCK_RES PACK_ALIGNEMENT(ST_IOCR_BLOCK_RES), APP_FAR * LPST_IOCR_BLOCK_RES;
973 #define ST_IOCR_BLOCK_RES_SIZEOF 6
974 STRUCT_SIZE_CHECK(ST_IOCR_BLOCK_RES, ST_IOCR_BLOCK_RES_SIZEOF)
979 APP_WORD wALARMCRType;
980 APP_WORD wLocalAlarmReference;
981 APP_WORD wMaxAlarmDataLen;
983 typedef struct _ST_ALARM_BLOCK_RES PACK_ALIGNEMENT(ST_ALARM_BLOCK_RES), APP_FAR * LPST_ALARM_BLOCK_RES;
984 #define ST_ALARM_BLOCK_RES_SIZEOF 6
985 STRUCT_SIZE_CHECK(ST_ALARM_BLOCK_RES, ST_ALARM_BLOCK_RES_SIZEOF)
990 APP_WORD wNumberOfAPI;
993 #define ST_EXPECTED_MODULE_BLOCK_RES_SIZEOF 2
994 STRUCT_SIZE_CHECK(ST_EXPECTED_MODULE_BLOCK_RES, ST_EXPECTED_MODULE_BLOCK_RES_SIZEOF)
999 ALIGNED_DWORD_DECL(dwAPI);
1000 APP_WORD wNumberOfModules;
1003 #define ST_EXPECTED_API_MODULE_BLOCK_RES_SIZEOF 6
1004 STRUCT_SIZE_CHECK(ST_EXPECTED_API_MODULE_BLOCK_RES, ST_EXPECTED_API_MODULE_BLOCK_RES_SIZEOF)
1009 APP_WORD SlotNumber;
1010 ALIGNED_DWORD_DECL(ModuleIdentNumber);
1011 APP_WORD ModuleState;
1012 APP_WORD NumberOfSubModules;
1016 #define ST_EXPECTED_MODULE_STATE_BLOCK_REQ_SIZEOF 10
1017 STRUCT_SIZE_CHECK(ST_EXPECTED_MODULE_STATE_BLOCK_REQ, ST_EXPECTED_MODULE_STATE_BLOCK_REQ_SIZEOF)
1022 APP_WORD SubSlotNumber;
1023 ALIGNED_DWORD_DECL(SubModuleIdentNumber);
1024 APP_WORD SubModuleState;
1027 #define ST_EXPECTED_SUBMODULE_STATE_RES_SIZEOF 8
1028 STRUCT_SIZE_CHECK(ST_EXPECTED_SUBMODULE_STATE_RES, ST_EXPECTED_SUBMODULE_STATE_RES_SIZEOF)
1031 #define RW_PADDING_LEN 24
1032 #define RW_PADDING_LEN_IMPLICIT 8
1034 #define RW_PADDING_RES_LEN 20
1038 APP_WORD Seq_Number;
1039 ST_CLR_RPC_UUID ARUUID;
1040 ALIGNED_DWORD_DECL(API);
1041 APP_WORD Slot_Number;
1042 APP_WORD Subslot_Number;
1045 ALIGNED_DWORD_DECL(Record_Data_Length);
1048 APP_BYTE RWPAdding[RW_PADDING_LEN];
1059 typedef struct _ST_IOD_READ_WRITE PACK_ALIGNEMENT(ST_IOD_READ_WRITE), APP_FAR * LPST_IOD_READ_WRITE;
1060 #define ST_IOD_READ_WRITE_SIZEOF 58
1061 STRUCT_SIZE_CHECK(ST_IOD_READ_WRITE, ST_IOD_READ_WRITE_SIZEOF)
1066 ST_BLOCK_HEADER stBlockHeader;
1068 ST_CLR_RPC_UUID ARUUID;
1071 APP_WORD Control_Command;
1072 APP_WORD Control_Properties;
1074 typedef struct _ST_CONTROL_BLOCK PACK_ALIGNEMENT(ST_CONTROL_BLOCK), APP_FAR * LPST_CONTROL_BLOCK;
1075 #define ST_CONTROL_BLOCK_SIZEOF (26 + ST_BLOCK_HEADER_SIZEOF)
1081 ST_CLR_RPC_UUID ARUUID;
1084 APP_WORD Control_Command;
1085 APP_WORD Control_Properties;
1087 typedef struct _ST_CONTROL_REQ_BLOCK PACK_ALIGNEMENT(ST_CONTROL_REQ_BLOCK), APP_FAR * LPST_CONTROL_REQ_BLOCK;
1088 #define ST_CONTROL_REQ_BLOCK_SIZEOF (sizeof(ST_CONTROL_REQ_BLOCK))
1094 LPST_IOCR_BLOCK_REQ pListIOCR;
1096 typedef struct _ST_LISTOF_IOCR PACK_ALIGNEMENT(ST_LISTOF_IOCR), APP_FAR * LPST_LISTOF_IOCR;
1101 APP_WORD wAlarmDstEndpoint;
1102 APP_WORD wAlarmSrcEndpoint;
1105 APP_WORD wSendSeqNum;
1106 APP_WORD wAckSeqNum;
1107 APP_WORD wVarParLen;
1109 typedef struct _ST_FRAME_PROFINET_ALARM PACK_ALIGNEMENT(ST_FRAME_PROFINET_ALARM), APP_FAR * LPST_FRAME_PROFINET_ALARM;
1110 #define ST_FRAME_PROFINET_ALARM_SIZEOF 12
1111 STRUCT_SIZE_CHECK(ST_FRAME_PROFINET_ALARM, ST_FRAME_PROFINET_ALARM_SIZEOF)
1114 #include "os_unpck.h"
Definition: pnio_pdu.h:764
Definition: pnio_pdu.h:881
Definition: pnio_pdu.h:805
Definition: pnio_pdu.h:988
Definition: pnio_pdu.h:1036
Definition: pnio_pdu.h:736
Definition: pnio_pdu.h:944
Definition: pnio_pdu.h:966
Definition: pnio_pdu.h:953
Definition: pnio_pdu.h:1064
Definition: pnio_pdu.h:870
Definition: pnio_pdu.h:1091
Definition: pnio_pdu.h:836
Definition: pnio_pdu.h:893
Definition: pnio_pdu.h:935
Definition: pnio_pdu.h:747
Definition: pnio_pdu.h:922
Definition: pnio_pdu.h:910
Definition: pnio_pdu.h:827
Definition: pnio_pdu.h:1078
Definition: pnio_pdu.h:1007
Definition: pnio_pdu.h:856
Definition: pnio_pdu.h:997
Definition: pnio_pdu.h:1020
Definition: pnio_pdu.h:781
Definition: pnio_pdu.h:846
Definition: pnio_pdu.h:816
Definition: pnio_pdu.h:1099
Definition: pnio_pdu.h:977