Skip to content
Snippets Groups Projects
Commit 7b530c66 authored by Florian Pose's avatar Florian Pose
Browse files

Fixed blocking of EoE processing while entering or leaving operational mode.

parent f6f80a77
No related branches found
No related tags found
No related merge requests found
......@@ -394,7 +394,7 @@ int ec_master_enter_operation_mode(ec_master_t *master /**< EtherCAT master */)
ec_datagram_t *datagram = &master->fsm.datagram;
ec_master_eoe_stop(master); // stop EoE timer
master->eoe_checked = 0; // prevent from starting again by FSM
master->eoe_checked = 1; // prevent from starting again by FSM
master->mode = EC_MASTER_MODE_OPERATION;
while (!cancel_delayed_work(&master->idle_work)) {
......@@ -432,7 +432,7 @@ int ec_master_enter_operation_mode(ec_master_t *master /**< EtherCAT master */)
}
}
master->eoe_checked = 1; // allow starting EoE again
master->eoe_checked = 0; // allow starting EoE again
return 0;
......@@ -455,7 +455,7 @@ void ec_master_leave_operation_mode(ec_master_t *master
ec_datagram_t *datagram = &master->fsm.datagram;
ec_master_eoe_stop(master); // stop EoE timer
master->eoe_checked = 0; // prevent from starting again by FSM
master->eoe_checked = 1; // prevent from starting again by FSM
// wait for FSM datagram
if (datagram->state == EC_DATAGRAM_SENT) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment