diff -r 4d8c9a441ef6 -r b544025bd696 master/ethernet.h --- a/master/ethernet.h Thu May 12 16:38:48 2011 +0200 +++ b/master/ethernet.h Thu May 12 16:45:02 2011 +0200 @@ -73,6 +73,7 @@ struct list_head list; /**< list item */ ec_slave_t *slave; /**< pointer to the corresponding slave */ ec_datagram_t datagram; /**< datagram */ + ec_mailbox_t mbox; /**< mailbox */ unsigned int queue_datagram; /**< the datagram is ready for queuing */ void (*state)(ec_eoe_t *); /**< state function for the state machine */ struct net_device *dev; /**< net_device for virtual ethernet device */ @@ -92,7 +93,7 @@ unsigned int tx_queue_size; /**< Transmit queue size. */ unsigned int tx_queue_active; /**< kernel netif queue started */ unsigned int tx_queued_frames; /**< number of frames in the queue */ - struct semaphore tx_queue_sem; /**< Semaphore for the send queue. */ + struct ec_mutex_t tx_queue_mutex; /**< Mutex for the send queue. */ ec_eoe_frame_t *tx_frame; /**< current TX frame */ uint8_t tx_frame_number; /**< number of the transmitted frame */ uint8_t tx_fragment_number; /**< number of the fragment */