diff -r 2ec9651a6c89 -r 235f34ca50e2 master/fsm_master.c --- a/master/fsm_master.c Thu Jul 31 09:30:38 2008 +0000 +++ b/master/fsm_master.c Thu Jul 31 16:13:29 2008 +0000 @@ -79,13 +79,14 @@ fsm->slave_states = EC_SLAVE_STATE_UNKNOWN; // init sub-state-machines - ec_fsm_slave_config_init(&fsm->fsm_slave_config, fsm->datagram); + ec_fsm_coe_init(&fsm->fsm_coe, fsm->datagram); + ec_fsm_pdo_init(&fsm->fsm_pdo, &fsm->fsm_coe); + ec_fsm_change_init(&fsm->fsm_change, fsm->datagram); + ec_fsm_slave_config_init(&fsm->fsm_slave_config, fsm->datagram, + &fsm->fsm_change, &fsm->fsm_coe, &fsm->fsm_pdo); ec_fsm_slave_scan_init(&fsm->fsm_slave_scan, fsm->datagram, - &fsm->fsm_slave_config, &fsm->fsm_coe_map); + &fsm->fsm_slave_config, &fsm->fsm_pdo); ec_fsm_sii_init(&fsm->fsm_sii, fsm->datagram); - ec_fsm_change_init(&fsm->fsm_change, fsm->datagram); - ec_fsm_coe_init(&fsm->fsm_coe, fsm->datagram); - ec_fsm_coe_map_init(&fsm->fsm_coe_map, &fsm->fsm_coe); } /*****************************************************************************/ @@ -97,12 +98,12 @@ ) { // clear sub-state machines + ec_fsm_coe_clear(&fsm->fsm_coe); + ec_fsm_pdo_clear(&fsm->fsm_pdo); + ec_fsm_change_clear(&fsm->fsm_change); ec_fsm_slave_config_clear(&fsm->fsm_slave_config); ec_fsm_slave_scan_clear(&fsm->fsm_slave_scan); ec_fsm_sii_clear(&fsm->fsm_sii); - ec_fsm_change_clear(&fsm->fsm_change); - ec_fsm_coe_clear(&fsm->fsm_coe); - ec_fsm_coe_map_clear(&fsm->fsm_coe_map); } /*****************************************************************************/