master/fsm_slave_config.c
changeset 859 233e32f428e1
parent 858 69122084d066
child 879 9b395c5646ab
equal deleted inserted replaced
858:69122084d066 859:233e32f428e1
   449     // start Sdo configuration
   449     // start Sdo configuration
   450     fsm->state = ec_fsm_slave_config_state_sdo_conf;
   450     fsm->state = ec_fsm_slave_config_state_sdo_conf;
   451     fsm->request = list_entry(fsm->slave->config->sdo_configs.next,
   451     fsm->request = list_entry(fsm->slave->config->sdo_configs.next,
   452             ec_sdo_request_t, list);
   452             ec_sdo_request_t, list);
   453     ecrt_sdo_request_write(fsm->request);
   453     ecrt_sdo_request_write(fsm->request);
   454     ec_fsm_coe_download(&fsm->fsm_coe, fsm->slave, fsm->request);
   454     ec_fsm_coe_transfer(&fsm->fsm_coe, fsm->slave, fsm->request);
   455     ec_fsm_coe_exec(&fsm->fsm_coe); // execute immediately
   455     ec_fsm_coe_exec(&fsm->fsm_coe); // execute immediately
   456 }
   456 }
   457 
   457 
   458 /*****************************************************************************/
   458 /*****************************************************************************/
   459 
   459 
   478     // Another Sdo to configure?
   478     // Another Sdo to configure?
   479     if (fsm->request->list.next != &fsm->slave->config->sdo_configs) {
   479     if (fsm->request->list.next != &fsm->slave->config->sdo_configs) {
   480         fsm->request = list_entry(fsm->request->list.next, ec_sdo_request_t,
   480         fsm->request = list_entry(fsm->request->list.next, ec_sdo_request_t,
   481                 list);
   481                 list);
   482         ecrt_sdo_request_write(fsm->request);
   482         ecrt_sdo_request_write(fsm->request);
   483         ec_fsm_coe_download(&fsm->fsm_coe, fsm->slave, fsm->request);
   483         ec_fsm_coe_transfer(&fsm->fsm_coe, fsm->slave, fsm->request);
   484         ec_fsm_coe_exec(&fsm->fsm_coe); // execute immediately
   484         ec_fsm_coe_exec(&fsm->fsm_coe); // execute immediately
   485         return;
   485         return;
   486     }
   486     }
   487 
   487 
   488     // All Sdos are now configured.
   488     // All Sdos are now configured.