equal
deleted
inserted
replaced
37 #ifndef __EC_FSM_MASTER_H__ |
37 #ifndef __EC_FSM_MASTER_H__ |
38 #define __EC_FSM_MASTER_H__ |
38 #define __EC_FSM_MASTER_H__ |
39 |
39 |
40 #include "globals.h" |
40 #include "globals.h" |
41 #include "datagram.h" |
41 #include "datagram.h" |
|
42 #include "mailbox.h" |
42 #include "foe_request.h" |
43 #include "foe_request.h" |
43 #include "sdo_request.h" |
44 #include "sdo_request.h" |
44 #include "soe_request.h" |
45 #include "soe_request.h" |
45 #include "fsm_slave_config.h" |
46 #include "fsm_slave_config.h" |
46 #include "fsm_slave_scan.h" |
47 #include "fsm_slave_scan.h" |
125 /** Finite state machine of an EtherCAT master. |
126 /** Finite state machine of an EtherCAT master. |
126 */ |
127 */ |
127 struct ec_fsm_master { |
128 struct ec_fsm_master { |
128 ec_master_t *master; /**< master the FSM runs on */ |
129 ec_master_t *master; /**< master the FSM runs on */ |
129 ec_datagram_t *datagram; /**< datagram used in the state machine */ |
130 ec_datagram_t *datagram; /**< datagram used in the state machine */ |
|
131 ec_mailbox_t* mbox; /**< mailbox used in the CoE state machine */ |
130 unsigned int retries; /**< retries on datagram timeout. */ |
132 unsigned int retries; /**< retries on datagram timeout. */ |
131 |
133 |
132 void (*state)(ec_fsm_master_t *); /**< master state function */ |
134 void (*state)(ec_fsm_master_t *); /**< master state function */ |
133 int idle; /**< state machine is in idle phase */ |
135 int idle; /**< state machine is in idle phase */ |
134 unsigned long scan_jiffies; /**< beginning of slave scanning */ |
136 unsigned long scan_jiffies; /**< beginning of slave scanning */ |