--- a/master/master.h Tue Feb 13 13:36:31 2007 +0000
+++ b/master/master.h Tue Feb 13 13:42:37 2007 +0000
@@ -49,7 +49,7 @@
#include "device.h"
#include "domain.h"
-#include "fsm.h"
+#include "fsm_master.h"
/*****************************************************************************/
@@ -101,7 +101,8 @@
ec_device_t *device; /**< EtherCAT device */
struct semaphore device_sem; /**< device semaphore */
- ec_fsm_t fsm; /**< master state machine */
+ ec_fsm_master_t fsm; /**< master state machine */
+ ec_datagram_t fsm_datagram; /**< datagram used for state machines */
ec_master_mode_t mode; /**< master mode */
struct list_head slaves; /**< list of slaves on the bus */
@@ -115,8 +116,8 @@
int debug_level; /**< master debug level */
ec_stats_t stats; /**< cyclic statistics */
- struct workqueue_struct *workqueue; /**< master workqueue */
- struct work_struct idle_work; /**< free run work object */
+ int thread_id; /**< master thread PID */
+ struct completion thread_exit; /**< thread completion object */
uint32_t idle_cycle_times[HZ]; /**< Idle cycle times ring */
unsigned int idle_cycle_time_pos; /**< time ring buffer position */
@@ -168,10 +169,6 @@
void ec_master_destroy_slaves(ec_master_t *);
void ec_master_calc_addressing(ec_master_t *);
-// helper functions
-void ec_sync_config(const ec_sii_sync_t *, const ec_slave_t *, uint8_t *);
-void ec_fmmu_config(const ec_fmmu_t *, const ec_slave_t *, uint8_t *);
-
/*****************************************************************************/
#endif