From a37b4b292dfd78f9ca9884d298f388e97e778593 Mon Sep 17 00:00:00 2001 From: Florian Pose Date: Fri, 9 Dec 2011 10:35:23 +0100 Subject: [PATCH] Improved resetting number of responding slaves. --- master/fsm_master.c | 2 ++ master/master.c | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/master/fsm_master.c b/master/fsm_master.c index e3eeff62..20c781b3 100644 --- a/master/fsm_master.c +++ b/master/fsm_master.c @@ -218,6 +218,8 @@ void ec_fsm_master_state_broadcast( #endif ec_master_clear_slaves(master); fsm->slave_states = 0x00; + fsm->slaves_responding = 0; /* reset to trigger rescan on next link + up. */ } fsm->link_state = master->main_device.link_state; diff --git a/master/master.c b/master/master.c index 5c040811..9c7d9e3b 100644 --- a/master/master.c +++ b/master/master.c @@ -549,6 +549,10 @@ int ec_master_enter_idle_phase( master->cb_data = master; master->phase = EC_IDLE; + + // reset number of responding slaves to trigger scanning + master->fsm.slaves_responding = 0; + ret = ec_master_thread_start(master, ec_master_idle_thread, "EtherCAT-IDLE"); if (ret)