Go to most recent revision | Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
54 | pj | 1 | #ifndef __SVGALIB_HELPER__ |
2 | #define __SVGALIB_HELPER__ |
||
3 | |||
4 | #ifdef __KERNEL__ |
||
5 | |||
6 | #define MAX_NR_DEVICES 15 |
||
7 | |||
8 | #define address_t unsigned long |
||
9 | |||
10 | struct sh_pci_device { |
||
11 | unsigned short vendor; |
||
12 | unsigned short id; |
||
13 | unsigned char revision; |
||
14 | struct pci_dev *dev; |
||
15 | address_t mem[6]; |
||
16 | address_t len[6]; |
||
17 | address_t mask[6]; |
||
18 | int flags[6]; |
||
19 | unsigned long iobase; |
||
20 | int (*test_vsync)(struct sh_pci_device *); |
||
21 | void (*ack_vsync)(struct sh_pci_device *); |
||
22 | void (*enable_vsync)(struct sh_pci_device *); |
||
23 | }; |
||
24 | |||
25 | #endif |
||
26 | |||
27 | typedef struct { |
||
28 | int port; |
||
29 | int length; |
||
30 | unsigned char* string; |
||
31 | } io_string_t; |
||
32 | |||
33 | typedef struct { |
||
34 | int port; |
||
35 | unsigned int val; |
||
36 | } io_t; |
||
37 | |||
38 | typedef struct { |
||
39 | int pcipos; |
||
40 | unsigned int address; |
||
41 | unsigned long val; |
||
42 | } pcic_t; |
||
43 | |||
44 | typedef struct { |
||
45 | void *win; |
||
46 | void *lfb; |
||
47 | } windowing_t; |
||
48 | |||
49 | #define SVGALIB_HELPER_IOC_MAGIC 0xB3 |
||
50 | |||
51 | #define SVGALIB_HELPER_IOCSOUTB _IOR(SVGALIB_HELPER_IOC_MAGIC,1,io_t) |
||
52 | #define SVGALIB_HELPER_IOCSOUTW _IOR(SVGALIB_HELPER_IOC_MAGIC,2,io_t) |
||
53 | #define SVGALIB_HELPER_IOCSOUTL _IOR(SVGALIB_HELPER_IOC_MAGIC,3,io_t) |
||
54 | #define SVGALIB_HELPER_IOCGINB _IOW(SVGALIB_HELPER_IOC_MAGIC,4,io_t) |
||
55 | #define SVGALIB_HELPER_IOCGINW _IOW(SVGALIB_HELPER_IOC_MAGIC,5,io_t) |
||
56 | #define SVGALIB_HELPER_IOCGINL _IOW(SVGALIB_HELPER_IOC_MAGIC,6,io_t) |
||
57 | |||
58 | #define SVGALIB_HELPER_IOCSPCIOUTB _IOR(SVGALIB_HELPER_IOC_MAGIC,11,pcic_t) |
||
59 | #define SVGALIB_HELPER_IOCSPCIOUTW _IOR(SVGALIB_HELPER_IOC_MAGIC,12,pcic_t) |
||
60 | #define SVGALIB_HELPER_IOCSPCIOUTL _IOR(SVGALIB_HELPER_IOC_MAGIC,13,pcic_t) |
||
61 | #define SVGALIB_HELPER_IOCGPCIINB _IOW(SVGALIB_HELPER_IOC_MAGIC,14,pcic_t) |
||
62 | #define SVGALIB_HELPER_IOCGPCIINW _IOW(SVGALIB_HELPER_IOC_MAGIC,15,pcic_t) |
||
63 | #define SVGALIB_HELPER_IOCGPCIINL _IOW(SVGALIB_HELPER_IOC_MAGIC,16,pcic_t) |
||
64 | #define SVGALIB_HELPER_IOCGPCIAPLEN _IOW(SVGALIB_HELPER_IOC_MAGIC,17,pcic_t) |
||
65 | |||
66 | #define SVGALIB_HELPER_IOCDVMA _IO(SVGALIB_HELPER_IOC_MAGIC,7) |
||
67 | #define SVGALIB_HELPER_IOCSWIND _IOR(SVGALIB_HELPER_IOC_MAGIC,8,windowing_t) |
||
68 | |||
69 | #define SVGALIB_HELPER_IOCIOPERM _IO(SVGALIB_HELPER_IOC_MAGIC,9) |
||
70 | #define SVGALIB_HELPER_IOCSREPOUTB _IOR(SVGALIB_HELPER_IOC_MAGIC,10,io_t) |
||
71 | |||
72 | #define SVGALIB_HELPER_IOCGI810GTT _IOW(SVGALIB_HELPER_IOC_MAGIC,128,unsigned int *) |
||
73 | #define SVGALIB_HELPER_IOCGI810GTTE _IOW(SVGALIB_HELPER_IOC_MAGIC,129,unsigned int *) |
||
74 | |||
75 | #define SVGALIB_HELPER_IOCSWRITEB _IOR(SVGALIB_HELPER_IOC_MAGIC,21,io_t) |
||
76 | #define SVGALIB_HELPER_IOCSWRITEW _IOR(SVGALIB_HELPER_IOC_MAGIC,22,io_t) |
||
77 | #define SVGALIB_HELPER_IOCSWRITEL _IOR(SVGALIB_HELPER_IOC_MAGIC,23,io_t) |
||
78 | #define SVGALIB_HELPER_IOCGREADB _IOW(SVGALIB_HELPER_IOC_MAGIC,24,io_t) |
||
79 | #define SVGALIB_HELPER_IOCGREADW _IOW(SVGALIB_HELPER_IOC_MAGIC,25,io_t) |
||
80 | #define SVGALIB_HELPER_IOCGREADL _IOW(SVGALIB_HELPER_IOC_MAGIC,26,io_t) |
||
81 | |||
82 | #define SVGALIB_HELPER_IOCWAITRETRACE _IO(SVGALIB_HELPER_IOC_MAGIC,31) |
||
83 | |||
84 | struct inode {}; |
||
85 | |||
86 | int svgalib_helper_ioctl( struct inode *inode, unsigned int cmd, unsigned long arg); |
||
87 | |||
88 | #endif |
||
89 | |||
90 |