11#ifndef _PACKET_ECATMAILBOX_H_
12#define _PACKET_ECATMAILBOX_H_
14#include <ws_diag_control.h>
22} ETHERNET_ADDRESS, *PETHERNET_ADDRESS;
23#define ETHERNET_ADDRESS_LEN ((int) sizeof(ETHERNET_ADDRESS))
26#define ETHERCAT_MBOX_TYPE_ADS 1
27#define ETHERCAT_MBOX_TYPE_EOE 2
28#define ETHERCAT_MBOX_TYPE_COE 3
29#define ETHERCAT_MBOX_TYPE_FOE 4
30#define ETHERCAT_MBOX_TYPE_SOE 5
38 uint16_t Priority : 2;
41 uint16_t Unsupported : 1;
52#define ETHERCAT_MBOX_HEADER_LEN ((int) sizeof(ETHERCAT_MBOX_HEADER))
55#define ETHERNET_FRAMENO_MASK 0x0000000F
57#define EOE_TYPE_FRAME_FRAG 0
58#define EOE_TYPE_TIMESTAMP_RES 1
59#define EOE_TYPE_INIT_REQ 2
60#define EOE_TYPE_INIT_RES 3
61#define EOE_TYPE_MACFILTER_REQ 4
62#define EOE_TYPE_MACFILTER_RES 5
64#define EOE_RESULT_NOERROR 0x0000
65#define EOE_RESULT_UNSPECIFIED_ERROR 0x0001
66#define EOE_RESULT_UNSUPPORTED_TYPE 0x0002
67#define EOE_RESULT_NO_IP_SUPPORT 0x0201
68#define EOE_RESULT_NO_MACFILTERMASK_SUPPORT 0x0401
87#define ETHERCAT_EOE_INIT_LEN 58
93 uint16_t MacFilterCount :4;
94 uint16_t MacFilterMaskCount :2;
95 uint16_t Reserved1 :1;
96 uint16_t NoBroadcasts :1;
97 uint16_t Reserved2 :8;
105 ETHERNET_ADDRESS MacFilter[16];
106 ETHERNET_ADDRESS MacFilterMask[4];
108#define ETHERCAT_EOE_MACFILTER_LEN ((int) sizeof(ETHERCAT_EOE_MACFILTER))
114#define ETHERCAT_EOE_TIMESTAMP_LEN ((int) sizeof(ETHERCAT_EOE_TIMESTAMP))
120 uint16_t Fragment : 6;
121 uint16_t OffsetBuffer : 6;
123 uint16_t FrameNo : 4;
133 uint16_t PortAssign : 4;
134 uint16_t LastFragment : 1;
135 uint16_t TimeStampAppended : 1;
136 uint16_t TimeStampRequested : 1;
137 uint16_t Reserved : 5;
147#define ETHERCAT_EOE_HEADER_LEN ((int) sizeof(ETHERCAT_EOE_HEADER))
150#define ETHERCAT_COE_TYPE_EMERGENCY 1
151#define ETHERCAT_COE_TYPE_SDOREQ 2
152#define ETHERCAT_COE_TYPE_SDORES 3
153#define ETHERCAT_COE_TYPE_TXPDO 4
154#define ETHERCAT_COE_TYPE_RXPDO 5
155#define ETHERCAT_COE_TYPE_TXPDO_RTR 6
156#define ETHERCAT_COE_TYPE_RXPDO_RTR 7
157#define ETHERCAT_COE_TYPE_SDOINFO 8
164 uint16_t Reserved : 3;
169#define ETHERCAT_COE_HEADER_LEN ((int) sizeof(ETHERCAT_COE_HEADER))
177 uint8_t Expedited : 1;
179 uint8_t Complete : 1;
184 uint8_t Reserved : 5;
196 uint8_t Reserved : 4;
202 uint8_t Reserved : 4;
203 uint8_t Complete : 1;
209 uint8_t Expedited : 1;
211 uint8_t Complete : 1;
216 uint8_t Reserved : 4;
229 uint8_t Reserved : 5;
244#define ETHERCAT_SDO_HEADER_LEN 8
246#define SDO_CCS_DOWNLOAD_SEGMENT 0
247#define SDO_CCS_INITIATE_DOWNLOAD 1
248#define SDO_CCS_INITIATE_UPLOAD 2
249#define SDO_CCS_UPLOAD_SEGMENT 3
250#define SDO_CCS_ABORT_TRANSFER 4
252#define SDO_SCS_UPLOAD_SEGMENT 0
253#define SDO_SCS_DOWNLOAD_SEGMENT 1
254#define SDO_SCS_INITIATE_UPLOAD 2
255#define SDO_SCS_INITIATE_DOWNLOAD 3
258#define ECAT_COE_INFO_OPCODE_LIST_Q 1
259#define ECAT_COE_INFO_OPCODE_LIST_S 2
260#define ECAT_COE_INFO_OPCODE_OBJ_Q 3
261#define ECAT_COE_INFO_OPCODE_OBJ_S 4
262#define ECAT_COE_INFO_OPCODE_ENTRY_Q 5
263#define ECAT_COE_INFO_OPCODE_ENTRY_S 6
264#define ECAT_COE_INFO_OPCODE_ERROR_S 7
266#define ECAT_COE_INFO_LIST_TYPE_LENGTH 0
267#define ECAT_COE_INFO_LIST_TYPE_ALL 1
268#define ECAT_COE_INFO_LIST_TYPE_PDOMAP 2
269#define ECAT_COE_INFO_LIST_TYPE_BACKUP 3
271#define ECAT_COE_INFO_OBJCODE_NULL 0
272#define ECAT_COE_INFO_OBJCODE_DOMAIN 2
273#define ECAT_COE_INFO_OBJCODE_DEFTYPE 5
274#define ECAT_COE_INFO_OBJCODE_DEFSTRUCT 6
275#define ECAT_COE_INFO_OBJCODE_VAR 7
276#define ECAT_COE_INFO_OBJCODE_ARRAY 8
277#define ECAT_COE_INFO_OBJCODE_RECORD 9
279#define ECAT_COE_INFO_OBJCAT_OPTIONAL 0
280#define ECAT_COE_INFO_OBJCAT_MANDATORY 1
282#define ECAT_COE_INFO_OBJACCESS_RO 0x07
283#define ECAT_COE_INFO_OBJACCESS_RW 0x3f
340 uint8_t InComplete : 1;
349 uint16_t FragmentsLeft;
353#define ETHERCAT_SDO_INFO_LISTREQ_LEN 6
356#define ECAT_FOE_OPMODE_RRQ 1
357#define ECAT_FOE_OPMODE_WRQ 2
358#define ECAT_FOE_OPMODE_DATA 3
359#define ECAT_FOE_OPMODE_ACK 4
360#define ECAT_FOE_OPMODE_ERR 5
361#define ECAT_FOE_OPMODE_BUSY 6
363#define ECAT_FOE_ERRCODE_NOTDEFINED 0
364#define ECAT_FOE_ERRCODE_NOTFOUND 1
365#define ECAT_FOE_ERRCODE_ACCESS 2
366#define ECAT_FOE_ERRCODE_DISKFULL 3
367#define ECAT_FOE_ERRCODE_ILLEAGAL 4
368#define ECAT_FOE_ERRCODE_PACKENO 5
369#define ECAT_FOE_ERRCODE_EXISTS 6
370#define ECAT_FOE_ERRCODE_NOUSER 7
371#define ECAT_FOE_ERRCODE_BOOTSTRAPONLY 8
372#define ECAT_FOE_ERRCODE_NOTINBOOTSTRAP 9
403#define ETHERCAT_FOE_HEADER_LEN 6
415#define ECAT_SOE_OPCODE_RRQ 1
416#define ECAT_SOE_OPCODE_RRS 2
417#define ECAT_SOE_OPCODE_WRQ 3
418#define ECAT_SOE_OPCODE_WRS 4
419#define ECAT_SOE_OPCODE_NFC 5
428 uint8_t InComplete : 1;
432 uint8_t DataState : 1;
434 uint8_t Attribute : 1;
439 uint8_t Reserved : 1;
451 uint16_t FragmentsLeft;
464#define ETHERCAT_SOE_HEADER_LEN ((int) sizeof(ETHERCAT_SOE_HEADER))
Definition packet-ecatmb.h:406
Definition packet-ecatmb.h:143
Definition packet-ecatmb.h:103
Definition packet-ecatmb.h:111
Definition packet-ecatmb.h:391
Definition packet-ecatmb.h:46
Definition packet-ecatmb.h:236
Definition packet-ecatmb.h:307
Definition packet-ecatmb.h:321
Definition packet-ecatmb.h:346
Definition packet-ecatmb.h:286
Definition packet-ecatmb.h:295
Definition packet-ecatmb.h:455
Definition packet-ecatmb.h:20
Definition tvbuff-int.h:35
Definition packet-ecatmb.h:160
Definition packet-ecatmb.h:90
Definition packet-ecatmb.h:336
Definition packet-ecatmb.h:327