master/master.h
changeset 441 ffa13db95e10
parent 430 74754f45d5fa
child 446 8fede404c01f
equal deleted inserted replaced
440:16fddae16c94 441:ffa13db95e10
    42 #define _EC_MASTER_H_
    42 #define _EC_MASTER_H_
    43 
    43 
    44 #include <linux/list.h>
    44 #include <linux/list.h>
    45 #include <linux/sysfs.h>
    45 #include <linux/sysfs.h>
    46 #include <linux/timer.h>
    46 #include <linux/timer.h>
    47 #include <linux/wait.h>
       
    48 #include <asm/atomic.h>
    47 #include <asm/atomic.h>
    49 #include <asm/semaphore.h>
    48 #include <asm/semaphore.h>
    50 
    49 
    51 #include "device.h"
    50 #include "device.h"
    52 #include "domain.h"
    51 #include "domain.h"
   137     void (*release_cb)(void *); /**< lock release callback */
   136     void (*release_cb)(void *); /**< lock release callback */
   138     void *cb_data; /**< data parameter of locking callbacks */
   137     void *cb_data; /**< data parameter of locking callbacks */
   139 
   138 
   140     uint8_t eeprom_write_enable; /**< allow write operations to EEPROMs */
   139     uint8_t eeprom_write_enable; /**< allow write operations to EEPROMs */
   141 
   140 
   142     struct list_head sdo_requests; /**< list of SDO read/write requests */
   141     ec_sdo_request_t *sdo_request; /**< pointer to the current SDO request */
   143     wait_queue_head_t sdo_wait_queue; /**< wait queue for SDO access */
   142     unsigned int sdo_seq_user; /**< sequence number for user space */
       
   143     unsigned int sdo_seq_master; /**< sequence number for master */
       
   144     struct semaphore sdo_sem; /**< SDO semaphore */
       
   145     struct timer_list sdo_timer; /**< timer for polling sdo processing */
       
   146     struct completion sdo_complete; /**< SDO request completion object */
   144 };
   147 };
   145 
   148 
   146 /*****************************************************************************/
   149 /*****************************************************************************/
   147 
   150 
   148 // master creation and deletion
   151 // master creation and deletion