diff -r 582a90a34303 -r bc1de1362efb master/master.h --- a/master/master.h Fri Mar 16 13:39:19 2007 +0000 +++ b/master/master.h Fri Mar 16 14:00:12 2007 +0000 @@ -144,17 +144,18 @@ unsigned int idle_cycle_time_pos; /**< time ring buffer position */ struct timer_list eoe_timer; /**< EoE timer object */ + unsigned int eoe_running; /**< non-zero, if EoE processing is active. */ + struct list_head eoe_handlers; /**< Ethernet-over-EtherCAT handlers */ uint32_t eoe_cycle_times[HZ]; /**< EoE cycle times ring */ unsigned int eoe_cycle_time_pos; /**< time ring buffer position */ - unsigned int eoe_running; /**< non-zero, if EoE processing is active. */ - unsigned int eoe_checked; /**< non-zero, if EoE processing is not - necessary. */ - struct list_head eoe_handlers; /**< Ethernet-over-EtherCAT handlers */ spinlock_t internal_lock; /**< spinlock used in idle mode */ int (*request_cb)(void *); /**< lock request callback */ void (*release_cb)(void *); /**< lock release callback */ void *cb_data; /**< data parameter of locking callbacks */ + int (*ext_request_cb)(void *); /**< external lock request callback */ + void (*ext_release_cb)(void *); /**< externam lock release callback */ + void *ext_cb_data; /**< data parameter of external locking callbacks */ struct list_head eeprom_requests; /**< EEPROM write requests */ struct semaphore eeprom_sem; /**< semaphore protecting the list of @@ -192,6 +193,7 @@ // misc. void ec_master_output_stats(ec_master_t *); +void ec_master_clear_eoe_handlers(ec_master_t *); void ec_master_destroy_slaves(ec_master_t *); /*****************************************************************************/