master/fsm_master.h
changeset 830 d83d92e1a919
parent 814 a51f857b1b2d
child 847 92266462d411
--- a/master/fsm_master.h	Tue Feb 26 10:25:52 2008 +0000
+++ b/master/fsm_master.h	Tue Feb 26 13:20:32 2008 +0000
@@ -33,7 +33,7 @@
 
 /**
    \file
-   EtherCAT finite state machines.
+   EtherCAT master state machine.
 */
 
 /*****************************************************************************/
@@ -41,42 +41,35 @@
 #ifndef __EC_FSM_MASTER__
 #define __EC_FSM_MASTER__
 
+#include "../include/ecrt.h"
+
 #include "globals.h"
-#include "../include/ecrt.h"
 #include "datagram.h"
-//#include "slave.h"
 #include "canopen.h"
-
-#include "fsm_slave.h"
+#include "fsm_slave_config.h"
+#include "fsm_slave_scan.h"
 #include "fsm_coe_map.h"
 
 /*****************************************************************************/
 
-/**
- * EEPROM write request.
+/** EEPROM write request.
  */
-
-typedef struct
-{
+typedef struct {
     struct list_head list; /**< list head */
     ec_slave_t *slave; /**< EtherCAT slave */
     off_t word_offset; /**< SII address in words */
     size_t word_size; /**< data size in words */
     const uint8_t *data; /**< pointer to the data */
     ec_request_state_t state; /**< state of the request */
-}
-ec_eeprom_write_request_t;
+} ec_eeprom_write_request_t;
 
 /*****************************************************************************/
 
 typedef struct ec_fsm_master ec_fsm_master_t; /**< \see ec_fsm_master */
 
-/**
-   Finite state machine of an EtherCAT master.
-*/
-
-struct ec_fsm_master
-{
+/** Finite state machine of an EtherCAT master.
+ */
+struct ec_fsm_master {
     ec_master_t *master; /**< master the FSM runs on */
     ec_datagram_t *datagram; /**< datagram used in the state machine */
     unsigned int retries; /**< retries on datagram timeout. */
@@ -96,7 +89,8 @@
     off_t eeprom_index; /**< index to EEPROM write request data */
     ec_sdo_request_t *sdo_request; /**< Sdo request to process */
 
-    ec_fsm_slave_t fsm_slave; /**< slave state machine */
+    ec_fsm_slave_config_t fsm_slave_config; /**< slave state machine */
+    ec_fsm_slave_scan_t fsm_slave_scan; /**< slave state machine */
     ec_fsm_sii_t fsm_sii; /**< SII state machine */
     ec_fsm_change_t fsm_change; /**< State change state machine */
     ec_fsm_coe_t fsm_coe; /**< CoE state machine */