master/fsm_slave_config.c
changeset 1173 2ec9651a6c89
parent 1064 5f27403587a8
child 1174 235f34ca50e2
equal deleted inserted replaced
1172:74ee632c3b5e 1173:2ec9651a6c89
   586         )
   586         )
   587 {
   587 {
   588     if (ec_fsm_pdo_mapping_exec(&fsm->fsm_pdo_mapping)) return;
   588     if (ec_fsm_pdo_mapping_exec(&fsm->fsm_pdo_mapping)) return;
   589 
   589 
   590     if (!ec_fsm_pdo_mapping_success(&fsm->fsm_pdo_mapping)) {
   590     if (!ec_fsm_pdo_mapping_success(&fsm->fsm_pdo_mapping)) {
   591         EC_ERR("Configuration of Pdo mapping failed for slave %u.\n",
   591         EC_WARN("Configuration of Pdo mappings failed on slave %u.\n",
   592                 fsm->slave->ring_position);
   592                 fsm->slave->ring_position);
   593         fsm->slave->error_flag = 1;
   593     }
   594         fsm->state = ec_fsm_slave_config_state_error;
   594 
   595         return;
   595     // start applying Pdo assignments
   596     }
       
   597 
       
   598     // start applying alternate Pdo assignments
       
   599     ec_fsm_pdo_assign_start(&fsm->fsm_pdo_assign, fsm->slave);
   596     ec_fsm_pdo_assign_start(&fsm->fsm_pdo_assign, fsm->slave);
   600     fsm->state = ec_fsm_slave_config_state_pdo_assign;
   597     fsm->state = ec_fsm_slave_config_state_pdo_assign;
   601     fsm->state(fsm); // execute immediately
   598     fsm->state(fsm); // execute immediately
   602 }
   599 }
   603 
   600 
   610         )
   607         )
   611 {
   608 {
   612     if (ec_fsm_pdo_assign_exec(&fsm->fsm_pdo_assign)) return;
   609     if (ec_fsm_pdo_assign_exec(&fsm->fsm_pdo_assign)) return;
   613 
   610 
   614     if (!ec_fsm_pdo_assign_success(&fsm->fsm_pdo_assign)) {
   611     if (!ec_fsm_pdo_assign_success(&fsm->fsm_pdo_assign)) {
   615         EC_ERR("Pdo assignment failed for slave %u.\n",
   612         EC_WARN("Configuration of Pdo assignments failed on slave %u.\n",
   616                 fsm->slave->ring_position);
   613                 fsm->slave->ring_position);
   617         fsm->slave->error_flag = 1;
       
   618         fsm->state = ec_fsm_slave_config_state_error;
       
   619         return;
       
   620     }
   614     }
   621 
   615 
   622     ec_fsm_slave_config_enter_fmmu(fsm);
   616     ec_fsm_slave_config_enter_fmmu(fsm);
   623 }
   617 }
   624 
   618