Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
gio.h
Go to the documentation of this file.
1 #ifndef __ASM_SH_LANDISK_GIO_H
2 #define __ASM_SH_LANDISK_GIO_H
3 
4 #include <linux/ioctl.h>
5 
6 /* version */
7 #define VERSION_STR "1.00"
8 
9 /* Driver name */
10 #define GIO_DRIVER_NAME "/dev/giodrv"
11 
12 /* Use 'k' as magic number */
13 #define GIODRV_IOC_MAGIC 'k'
14 
15 #define GIODRV_IOCRESET _IO(GIODRV_IOC_MAGIC, 0)
16 /*
17  * S means "Set" through a ptr,
18  * T means "Tell" directly
19  * G means "Get" (to a pointed var)
20  * Q means "Query", response is on the return value
21  * X means "eXchange": G and S atomically
22  * H means "sHift": T and Q atomically
23  */
24 #define GIODRV_IOCSGIODATA1 _IOW(GIODRV_IOC_MAGIC, 1, unsigned char *)
25 #define GIODRV_IOCGGIODATA1 _IOR(GIODRV_IOC_MAGIC, 2, unsigned char *)
26 #define GIODRV_IOCSGIODATA2 _IOW(GIODRV_IOC_MAGIC, 3, unsigned short *)
27 #define GIODRV_IOCGGIODATA2 _IOR(GIODRV_IOC_MAGIC, 4, unsigned short *)
28 #define GIODRV_IOCSGIODATA4 _IOW(GIODRV_IOC_MAGIC, 5, unsigned long *)
29 #define GIODRV_IOCGGIODATA4 _IOR(GIODRV_IOC_MAGIC, 6, unsigned long *)
30 #define GIODRV_IOCSGIOSETADDR _IOW(GIODRV_IOC_MAGIC, 7, unsigned long *)
31 #define GIODRV_IOCHARDRESET _IO(GIODRV_IOC_MAGIC, 8) /* debugging tool */
32 #define GIODRV_IOC_MAXNR 8
33 
34 #define GIO_READ 0x00000000
35 #define GIO_WRITE 0x00000001
36 
37 #endif /* __ASM_SH_LANDISK_GIO_H */