diff -r 4d8c9a441ef6 -r b544025bd696 master/fsm_slave.h --- a/master/fsm_slave.h Thu May 12 16:38:48 2011 +0200 +++ b/master/fsm_slave.h Thu May 12 16:45:02 2011 +0200 @@ -42,6 +42,7 @@ #include "fsm_coe.h" #include "fsm_foe.h" #include "fsm_soe.h" +#include "fsm_master.h" typedef struct ec_fsm_slave ec_fsm_slave_t; /**< \see ec_fsm_slave */ @@ -49,13 +50,13 @@ */ struct ec_fsm_slave { ec_slave_t *slave; /**< slave the FSM runs on */ - ec_datagram_t *datagram; /**< datagram used in the state machine */ + ec_mailbox_t *mbox; /**< mailbox used in the state machine */ void (*state)(ec_fsm_slave_t *); /**< master state function */ - ec_sdo_request_t *sdo_request; /**< SDO request to process. */ - ec_foe_request_t *foe_request; /**< FoE request to process. */ + ec_master_sdo_request_t *sdo_request; /**< SDO request to process. */ + ec_master_foe_request_t *foe_request; /**< FoE request to process. */ off_t foe_index; /**< index to FoE write request data */ - ec_soe_request_t *soe_request; /**< SoE request to process. */ + ec_master_soe_request_t *soe_request; /**< SoE request to process. */ ec_fsm_coe_t fsm_coe; /**< CoE state machine */ ec_fsm_foe_t fsm_foe; /**< FoE state machine */ @@ -64,10 +65,10 @@ /*****************************************************************************/ -void ec_fsm_slave_init(ec_fsm_slave_t *, ec_slave_t *, ec_datagram_t *); +void ec_fsm_slave_init(ec_fsm_slave_t *, ec_slave_t *, ec_mailbox_t *); void ec_fsm_slave_clear(ec_fsm_slave_t *); -void ec_fsm_slave_exec(ec_fsm_slave_t *); +int ec_fsm_slave_exec(ec_fsm_slave_t *); void ec_fsm_slave_ready(ec_fsm_slave_t *); /*****************************************************************************/