master/fsm_master.c
branchredundancy
changeset 2267 2d36f36a433c
parent 2120 7dd86c484192
child 2301 01e4381ebd09
equal deleted inserted replaced
2160:e3bf5adad75f 2267:2d36f36a433c
   205         fsm->slaves_responding = datagram->working_counter;
   205         fsm->slaves_responding = datagram->working_counter;
   206         EC_MASTER_INFO(master, "%u slave(s) responding.\n",
   206         EC_MASTER_INFO(master, "%u slave(s) responding.\n",
   207                 fsm->slaves_responding);
   207                 fsm->slaves_responding);
   208     }
   208     }
   209 
   209 
   210     if (fsm->link_state && !master->main_device.link_state) {
   210     if (fsm->link_state && !master->devices[EC_DEVICE_MAIN].link_state) {
   211         // link went down
   211         // link went down
   212         EC_MASTER_DBG(master, 1, "Master state machine detected "
   212         EC_MASTER_DBG(master, 1, "Master state machine detected "
   213                 "link down. Clearing slave list.\n");
   213                 "link down. Clearing slave list.\n");
   214 
   214 
   215 #ifdef EC_EOE
   215 #ifdef EC_EOE
   217         ec_master_clear_eoe_handlers(master);
   217         ec_master_clear_eoe_handlers(master);
   218 #endif
   218 #endif
   219         ec_master_clear_slaves(master);
   219         ec_master_clear_slaves(master);
   220         fsm->slave_states = 0x00;
   220         fsm->slave_states = 0x00;
   221     }
   221     }
   222     fsm->link_state = master->main_device.link_state;
   222     fsm->link_state = master->devices[EC_DEVICE_MAIN].link_state;
   223 
   223 
   224     if (datagram->state != EC_DATAGRAM_RECEIVED) {
   224     if (datagram->state != EC_DATAGRAM_RECEIVED) {
   225         ec_fsm_master_restart(fsm);
   225         ec_fsm_master_restart(fsm);
   226         return;
   226         return;
   227     }
   227     }