--- a/master/fsm_slave_scan.c Wed Jun 02 14:27:04 2010 +0200
+++ b/master/fsm_slave_scan.c Wed Jun 02 14:32:24 2010 +0200
@@ -52,7 +52,9 @@
void ec_fsm_slave_scan_state_datalink(ec_fsm_slave_scan_t *);
void ec_fsm_slave_scan_state_sii_size(ec_fsm_slave_scan_t *);
void ec_fsm_slave_scan_state_sii_data(ec_fsm_slave_scan_t *);
+#ifdef EC_REGALIAS
void ec_fsm_slave_scan_state_regalias(ec_fsm_slave_scan_t *);
+#endif
void ec_fsm_slave_scan_state_preop(ec_fsm_slave_scan_t *);
void ec_fsm_slave_scan_state_sync(ec_fsm_slave_scan_t *);
void ec_fsm_slave_scan_state_pdos(ec_fsm_slave_scan_t *);
@@ -61,7 +63,9 @@
void ec_fsm_slave_scan_state_error(ec_fsm_slave_scan_t *);
void ec_fsm_slave_scan_enter_datalink(ec_fsm_slave_scan_t *);
+#ifdef EC_REGALIAS
void ec_fsm_slave_scan_enter_regalias(ec_fsm_slave_scan_t *);
+#endif
void ec_fsm_slave_scan_enter_preop(ec_fsm_slave_scan_t *);
void ec_fsm_slave_scan_enter_pdos(ec_fsm_slave_scan_t *);
@@ -694,7 +698,15 @@
}
}
+#ifdef EC_REGALIAS
ec_fsm_slave_scan_enter_regalias(fsm);
+#else
+ if (slave->sii.mailbox_protocols & EC_MBOX_COE) {
+ ec_fsm_slave_scan_enter_preop(fsm);
+ } else {
+ fsm->state = ec_fsm_slave_scan_state_end;
+ }
+#endif
return;
end:
@@ -703,13 +715,12 @@
fsm->state = ec_fsm_slave_scan_state_error;
}
-
-/*****************************************************************************/
-
-/**
- Slave scan entry function: REGALIAS.
-*/
-
+/*****************************************************************************/
+
+#ifdef EC_REGALIAS
+
+/** Slave scan entry function: REGALIAS.
+ */
void ec_fsm_slave_scan_enter_regalias(
ec_fsm_slave_scan_t *fsm /**< slave state machine */
)
@@ -727,9 +738,8 @@
/*****************************************************************************/
-/**
- Slave scan state: REGALIAS.
-*/
+/** Slave scan state: REGALIAS.
+ */
void ec_fsm_slave_scan_state_regalias(
ec_fsm_slave_scan_t *fsm /**< slave state machine */
)
@@ -754,6 +764,7 @@
EC_SLAVE_DBG(slave, 1, "Read alias %u from register.\n",
slave->effective_alias);
}
+
if (slave->sii.mailbox_protocols & EC_MBOX_COE) {
ec_fsm_slave_scan_enter_preop(fsm);
} else {
@@ -761,6 +772,8 @@
}
}
+#endif // defined EC_REGALIAS
+
/*****************************************************************************/
/** Enter slave scan state PREOP.