Commit | Line | Data |
---|---|---|
d7636e0b | 1 | #ifndef _LINUX_XGIFB |
2 | #define _LINUX_XGIFB | |
a17379e7 KT |
3 | #include <linux/ioctl.h> |
4 | #include <linux/types.h> | |
d7636e0b | 5 | |
f2df8c09 | 6 | #include "vb_struct.h" |
c62f2e46 AK |
7 | #include "vgatypes.h" |
8 | ||
289ea524 AK |
9 | enum xgifb_display_type { |
10 | XGIFB_DISP_NONE = 0, | |
11 | XGIFB_DISP_CRT, | |
12 | XGIFB_DISP_LCD, | |
13 | XGIFB_DISP_TV, | |
14 | }; | |
d7636e0b | 15 | |
a17379e7 KT |
16 | #define HASVB_NONE 0x00 |
17 | #define HASVB_301 0x01 | |
18 | #define HASVB_LVDS 0x02 | |
19 | #define HASVB_TRUMPION 0x04 | |
20 | #define HASVB_LVDS_CHRONTEL 0x10 | |
21 | #define HASVB_302 0x20 | |
a17379e7 | 22 | #define HASVB_CHRONTEL 0x80 |
d7636e0b | 23 | |
716083c6 | 24 | enum XGI_CHIP_TYPE { |
a17379e7 KT |
25 | XG40 = 32, |
26 | XG41, | |
27 | XG42, | |
28 | XG45, | |
29 | XG20 = 48, | |
30 | XG21, | |
31 | XG27, | |
716083c6 | 32 | }; |
d7636e0b | 33 | |
716083c6 | 34 | enum xgi_tvtype { |
d7636e0b | 35 | TVMODE_NTSC = 0, |
36 | TVMODE_PAL, | |
37 | TVMODE_HIVISION, | |
a17379e7 KT |
38 | TVTYPE_PALM, /* vicki@030226 */ |
39 | TVTYPE_PALN, /* vicki@030226 */ | |
40 | TVTYPE_NTSCJ, /* vicki@030226 */ | |
d7636e0b | 41 | TVMODE_TOTAL |
716083c6 | 42 | }; |
d7636e0b | 43 | |
a17379e7 | 44 | enum xgi_tv_plug { /* vicki@030226 */ |
a17379e7 KT |
45 | TVPLUG_UNKNOWN = 0, |
46 | TVPLUG_COMPOSITE = 1, | |
47 | TVPLUG_SVIDEO = 2, | |
48 | TVPLUG_COMPOSITE_AND_SVIDEO = 3, | |
49 | TVPLUG_SCART = 4, | |
50 | TVPLUG_YPBPR_525i = 5, | |
51 | TVPLUG_YPBPR_525P = 6, | |
52 | TVPLUG_YPBPR_750P = 7, | |
53 | TVPLUG_YPBPR_1080i = 8, | |
d7636e0b | 54 | TVPLUG_TOTAL |
a3e735a5 | 55 | }; |
d7636e0b | 56 | |
ab886ff8 | 57 | struct xgifb_video_info { |
19c1e88e | 58 | struct fb_info *fb_info; |
c62f2e46 | 59 | struct xgi_hw_device_info hw_info; |
f2df8c09 | 60 | struct vb_device_info dev_info; |
19c1e88e | 61 | |
ccf265ad | 62 | int mode_idx; |
5aa55d9f | 63 | int rate_idx; |
ccf265ad | 64 | |
76cabaa4 AK |
65 | u32 pseudo_palette[17]; |
66 | ||
a17379e7 KT |
67 | int chip_id; |
68 | unsigned int video_size; | |
69 | unsigned long video_base; | |
c44fa627 | 70 | void __iomem *video_vbase; |
a17379e7 | 71 | unsigned long mmio_base; |
1b3909e5 | 72 | unsigned long mmio_size; |
863c02af | 73 | void __iomem *mmio_vbase; |
a17379e7 KT |
74 | unsigned long vga_base; |
75 | unsigned long mtrr; | |
76 | ||
77 | int video_bpp; | |
78 | int video_cmap_len; | |
79 | int video_width; | |
80 | int video_height; | |
81 | int video_vwidth; | |
82 | int video_vheight; | |
83 | int org_x; | |
84 | int org_y; | |
85 | int video_linelength; | |
86 | unsigned int refresh_rate; | |
87 | ||
289ea524 | 88 | enum xgifb_display_type display2; /* the second display output type */ |
a17379e7 KT |
89 | unsigned char hasVB; |
90 | unsigned char TV_type; | |
91 | unsigned char TV_plug; | |
d7636e0b | 92 | |
716083c6 | 93 | enum XGI_CHIP_TYPE chip; |
a17379e7 | 94 | unsigned char revision_id; |
d7636e0b | 95 | |
a17379e7 KT |
96 | unsigned short DstColor; |
97 | unsigned long XGI310_AccelDepth; | |
98 | unsigned long CommandReg; | |
d7636e0b | 99 | |
a17379e7 KT |
100 | unsigned int pcibus; |
101 | unsigned int pcislot; | |
102 | unsigned int pcifunc; | |
d7636e0b | 103 | |
a17379e7 KT |
104 | unsigned short subsysvendor; |
105 | unsigned short subsysdevice; | |
d7636e0b | 106 | |
a17379e7 | 107 | char reserved[236]; |
d7636e0b | 108 | }; |
109 | ||
d7636e0b | 110 | #endif |