master/master.c
changeset 550 f94a9f1bcaea
parent 549 67be4381c820
child 556 dc5829af044d
equal deleted inserted replaced
549:67be4381c820 550:f94a9f1bcaea
   511     // set states for all slaves
   511     // set states for all slaves
   512     list_for_each_entry(slave, &master->slaves, list) {
   512     list_for_each_entry(slave, &master->slaves, list) {
   513         ec_slave_reset(slave);
   513         ec_slave_reset(slave);
   514         ec_slave_request_state(slave, EC_SLAVE_STATE_PREOP);
   514         ec_slave_request_state(slave, EC_SLAVE_STATE_PREOP);
   515 
   515 
       
   516         // don't try to set PREOP for slaves that don't respond,
       
   517         // because of 3 second timeout.
       
   518         if (!slave->online) {
       
   519             if (master->debug_level)
       
   520                 EC_DBG("Skipping to configure offline slave %i.\n",
       
   521                         slave->ring_position);
       
   522             continue;
       
   523         }
       
   524 
   516         ec_fsm_slave_start_conf(&fsm_slave, slave);
   525         ec_fsm_slave_start_conf(&fsm_slave, slave);
   517         while (ec_fsm_slave_exec(&fsm_slave)) {
   526         while (ec_fsm_slave_exec(&fsm_slave)) {
   518             ec_master_sync_io(master);
   527             ec_master_sync_io(master);
   519         }
   528         }
   520     }
   529     }