- Kai Germaschewski: ISDN update (including Makefiles)
[davej-history.git] / include / linux / sisfb.h
blob2f5be64743ac336f062f8b8a8ea5dd5eb9600ba7
1 #ifndef _LINUX_SISFB
2 #define _LINUX_SISFB
4 /* CRT2 connection */
5 #define MASK_DISPTYPE_CRT2 0x04 /* Connect CRT2 */
6 #define MASK_DISPTYPE_LCD 0x02 /* Connect LCD */
7 #define MASK_DISPTYPE_TV 0x01 /* Connect TV */
8 #define MASK_DISPTYPE_DISP2 (MASK_DISPTYPE_LCD | MASK_DISPTYPE_TV | MASK_DISPTYPE_CRT2)
10 #define DISPTYPE_CRT1 0x00000008L
11 #define DISPTYPE_CRT2 0x00000004L
12 #define DISPTYPE_LCD 0x00000002L
13 #define DISPTYPE_TV 0x00000001L
14 #define DISPTYPE_DISP1 DISPTYPE_CRT1
15 #define DISPTYPE_DISP2 (DISPTYPE_CRT2 | DISPTYPE_LCD | DISPTYPE_TV)
16 #define DISPMODE_SINGLE 0x00000020L
17 #define DISPMODE_MIRROR 0x00000010L
18 #define DISPMODE_DUALVIEW 0x00000040L
20 #define HASVB_NONE 0
21 #define HASVB_301 1
22 #define HASVB_LVDS 2
23 #define HASVB_TRUMPION 3
24 #define HASVB_LVDS_CHRONTEL 4
25 #define HASVB_LVDS_ALL (HASVB_LVDS | HASVB_TRUMPION | HASVB_LVDS_CHRONTEL)
27 enum _TVMODE
29 TVMODE_NTSC = 0,
30 TVMODE_PAL,
31 TVMODE_HIVISION,
32 TVMODE_TOTAL
35 enum _TVPLUGTYPE
37 TVPLUG_UNKNOWN = 0,
38 TVPLUG_COMPOSITE,
39 TVPLUG_SVIDEO,
40 TVPLUG_SCART,
41 TVPLUG_TOTAL
44 enum CHIPTYPE
46 SiS_UNKNOWN = 0,
47 SiS_300,
48 SiS_540,
49 SiS_630,
50 SiS_630S,
51 SiS_730
54 struct sis_memreq
56 unsigned long offset;
57 unsigned long size;
60 /* Data for AP */
61 struct mode_info
63 int bpp;
64 int xres;
65 int yres;
66 int v_xres;
67 int v_yres;
68 int org_x;
69 int org_y;
70 unsigned int vrate;
73 struct ap_data
75 struct mode_info minfo;
76 unsigned long iobase;
77 unsigned int mem_size;
78 unsigned long disp_state;
79 enum CHIPTYPE chip;
83 /* Data for kernel */
84 struct video_info
86 /* card parameters */
87 int chip_id;
88 unsigned int video_size;
89 unsigned long video_base;
90 char *video_vbase;
91 unsigned long mmio_base;
92 char *mmio_vbase;
93 unsigned long vga_base;
95 /* mode */
96 int video_bpp;
97 int video_width;
98 int video_height;
99 int video_vwidth;
100 int video_vheight;
101 int org_x;
102 int org_y;
103 unsigned int refresh_rate;
105 /* VB functions */
106 unsigned long disp_state;
107 unsigned char hasVB;
108 unsigned char TV_type;
109 unsigned char TV_plug;
112 #ifdef __KERNEL__
113 extern struct video_info ivideo;
115 extern void sis_malloc(struct sis_memreq *req);
116 extern void sis_free(unsigned long base);
117 #endif
118 #endif