29#ifndef __EC_FSM_SLAVE_H__
30#define __EC_FSM_SLAVE_H__
EtherCAT datagram structure.
EtherCAT EoE request structure.
EtherCAT CoE state machines.
struct ec_fsm_coe ec_fsm_coe_t
EtherCAT EoE set IP parameter state machines.
struct ec_fsm_eoe ec_fsm_eoe_t
EtherCAT FoE state machines.
struct ec_fsm_foe ec_fsm_foe_t
void ec_fsm_slave_set_ready(ec_fsm_slave_t *)
Sets the current state of the state machine to READY.
void ec_fsm_slave_clear(ec_fsm_slave_t *)
Destructor.
struct ec_fsm_slave ec_fsm_slave_t
void ec_fsm_slave_init(ec_fsm_slave_t *, ec_slave_t *)
Constructor.
int ec_fsm_slave_exec(ec_fsm_slave_t *, ec_datagram_t *)
Executes the current state of the state machine.
int ec_fsm_slave_is_ready(const ec_fsm_slave_t *)
Returns, if the FSM is currently not busy and ready to execute.
EtherCAT CoE state machines.
struct ec_fsm_soe ec_fsm_soe_t
Global definitions and macros.
struct ec_slave ec_slave_t
struct ec_soe_request ec_soe_request_t
struct ec_sdo_request ec_sdo_request_t
struct ec_reg_request ec_reg_request_t
EtherCAT register request structure.
EtherCAT CANopen SDO request structure.
Ethernet-over-EtherCAT set IP parameter request.
Finite state machine of an EtherCAT slave.
ec_datagram_t * datagram
Previous state datagram.
void(* state)(ec_fsm_slave_t *, ec_datagram_t *)
State function.
ec_reg_request_t * reg_request
Register request to process.
ec_eoe_request_t * eoe_request
SoE request to process.
ec_foe_request_t * foe_request
FoE request to process.
ec_sdo_request_t * sdo_request
SDO request to process.
ec_fsm_soe_t fsm_soe
SoE state machine.
ec_soe_request_t * soe_request
SoE request to process.
ec_fsm_eoe_t fsm_eoe
EoE state machine.
ec_slave_t * slave
slave the FSM runs on
off_t foe_index
Index to FoE write request data.
ec_fsm_foe_t fsm_foe
FoE state machine.
ec_fsm_coe_t fsm_coe
CoE state machine.
struct list_head list
Used for execution list.