Commit b889fcf63cb62e7fdb7816565e28f44dbe4a76a5
1 parent
1800098549
Exists in
smarc-l5.0.0_1.0.0-ga
and in
5 other branches
UAPI: (Scripted) Disintegrate include/video
Signed-off-by: David Howells <dhowells@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Michael Kerrisk <mtk.manpages@gmail.com> Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Acked-by: Dave Jones <davej@redhat.com>
Showing 8 changed files with 284 additions and 254 deletions Side-by-side Diff
include/uapi/video/Kbuild
include/uapi/video/edid.h
include/uapi/video/sisfb.h
1 | +/* | |
2 | + * sisfb.h - definitions for the SiS framebuffer driver | |
3 | + * | |
4 | + * Copyright (C) 2001-2005 by Thomas Winischhofer, Vienna, Austria. | |
5 | + * | |
6 | + * This program is free software; you can redistribute it and/or modify | |
7 | + * it under the terms of the GNU General Public License as published by | |
8 | + * the Free Software Foundation; either version 2 of the named License, | |
9 | + * or any later version. | |
10 | + * | |
11 | + * This program is distributed in the hope that it will be useful, | |
12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 | + * GNU General Public License for more details. | |
15 | + * | |
16 | + * You should have received a copy of the GNU General Public License | |
17 | + * along with this program; if not, write to the Free Software | |
18 | + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA | |
19 | + */ | |
20 | + | |
21 | +#ifndef _UAPI_LINUX_SISFB_H_ | |
22 | +#define _UAPI_LINUX_SISFB_H_ | |
23 | + | |
24 | +#include <linux/types.h> | |
25 | +#include <asm/ioctl.h> | |
26 | + | |
27 | +/**********************************************/ | |
28 | +/* PUBLIC */ | |
29 | +/**********************************************/ | |
30 | + | |
31 | +/* vbflags, public (others in sis.h) */ | |
32 | +#define CRT2_DEFAULT 0x00000001 | |
33 | +#define CRT2_LCD 0x00000002 | |
34 | +#define CRT2_TV 0x00000004 | |
35 | +#define CRT2_VGA 0x00000008 | |
36 | +#define TV_NTSC 0x00000010 | |
37 | +#define TV_PAL 0x00000020 | |
38 | +#define TV_HIVISION 0x00000040 | |
39 | +#define TV_YPBPR 0x00000080 | |
40 | +#define TV_AVIDEO 0x00000100 | |
41 | +#define TV_SVIDEO 0x00000200 | |
42 | +#define TV_SCART 0x00000400 | |
43 | +#define TV_PALM 0x00001000 | |
44 | +#define TV_PALN 0x00002000 | |
45 | +#define TV_NTSCJ 0x00001000 | |
46 | +#define TV_CHSCART 0x00008000 | |
47 | +#define TV_CHYPBPR525I 0x00010000 | |
48 | +#define CRT1_VGA 0x00000000 | |
49 | +#define CRT1_LCDA 0x00020000 | |
50 | +#define VGA2_CONNECTED 0x00040000 | |
51 | +#define VB_DISPTYPE_CRT1 0x00080000 /* CRT1 connected and used */ | |
52 | +#define VB_SINGLE_MODE 0x20000000 /* CRT1 or CRT2; determined by DISPTYPE_CRTx */ | |
53 | +#define VB_MIRROR_MODE 0x40000000 /* CRT1 + CRT2 identical (mirror mode) */ | |
54 | +#define VB_DUALVIEW_MODE 0x80000000 /* CRT1 + CRT2 independent (dual head mode) */ | |
55 | + | |
56 | +/* Aliases: */ | |
57 | +#define CRT2_ENABLE (CRT2_LCD | CRT2_TV | CRT2_VGA) | |
58 | +#define TV_STANDARD (TV_NTSC | TV_PAL | TV_PALM | TV_PALN | TV_NTSCJ) | |
59 | +#define TV_INTERFACE (TV_AVIDEO|TV_SVIDEO|TV_SCART|TV_HIVISION|TV_YPBPR|TV_CHSCART|TV_CHYPBPR525I) | |
60 | + | |
61 | +/* Only if TV_YPBPR is set: */ | |
62 | +#define TV_YPBPR525I TV_NTSC | |
63 | +#define TV_YPBPR525P TV_PAL | |
64 | +#define TV_YPBPR750P TV_PALM | |
65 | +#define TV_YPBPR1080I TV_PALN | |
66 | +#define TV_YPBPRALL (TV_YPBPR525I | TV_YPBPR525P | TV_YPBPR750P | TV_YPBPR1080I) | |
67 | + | |
68 | +#define VB_DISPTYPE_DISP2 CRT2_ENABLE | |
69 | +#define VB_DISPTYPE_CRT2 CRT2_ENABLE | |
70 | +#define VB_DISPTYPE_DISP1 VB_DISPTYPE_CRT1 | |
71 | +#define VB_DISPMODE_SINGLE VB_SINGLE_MODE | |
72 | +#define VB_DISPMODE_MIRROR VB_MIRROR_MODE | |
73 | +#define VB_DISPMODE_DUAL VB_DUALVIEW_MODE | |
74 | +#define VB_DISPLAY_MODE (SINGLE_MODE | MIRROR_MODE | DUALVIEW_MODE) | |
75 | + | |
76 | +/* Structure argument for SISFB_GET_INFO ioctl */ | |
77 | +struct sisfb_info { | |
78 | + __u32 sisfb_id; /* for identifying sisfb */ | |
79 | +#ifndef SISFB_ID | |
80 | +#define SISFB_ID 0x53495346 /* Identify myself with 'SISF' */ | |
81 | +#endif | |
82 | + __u32 chip_id; /* PCI-ID of detected chip */ | |
83 | + __u32 memory; /* total video memory in KB */ | |
84 | + __u32 heapstart; /* heap start offset in KB */ | |
85 | + __u8 fbvidmode; /* current sisfb mode */ | |
86 | + | |
87 | + __u8 sisfb_version; | |
88 | + __u8 sisfb_revision; | |
89 | + __u8 sisfb_patchlevel; | |
90 | + | |
91 | + __u8 sisfb_caps; /* sisfb capabilities */ | |
92 | + | |
93 | + __u32 sisfb_tqlen; /* turbo queue length (in KB) */ | |
94 | + | |
95 | + __u32 sisfb_pcibus; /* The card's PCI ID */ | |
96 | + __u32 sisfb_pcislot; | |
97 | + __u32 sisfb_pcifunc; | |
98 | + | |
99 | + __u8 sisfb_lcdpdc; /* PanelDelayCompensation */ | |
100 | + | |
101 | + __u8 sisfb_lcda; /* Detected status of LCDA for low res/text modes */ | |
102 | + | |
103 | + __u32 sisfb_vbflags; | |
104 | + __u32 sisfb_currentvbflags; | |
105 | + | |
106 | + __u32 sisfb_scalelcd; | |
107 | + __u32 sisfb_specialtiming; | |
108 | + | |
109 | + __u8 sisfb_haveemi; | |
110 | + __u8 sisfb_emi30,sisfb_emi31,sisfb_emi32,sisfb_emi33; | |
111 | + __u8 sisfb_haveemilcd; | |
112 | + | |
113 | + __u8 sisfb_lcdpdca; /* PanelDelayCompensation for LCD-via-CRT1 */ | |
114 | + | |
115 | + __u16 sisfb_tvxpos, sisfb_tvypos; /* Warning: Values + 32 ! */ | |
116 | + | |
117 | + __u32 sisfb_heapsize; /* heap size (in KB) */ | |
118 | + __u32 sisfb_videooffset; /* Offset of viewport in video memory (in bytes) */ | |
119 | + | |
120 | + __u32 sisfb_curfstn; /* currently running FSTN/DSTN mode */ | |
121 | + __u32 sisfb_curdstn; | |
122 | + | |
123 | + __u16 sisfb_pci_vendor; /* PCI vendor (SiS or XGI) */ | |
124 | + | |
125 | + __u32 sisfb_vbflags2; /* ivideo->vbflags2 */ | |
126 | + | |
127 | + __u8 sisfb_can_post; /* sisfb can POST this card */ | |
128 | + __u8 sisfb_card_posted; /* card is POSTED */ | |
129 | + __u8 sisfb_was_boot_device; /* This card was the boot video device (ie is primary) */ | |
130 | + | |
131 | + __u8 reserved[183]; /* for future use */ | |
132 | +}; | |
133 | + | |
134 | +#define SISFB_CMD_GETVBFLAGS 0x55AA0001 /* no arg; result[1] = vbflags */ | |
135 | +#define SISFB_CMD_SWITCHCRT1 0x55AA0010 /* arg[0]: 99 = query, 0 = off, 1 = on */ | |
136 | +/* more to come */ | |
137 | + | |
138 | +#define SISFB_CMD_ERR_OK 0x80000000 /* command succeeded */ | |
139 | +#define SISFB_CMD_ERR_LOCKED 0x80000001 /* sisfb is locked */ | |
140 | +#define SISFB_CMD_ERR_EARLY 0x80000002 /* request before sisfb took over gfx system */ | |
141 | +#define SISFB_CMD_ERR_NOVB 0x80000003 /* No video bridge */ | |
142 | +#define SISFB_CMD_ERR_NOCRT2 0x80000004 /* can't change CRT1 status, CRT2 disabled */ | |
143 | +/* more to come */ | |
144 | +#define SISFB_CMD_ERR_UNKNOWN 0x8000ffff /* Unknown command */ | |
145 | +#define SISFB_CMD_ERR_OTHER 0x80010000 /* Other error */ | |
146 | + | |
147 | +/* Argument for SISFB_CMD ioctl */ | |
148 | +struct sisfb_cmd { | |
149 | + __u32 sisfb_cmd; | |
150 | + __u32 sisfb_arg[16]; | |
151 | + __u32 sisfb_result[4]; | |
152 | +}; | |
153 | + | |
154 | +/* Additional IOCTLs for communication sisfb <> X driver */ | |
155 | +/* If changing this, vgatypes.h must also be changed (for X driver) */ | |
156 | + | |
157 | +/* ioctl for identifying and giving some info (esp. memory heap start) */ | |
158 | +#define SISFB_GET_INFO_SIZE _IOR(0xF3,0x00,__u32) | |
159 | +#define SISFB_GET_INFO _IOR(0xF3,0x01,struct sisfb_info) | |
160 | + | |
161 | +/* ioctrl to get current vertical retrace status */ | |
162 | +#define SISFB_GET_VBRSTATUS _IOR(0xF3,0x02,__u32) | |
163 | + | |
164 | +/* ioctl to enable/disable panning auto-maximize (like nomax parameter) */ | |
165 | +#define SISFB_GET_AUTOMAXIMIZE _IOR(0xF3,0x03,__u32) | |
166 | +#define SISFB_SET_AUTOMAXIMIZE _IOW(0xF3,0x03,__u32) | |
167 | + | |
168 | +/* ioctls to relocate TV output (x=D[31:16], y=D[15:0], + 32)*/ | |
169 | +#define SISFB_GET_TVPOSOFFSET _IOR(0xF3,0x04,__u32) | |
170 | +#define SISFB_SET_TVPOSOFFSET _IOW(0xF3,0x04,__u32) | |
171 | + | |
172 | +/* ioctl for internal sisfb commands (sisfbctrl) */ | |
173 | +#define SISFB_COMMAND _IOWR(0xF3,0x05,struct sisfb_cmd) | |
174 | + | |
175 | +/* ioctl for locking sisfb (no register access during lock) */ | |
176 | +/* As of now, only used to avoid register access during | |
177 | + * the ioctls listed above. | |
178 | + */ | |
179 | +#define SISFB_SET_LOCK _IOW(0xF3,0x06,__u32) | |
180 | + | |
181 | +/* ioctls 0xF3 up to 0x3F reserved for sisfb */ | |
182 | + | |
183 | +/****************************************************************/ | |
184 | +/* The following are deprecated and should not be used anymore: */ | |
185 | +/****************************************************************/ | |
186 | +/* ioctl for identifying and giving some info (esp. memory heap start) */ | |
187 | +#define SISFB_GET_INFO_OLD _IOR('n',0xF8,__u32) | |
188 | +/* ioctrl to get current vertical retrace status */ | |
189 | +#define SISFB_GET_VBRSTATUS_OLD _IOR('n',0xF9,__u32) | |
190 | +/* ioctl to enable/disable panning auto-maximize (like nomax parameter) */ | |
191 | +#define SISFB_GET_AUTOMAXIMIZE_OLD _IOR('n',0xFA,__u32) | |
192 | +#define SISFB_SET_AUTOMAXIMIZE_OLD _IOW('n',0xFA,__u32) | |
193 | +/****************************************************************/ | |
194 | +/* End of deprecated ioctl numbers */ | |
195 | +/****************************************************************/ | |
196 | + | |
197 | +/* For fb memory manager (FBIO_ALLOC, FBIO_FREE) */ | |
198 | +struct sis_memreq { | |
199 | + __u32 offset; | |
200 | + __u32 size; | |
201 | +}; | |
202 | + | |
203 | +/**********************************************/ | |
204 | +/* PRIVATE */ | |
205 | +/* (for IN-KERNEL usage only) */ | |
206 | +/**********************************************/ | |
207 | + | |
208 | + | |
209 | +#endif /* _UAPI_LINUX_SISFB_H_ */ |
include/uapi/video/uvesafb.h
1 | +#ifndef _UAPI_UVESAFB_H | |
2 | +#define _UAPI_UVESAFB_H | |
3 | + | |
4 | +#include <linux/types.h> | |
5 | + | |
6 | +struct v86_regs { | |
7 | + __u32 ebx; | |
8 | + __u32 ecx; | |
9 | + __u32 edx; | |
10 | + __u32 esi; | |
11 | + __u32 edi; | |
12 | + __u32 ebp; | |
13 | + __u32 eax; | |
14 | + __u32 eip; | |
15 | + __u32 eflags; | |
16 | + __u32 esp; | |
17 | + __u16 cs; | |
18 | + __u16 ss; | |
19 | + __u16 es; | |
20 | + __u16 ds; | |
21 | + __u16 fs; | |
22 | + __u16 gs; | |
23 | +}; | |
24 | + | |
25 | +/* Task flags */ | |
26 | +#define TF_VBEIB 0x01 | |
27 | +#define TF_BUF_ESDI 0x02 | |
28 | +#define TF_BUF_ESBX 0x04 | |
29 | +#define TF_BUF_RET 0x08 | |
30 | +#define TF_EXIT 0x10 | |
31 | + | |
32 | +struct uvesafb_task { | |
33 | + __u8 flags; | |
34 | + int buf_len; | |
35 | + struct v86_regs regs; | |
36 | +}; | |
37 | + | |
38 | +/* Constants for the capabilities field | |
39 | + * in vbe_ib */ | |
40 | +#define VBE_CAP_CAN_SWITCH_DAC 0x01 | |
41 | +#define VBE_CAP_VGACOMPAT 0x02 | |
42 | + | |
43 | +/* The VBE Info Block */ | |
44 | +struct vbe_ib { | |
45 | + char vbe_signature[4]; | |
46 | + __u16 vbe_version; | |
47 | + __u32 oem_string_ptr; | |
48 | + __u32 capabilities; | |
49 | + __u32 mode_list_ptr; | |
50 | + __u16 total_memory; | |
51 | + __u16 oem_software_rev; | |
52 | + __u32 oem_vendor_name_ptr; | |
53 | + __u32 oem_product_name_ptr; | |
54 | + __u32 oem_product_rev_ptr; | |
55 | + __u8 reserved[222]; | |
56 | + char oem_data[256]; | |
57 | + char misc_data[512]; | |
58 | +} __attribute__ ((packed)); | |
59 | + | |
60 | +#endif /* _UAPI_UVESAFB_H */ |
include/video/Kbuild
include/video/edid.h
1 | 1 | #ifndef __linux_video_edid_h__ |
2 | 2 | #define __linux_video_edid_h__ |
3 | 3 | |
4 | -struct edid_info { | |
5 | - unsigned char dummy[128]; | |
6 | -}; | |
4 | +#include <uapi/video/edid.h> | |
7 | 5 | |
8 | -#ifdef __KERNEL__ | |
9 | 6 | #ifdef CONFIG_X86 |
10 | 7 | extern struct edid_info edid_info; |
11 | 8 | #endif |
12 | -#endif | |
13 | - | |
14 | 9 | #endif /* __linux_video_edid_h__ */ |
include/video/sisfb.h
... | ... | @@ -17,197 +17,12 @@ |
17 | 17 | * along with this program; if not, write to the Free Software |
18 | 18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA |
19 | 19 | */ |
20 | - | |
21 | 20 | #ifndef _LINUX_SISFB_H_ |
22 | 21 | #define _LINUX_SISFB_H_ |
23 | 22 | |
24 | -#include <linux/types.h> | |
25 | -#include <asm/ioctl.h> | |
26 | 23 | |
27 | -/**********************************************/ | |
28 | -/* PUBLIC */ | |
29 | -/**********************************************/ | |
30 | - | |
31 | -/* vbflags, public (others in sis.h) */ | |
32 | -#define CRT2_DEFAULT 0x00000001 | |
33 | -#define CRT2_LCD 0x00000002 | |
34 | -#define CRT2_TV 0x00000004 | |
35 | -#define CRT2_VGA 0x00000008 | |
36 | -#define TV_NTSC 0x00000010 | |
37 | -#define TV_PAL 0x00000020 | |
38 | -#define TV_HIVISION 0x00000040 | |
39 | -#define TV_YPBPR 0x00000080 | |
40 | -#define TV_AVIDEO 0x00000100 | |
41 | -#define TV_SVIDEO 0x00000200 | |
42 | -#define TV_SCART 0x00000400 | |
43 | -#define TV_PALM 0x00001000 | |
44 | -#define TV_PALN 0x00002000 | |
45 | -#define TV_NTSCJ 0x00001000 | |
46 | -#define TV_CHSCART 0x00008000 | |
47 | -#define TV_CHYPBPR525I 0x00010000 | |
48 | -#define CRT1_VGA 0x00000000 | |
49 | -#define CRT1_LCDA 0x00020000 | |
50 | -#define VGA2_CONNECTED 0x00040000 | |
51 | -#define VB_DISPTYPE_CRT1 0x00080000 /* CRT1 connected and used */ | |
52 | -#define VB_SINGLE_MODE 0x20000000 /* CRT1 or CRT2; determined by DISPTYPE_CRTx */ | |
53 | -#define VB_MIRROR_MODE 0x40000000 /* CRT1 + CRT2 identical (mirror mode) */ | |
54 | -#define VB_DUALVIEW_MODE 0x80000000 /* CRT1 + CRT2 independent (dual head mode) */ | |
55 | - | |
56 | -/* Aliases: */ | |
57 | -#define CRT2_ENABLE (CRT2_LCD | CRT2_TV | CRT2_VGA) | |
58 | -#define TV_STANDARD (TV_NTSC | TV_PAL | TV_PALM | TV_PALN | TV_NTSCJ) | |
59 | -#define TV_INTERFACE (TV_AVIDEO|TV_SVIDEO|TV_SCART|TV_HIVISION|TV_YPBPR|TV_CHSCART|TV_CHYPBPR525I) | |
60 | - | |
61 | -/* Only if TV_YPBPR is set: */ | |
62 | -#define TV_YPBPR525I TV_NTSC | |
63 | -#define TV_YPBPR525P TV_PAL | |
64 | -#define TV_YPBPR750P TV_PALM | |
65 | -#define TV_YPBPR1080I TV_PALN | |
66 | -#define TV_YPBPRALL (TV_YPBPR525I | TV_YPBPR525P | TV_YPBPR750P | TV_YPBPR1080I) | |
67 | - | |
68 | -#define VB_DISPTYPE_DISP2 CRT2_ENABLE | |
69 | -#define VB_DISPTYPE_CRT2 CRT2_ENABLE | |
70 | -#define VB_DISPTYPE_DISP1 VB_DISPTYPE_CRT1 | |
71 | -#define VB_DISPMODE_SINGLE VB_SINGLE_MODE | |
72 | -#define VB_DISPMODE_MIRROR VB_MIRROR_MODE | |
73 | -#define VB_DISPMODE_DUAL VB_DUALVIEW_MODE | |
74 | -#define VB_DISPLAY_MODE (SINGLE_MODE | MIRROR_MODE | DUALVIEW_MODE) | |
75 | - | |
76 | -/* Structure argument for SISFB_GET_INFO ioctl */ | |
77 | -struct sisfb_info { | |
78 | - __u32 sisfb_id; /* for identifying sisfb */ | |
79 | -#ifndef SISFB_ID | |
80 | -#define SISFB_ID 0x53495346 /* Identify myself with 'SISF' */ | |
81 | -#endif | |
82 | - __u32 chip_id; /* PCI-ID of detected chip */ | |
83 | - __u32 memory; /* total video memory in KB */ | |
84 | - __u32 heapstart; /* heap start offset in KB */ | |
85 | - __u8 fbvidmode; /* current sisfb mode */ | |
86 | - | |
87 | - __u8 sisfb_version; | |
88 | - __u8 sisfb_revision; | |
89 | - __u8 sisfb_patchlevel; | |
90 | - | |
91 | - __u8 sisfb_caps; /* sisfb capabilities */ | |
92 | - | |
93 | - __u32 sisfb_tqlen; /* turbo queue length (in KB) */ | |
94 | - | |
95 | - __u32 sisfb_pcibus; /* The card's PCI ID */ | |
96 | - __u32 sisfb_pcislot; | |
97 | - __u32 sisfb_pcifunc; | |
98 | - | |
99 | - __u8 sisfb_lcdpdc; /* PanelDelayCompensation */ | |
100 | - | |
101 | - __u8 sisfb_lcda; /* Detected status of LCDA for low res/text modes */ | |
102 | - | |
103 | - __u32 sisfb_vbflags; | |
104 | - __u32 sisfb_currentvbflags; | |
105 | - | |
106 | - __u32 sisfb_scalelcd; | |
107 | - __u32 sisfb_specialtiming; | |
108 | - | |
109 | - __u8 sisfb_haveemi; | |
110 | - __u8 sisfb_emi30,sisfb_emi31,sisfb_emi32,sisfb_emi33; | |
111 | - __u8 sisfb_haveemilcd; | |
112 | - | |
113 | - __u8 sisfb_lcdpdca; /* PanelDelayCompensation for LCD-via-CRT1 */ | |
114 | - | |
115 | - __u16 sisfb_tvxpos, sisfb_tvypos; /* Warning: Values + 32 ! */ | |
116 | - | |
117 | - __u32 sisfb_heapsize; /* heap size (in KB) */ | |
118 | - __u32 sisfb_videooffset; /* Offset of viewport in video memory (in bytes) */ | |
119 | - | |
120 | - __u32 sisfb_curfstn; /* currently running FSTN/DSTN mode */ | |
121 | - __u32 sisfb_curdstn; | |
122 | - | |
123 | - __u16 sisfb_pci_vendor; /* PCI vendor (SiS or XGI) */ | |
124 | - | |
125 | - __u32 sisfb_vbflags2; /* ivideo->vbflags2 */ | |
126 | - | |
127 | - __u8 sisfb_can_post; /* sisfb can POST this card */ | |
128 | - __u8 sisfb_card_posted; /* card is POSTED */ | |
129 | - __u8 sisfb_was_boot_device; /* This card was the boot video device (ie is primary) */ | |
130 | - | |
131 | - __u8 reserved[183]; /* for future use */ | |
132 | -}; | |
133 | - | |
134 | -#define SISFB_CMD_GETVBFLAGS 0x55AA0001 /* no arg; result[1] = vbflags */ | |
135 | -#define SISFB_CMD_SWITCHCRT1 0x55AA0010 /* arg[0]: 99 = query, 0 = off, 1 = on */ | |
136 | -/* more to come */ | |
137 | - | |
138 | -#define SISFB_CMD_ERR_OK 0x80000000 /* command succeeded */ | |
139 | -#define SISFB_CMD_ERR_LOCKED 0x80000001 /* sisfb is locked */ | |
140 | -#define SISFB_CMD_ERR_EARLY 0x80000002 /* request before sisfb took over gfx system */ | |
141 | -#define SISFB_CMD_ERR_NOVB 0x80000003 /* No video bridge */ | |
142 | -#define SISFB_CMD_ERR_NOCRT2 0x80000004 /* can't change CRT1 status, CRT2 disabled */ | |
143 | -/* more to come */ | |
144 | -#define SISFB_CMD_ERR_UNKNOWN 0x8000ffff /* Unknown command */ | |
145 | -#define SISFB_CMD_ERR_OTHER 0x80010000 /* Other error */ | |
146 | - | |
147 | -/* Argument for SISFB_CMD ioctl */ | |
148 | -struct sisfb_cmd { | |
149 | - __u32 sisfb_cmd; | |
150 | - __u32 sisfb_arg[16]; | |
151 | - __u32 sisfb_result[4]; | |
152 | -}; | |
153 | - | |
154 | -/* Additional IOCTLs for communication sisfb <> X driver */ | |
155 | -/* If changing this, vgatypes.h must also be changed (for X driver) */ | |
156 | - | |
157 | -/* ioctl for identifying and giving some info (esp. memory heap start) */ | |
158 | -#define SISFB_GET_INFO_SIZE _IOR(0xF3,0x00,__u32) | |
159 | -#define SISFB_GET_INFO _IOR(0xF3,0x01,struct sisfb_info) | |
160 | - | |
161 | -/* ioctrl to get current vertical retrace status */ | |
162 | -#define SISFB_GET_VBRSTATUS _IOR(0xF3,0x02,__u32) | |
163 | - | |
164 | -/* ioctl to enable/disable panning auto-maximize (like nomax parameter) */ | |
165 | -#define SISFB_GET_AUTOMAXIMIZE _IOR(0xF3,0x03,__u32) | |
166 | -#define SISFB_SET_AUTOMAXIMIZE _IOW(0xF3,0x03,__u32) | |
167 | - | |
168 | -/* ioctls to relocate TV output (x=D[31:16], y=D[15:0], + 32)*/ | |
169 | -#define SISFB_GET_TVPOSOFFSET _IOR(0xF3,0x04,__u32) | |
170 | -#define SISFB_SET_TVPOSOFFSET _IOW(0xF3,0x04,__u32) | |
171 | - | |
172 | -/* ioctl for internal sisfb commands (sisfbctrl) */ | |
173 | -#define SISFB_COMMAND _IOWR(0xF3,0x05,struct sisfb_cmd) | |
174 | - | |
175 | -/* ioctl for locking sisfb (no register access during lock) */ | |
176 | -/* As of now, only used to avoid register access during | |
177 | - * the ioctls listed above. | |
178 | - */ | |
179 | -#define SISFB_SET_LOCK _IOW(0xF3,0x06,__u32) | |
180 | - | |
181 | -/* ioctls 0xF3 up to 0x3F reserved for sisfb */ | |
182 | - | |
183 | -/****************************************************************/ | |
184 | -/* The following are deprecated and should not be used anymore: */ | |
185 | -/****************************************************************/ | |
186 | -/* ioctl for identifying and giving some info (esp. memory heap start) */ | |
187 | -#define SISFB_GET_INFO_OLD _IOR('n',0xF8,__u32) | |
188 | -/* ioctrl to get current vertical retrace status */ | |
189 | -#define SISFB_GET_VBRSTATUS_OLD _IOR('n',0xF9,__u32) | |
190 | -/* ioctl to enable/disable panning auto-maximize (like nomax parameter) */ | |
191 | -#define SISFB_GET_AUTOMAXIMIZE_OLD _IOR('n',0xFA,__u32) | |
192 | -#define SISFB_SET_AUTOMAXIMIZE_OLD _IOW('n',0xFA,__u32) | |
193 | -/****************************************************************/ | |
194 | -/* End of deprecated ioctl numbers */ | |
195 | -/****************************************************************/ | |
196 | - | |
197 | -/* For fb memory manager (FBIO_ALLOC, FBIO_FREE) */ | |
198 | -struct sis_memreq { | |
199 | - __u32 offset; | |
200 | - __u32 size; | |
201 | -}; | |
202 | - | |
203 | -/**********************************************/ | |
204 | -/* PRIVATE */ | |
205 | -/* (for IN-KERNEL usage only) */ | |
206 | -/**********************************************/ | |
207 | - | |
208 | -#ifdef __KERNEL__ | |
209 | - | |
210 | 24 | #include <linux/pci.h> |
25 | +#include <uapi/video/sisfb.h> | |
211 | 26 | |
212 | 27 | #define UNKNOWN_VGA 0 |
213 | 28 | #define SIS_300_VGA 1 |
... | ... | @@ -219,7 +34,5 @@ |
219 | 34 | |
220 | 35 | extern void sis_free(u32 base); |
221 | 36 | extern void sis_free_new(struct pci_dev *pdev, u32 base); |
222 | -#endif | |
223 | - | |
224 | 37 | #endif |
include/video/uvesafb.h
1 | 1 | #ifndef _UVESAFB_H |
2 | 2 | #define _UVESAFB_H |
3 | 3 | |
4 | -#include <linux/types.h> | |
4 | +#include <uapi/video/uvesafb.h> | |
5 | 5 | |
6 | -struct v86_regs { | |
7 | - __u32 ebx; | |
8 | - __u32 ecx; | |
9 | - __u32 edx; | |
10 | - __u32 esi; | |
11 | - __u32 edi; | |
12 | - __u32 ebp; | |
13 | - __u32 eax; | |
14 | - __u32 eip; | |
15 | - __u32 eflags; | |
16 | - __u32 esp; | |
17 | - __u16 cs; | |
18 | - __u16 ss; | |
19 | - __u16 es; | |
20 | - __u16 ds; | |
21 | - __u16 fs; | |
22 | - __u16 gs; | |
23 | -}; | |
24 | 6 | |
25 | -/* Task flags */ | |
26 | -#define TF_VBEIB 0x01 | |
27 | -#define TF_BUF_ESDI 0x02 | |
28 | -#define TF_BUF_ESBX 0x04 | |
29 | -#define TF_BUF_RET 0x08 | |
30 | -#define TF_EXIT 0x10 | |
31 | - | |
32 | -struct uvesafb_task { | |
33 | - __u8 flags; | |
34 | - int buf_len; | |
35 | - struct v86_regs regs; | |
36 | -}; | |
37 | - | |
38 | -/* Constants for the capabilities field | |
39 | - * in vbe_ib */ | |
40 | -#define VBE_CAP_CAN_SWITCH_DAC 0x01 | |
41 | -#define VBE_CAP_VGACOMPAT 0x02 | |
42 | - | |
43 | -/* The VBE Info Block */ | |
44 | -struct vbe_ib { | |
45 | - char vbe_signature[4]; | |
46 | - __u16 vbe_version; | |
47 | - __u32 oem_string_ptr; | |
48 | - __u32 capabilities; | |
49 | - __u32 mode_list_ptr; | |
50 | - __u16 total_memory; | |
51 | - __u16 oem_software_rev; | |
52 | - __u32 oem_vendor_name_ptr; | |
53 | - __u32 oem_product_name_ptr; | |
54 | - __u32 oem_product_rev_ptr; | |
55 | - __u8 reserved[222]; | |
56 | - char oem_data[256]; | |
57 | - char misc_data[512]; | |
58 | -} __attribute__ ((packed)); | |
59 | - | |
60 | -#ifdef __KERNEL__ | |
61 | - | |
62 | 7 | /* VBE CRTC Info Block */ |
63 | 8 | struct vbe_crtc_ib { |
64 | 9 | u16 horiz_total; |
... | ... | @@ -191,6 +136,5 @@ |
191 | 136 | struct vbe_crtc_ib crtc; |
192 | 137 | }; |
193 | 138 | |
194 | -#endif /* __KERNEL__ */ | |
195 | 139 | #endif /* _UVESAFB_H */ |