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