--- a/master/fsm_slave_scan.c Thu Feb 19 15:19:29 2015 +0100
+++ b/master/fsm_slave_scan.c Fri Feb 20 16:06:23 2015 +0100
@@ -493,8 +493,6 @@
{
ec_datagram_t *datagram = fsm->datagram;
ec_slave_t *slave = fsm->slave;
- uint16_t dl_status;
- unsigned int i;
if (datagram->state == EC_DATAGRAM_TIMED_OUT && fsm->retries--)
return;
@@ -514,15 +512,7 @@
return;
}
- dl_status = EC_READ_U16(datagram->data);
- for (i = 0; i < EC_MAX_PORTS; i++) {
- slave->ports[i].link.link_up =
- dl_status & (1 << (4 + i)) ? 1 : 0;
- slave->ports[i].link.loop_closed =
- dl_status & (1 << (8 + i * 2)) ? 1 : 0;
- slave->ports[i].link.signal_detected =
- dl_status & (1 << (9 + i * 2)) ? 1 : 0;
- }
+ ec_slave_set_dl_status(slave, EC_READ_U16(datagram->data));
#ifdef EC_SII_ASSIGN
ec_fsm_slave_scan_enter_assign_sii(fsm);