diff -r fc24e3b47731 -r a90b94337569 me8100.h --- a/me8100.h Wed Jan 16 15:54:58 2002 +0100 +++ b/me8100.h Wed Jan 16 20:29:27 2002 +0100 @@ -127,12 +127,15 @@ /*********************************************************/ /* Some definitions to be written to the CTRL register */ -#define ME8100_CTL_ENIO 0x80 -#define ME8100_CTL_SOURCE 0x10 -#define ME8100_CTL_SINK 0x00 +#define ME8100_CTRL_ENIO 0x80 +#define ME8100_CTRL_SOURCE 0x10 +#define ME8100_CTRL_SINK 0x00 -#define ME8100_CTL_IRQ_PATTERN 0x40 -#define ME8100_CTL_IRQ_MASK 0x60 +#define ME8100_CTRL_IRQ_PATTERN 0x40 +#define ME8100_CTRL_IRQ_MASK 0x60 + +#define ME8100_CTRL_REG 0x00 //( ,w) +#define ME8100_DO_REG 0x06 //( ,w) /* ME8100 Register Set A */ #define ME8100_ID_REG_A 0x00 //(r, ) @@ -187,6 +190,12 @@ #ifdef __KERNEL__ +struct me8100_subinfo { + unsigned int regbase; + unsigned short ctrl_reg; + int num_writer; +}; + typedef struct{ int board_count; /* index of the board after detection */ me8100_version_enum_type version; /* sort of board */ @@ -210,12 +219,13 @@ spinlock_t use_lock; /* Guards board in use */ struct file *file_ptr; /* Pointer to file structure of path */ struct fasync_struct *fasync_ptr; /* .hs */ + struct me8100_subinfo subinfo[2]; /* .hs */ } me8100_info_type; #endif /* __KERNEL__ */ /* ME8100 IOCTL's */ -#define ME8100_IOCTL_MAXNR 29 +#define ME8100_IOCTL_MAXNR 30 #define ME8100_MAGIC 'o' #define ME8100_READ_ID_A _IOR(ME8100_MAGIC, 0, unsigned short) #define ME8100_WRITE_CTRL_A _IOW(ME8100_MAGIC, 1, unsigned short) @@ -251,3 +261,8 @@ #define ME8100_GET_BOARD_INFO _IOR(ME8100_MAGIC, 28, me8100_info_type) #define ME8100_GET_INT_COUNT _IOR(ME8100_MAGIC, 29, me8100_int_occur_type) +#define ME8100_WRITE_DO _IOR(ME8100_MAGIC, 30, unsigned short) + +/* + * vim:sts=2 sw=2 aw ai sm: + */