Linux 4.2.1
[linux/fpc-iii.git] / drivers / staging / xgifb / XGIfb.h
blobaf50362395d5f3a3d7ebdacd57c6b564b62e8621
1 #ifndef _LINUX_XGIFB
2 #define _LINUX_XGIFB
3 #include "vgatypes.h"
4 #include "vb_struct.h"
6 enum xgifb_display_type {
7 XGIFB_DISP_NONE = 0,
8 XGIFB_DISP_CRT,
9 XGIFB_DISP_LCD,
10 XGIFB_DISP_TV,
13 #define HASVB_NONE 0x00
14 #define HASVB_301 0x01
15 #define HASVB_LVDS 0x02
16 #define HASVB_TRUMPION 0x04
17 #define HASVB_LVDS_CHRONTEL 0x10
18 #define HASVB_302 0x20
19 #define HASVB_CHRONTEL 0x80
21 enum XGI_CHIP_TYPE {
22 XG40 = 32,
23 XG42,
24 XG20 = 48,
25 XG21,
26 XG27,
29 enum xgi_tvtype {
30 TVMODE_NTSC = 0,
31 TVMODE_PAL,
32 TVMODE_HIVISION,
33 TVTYPE_PALM,
34 TVTYPE_PALN,
35 TVTYPE_NTSCJ,
36 TVMODE_TOTAL
39 enum xgi_tv_plug {
40 TVPLUG_UNKNOWN = 0,
41 TVPLUG_COMPOSITE = 1,
42 TVPLUG_SVIDEO = 2,
43 TVPLUG_COMPOSITE_AND_SVIDEO = 3,
44 TVPLUG_SCART = 4,
45 TVPLUG_YPBPR_525i = 5,
46 TVPLUG_YPBPR_525P = 6,
47 TVPLUG_YPBPR_750P = 7,
48 TVPLUG_YPBPR_1080i = 8,
49 TVPLUG_TOTAL
52 struct xgifb_video_info {
53 struct fb_info *fb_info;
54 struct xgi_hw_device_info hw_info;
55 struct vb_device_info dev_info;
57 int mode_idx;
58 int rate_idx;
60 u32 pseudo_palette[17];
62 int chip_id;
63 unsigned int video_size;
64 phys_addr_t video_base;
65 void __iomem *video_vbase;
66 phys_addr_t mmio_base;
67 unsigned long mmio_size;
68 void __iomem *mmio_vbase;
69 unsigned long vga_base;
70 int mtrr;
72 int video_bpp;
73 int video_cmap_len;
74 int video_width;
75 int video_height;
76 int video_vwidth;
77 int video_vheight;
78 int org_x;
79 int org_y;
80 int video_linelength;
81 unsigned int refresh_rate;
83 enum xgifb_display_type display2; /* the second display output type */
84 bool display2_force;
85 unsigned char hasVB;
86 unsigned char TV_type;
87 unsigned char TV_plug;
89 struct XGI21_LVDSCapStruct lvds_data;
91 enum XGI_CHIP_TYPE chip;
92 unsigned char revision_id;
94 unsigned short DstColor;
95 unsigned long XGI310_AccelDepth;
96 unsigned long CommandReg;
98 unsigned int pcibus;
99 unsigned int pcislot;
100 unsigned int pcifunc;
102 unsigned short subsysvendor;
103 unsigned short subsysdevice;
105 char reserved[236];
108 #endif