Subversion Repositories shark

Rev

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