xref: /aosp_15_r20/bionic/libc/kernel/uapi/video/sisfb.h (revision 8d67ca893c1523eb926b9080dbe4e2ffd2a27ba1)
1*8d67ca89SAndroid Build Coastguard Worker /*
2*8d67ca89SAndroid Build Coastguard Worker  * This file is auto-generated. Modifications will be lost.
3*8d67ca89SAndroid Build Coastguard Worker  *
4*8d67ca89SAndroid Build Coastguard Worker  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5*8d67ca89SAndroid Build Coastguard Worker  * for more information.
6*8d67ca89SAndroid Build Coastguard Worker  */
7*8d67ca89SAndroid Build Coastguard Worker #ifndef _UAPI_LINUX_SISFB_H_
8*8d67ca89SAndroid Build Coastguard Worker #define _UAPI_LINUX_SISFB_H_
9*8d67ca89SAndroid Build Coastguard Worker #include <linux/types.h>
10*8d67ca89SAndroid Build Coastguard Worker #include <asm/ioctl.h>
11*8d67ca89SAndroid Build Coastguard Worker #define CRT2_DEFAULT 0x00000001
12*8d67ca89SAndroid Build Coastguard Worker #define CRT2_LCD 0x00000002
13*8d67ca89SAndroid Build Coastguard Worker #define CRT2_TV 0x00000004
14*8d67ca89SAndroid Build Coastguard Worker #define CRT2_VGA 0x00000008
15*8d67ca89SAndroid Build Coastguard Worker #define TV_NTSC 0x00000010
16*8d67ca89SAndroid Build Coastguard Worker #define TV_PAL 0x00000020
17*8d67ca89SAndroid Build Coastguard Worker #define TV_HIVISION 0x00000040
18*8d67ca89SAndroid Build Coastguard Worker #define TV_YPBPR 0x00000080
19*8d67ca89SAndroid Build Coastguard Worker #define TV_AVIDEO 0x00000100
20*8d67ca89SAndroid Build Coastguard Worker #define TV_SVIDEO 0x00000200
21*8d67ca89SAndroid Build Coastguard Worker #define TV_SCART 0x00000400
22*8d67ca89SAndroid Build Coastguard Worker #define TV_PALM 0x00001000
23*8d67ca89SAndroid Build Coastguard Worker #define TV_PALN 0x00002000
24*8d67ca89SAndroid Build Coastguard Worker #define TV_NTSCJ 0x00001000
25*8d67ca89SAndroid Build Coastguard Worker #define TV_CHSCART 0x00008000
26*8d67ca89SAndroid Build Coastguard Worker #define TV_CHYPBPR525I 0x00010000
27*8d67ca89SAndroid Build Coastguard Worker #define CRT1_VGA 0x00000000
28*8d67ca89SAndroid Build Coastguard Worker #define CRT1_LCDA 0x00020000
29*8d67ca89SAndroid Build Coastguard Worker #define VGA2_CONNECTED 0x00040000
30*8d67ca89SAndroid Build Coastguard Worker #define VB_DISPTYPE_CRT1 0x00080000
31*8d67ca89SAndroid Build Coastguard Worker #define VB_SINGLE_MODE 0x20000000
32*8d67ca89SAndroid Build Coastguard Worker #define VB_MIRROR_MODE 0x40000000
33*8d67ca89SAndroid Build Coastguard Worker #define VB_DUALVIEW_MODE 0x80000000
34*8d67ca89SAndroid Build Coastguard Worker #define CRT2_ENABLE (CRT2_LCD | CRT2_TV | CRT2_VGA)
35*8d67ca89SAndroid Build Coastguard Worker #define TV_STANDARD (TV_NTSC | TV_PAL | TV_PALM | TV_PALN | TV_NTSCJ)
36*8d67ca89SAndroid Build Coastguard Worker #define TV_INTERFACE (TV_AVIDEO | TV_SVIDEO | TV_SCART | TV_HIVISION | TV_YPBPR | TV_CHSCART | TV_CHYPBPR525I)
37*8d67ca89SAndroid Build Coastguard Worker #define TV_YPBPR525I TV_NTSC
38*8d67ca89SAndroid Build Coastguard Worker #define TV_YPBPR525P TV_PAL
39*8d67ca89SAndroid Build Coastguard Worker #define TV_YPBPR750P TV_PALM
40*8d67ca89SAndroid Build Coastguard Worker #define TV_YPBPR1080I TV_PALN
41*8d67ca89SAndroid Build Coastguard Worker #define TV_YPBPRALL (TV_YPBPR525I | TV_YPBPR525P | TV_YPBPR750P | TV_YPBPR1080I)
42*8d67ca89SAndroid Build Coastguard Worker #define VB_DISPTYPE_DISP2 CRT2_ENABLE
43*8d67ca89SAndroid Build Coastguard Worker #define VB_DISPTYPE_CRT2 CRT2_ENABLE
44*8d67ca89SAndroid Build Coastguard Worker #define VB_DISPTYPE_DISP1 VB_DISPTYPE_CRT1
45*8d67ca89SAndroid Build Coastguard Worker #define VB_DISPMODE_SINGLE VB_SINGLE_MODE
46*8d67ca89SAndroid Build Coastguard Worker #define VB_DISPMODE_MIRROR VB_MIRROR_MODE
47*8d67ca89SAndroid Build Coastguard Worker #define VB_DISPMODE_DUAL VB_DUALVIEW_MODE
48*8d67ca89SAndroid Build Coastguard Worker #define VB_DISPLAY_MODE (SINGLE_MODE | MIRROR_MODE | DUALVIEW_MODE)
49*8d67ca89SAndroid Build Coastguard Worker struct sisfb_info {
50*8d67ca89SAndroid Build Coastguard Worker   __u32 sisfb_id;
51*8d67ca89SAndroid Build Coastguard Worker #ifndef SISFB_ID
52*8d67ca89SAndroid Build Coastguard Worker #define SISFB_ID 0x53495346
53*8d67ca89SAndroid Build Coastguard Worker #endif
54*8d67ca89SAndroid Build Coastguard Worker   __u32 chip_id;
55*8d67ca89SAndroid Build Coastguard Worker   __u32 memory;
56*8d67ca89SAndroid Build Coastguard Worker   __u32 heapstart;
57*8d67ca89SAndroid Build Coastguard Worker   __u8 fbvidmode;
58*8d67ca89SAndroid Build Coastguard Worker   __u8 sisfb_version;
59*8d67ca89SAndroid Build Coastguard Worker   __u8 sisfb_revision;
60*8d67ca89SAndroid Build Coastguard Worker   __u8 sisfb_patchlevel;
61*8d67ca89SAndroid Build Coastguard Worker   __u8 sisfb_caps;
62*8d67ca89SAndroid Build Coastguard Worker   __u32 sisfb_tqlen;
63*8d67ca89SAndroid Build Coastguard Worker   __u32 sisfb_pcibus;
64*8d67ca89SAndroid Build Coastguard Worker   __u32 sisfb_pcislot;
65*8d67ca89SAndroid Build Coastguard Worker   __u32 sisfb_pcifunc;
66*8d67ca89SAndroid Build Coastguard Worker   __u8 sisfb_lcdpdc;
67*8d67ca89SAndroid Build Coastguard Worker   __u8 sisfb_lcda;
68*8d67ca89SAndroid Build Coastguard Worker   __u32 sisfb_vbflags;
69*8d67ca89SAndroid Build Coastguard Worker   __u32 sisfb_currentvbflags;
70*8d67ca89SAndroid Build Coastguard Worker   __u32 sisfb_scalelcd;
71*8d67ca89SAndroid Build Coastguard Worker   __u32 sisfb_specialtiming;
72*8d67ca89SAndroid Build Coastguard Worker   __u8 sisfb_haveemi;
73*8d67ca89SAndroid Build Coastguard Worker   __u8 sisfb_emi30, sisfb_emi31, sisfb_emi32, sisfb_emi33;
74*8d67ca89SAndroid Build Coastguard Worker   __u8 sisfb_haveemilcd;
75*8d67ca89SAndroid Build Coastguard Worker   __u8 sisfb_lcdpdca;
76*8d67ca89SAndroid Build Coastguard Worker   __u16 sisfb_tvxpos, sisfb_tvypos;
77*8d67ca89SAndroid Build Coastguard Worker   __u32 sisfb_heapsize;
78*8d67ca89SAndroid Build Coastguard Worker   __u32 sisfb_videooffset;
79*8d67ca89SAndroid Build Coastguard Worker   __u32 sisfb_curfstn;
80*8d67ca89SAndroid Build Coastguard Worker   __u32 sisfb_curdstn;
81*8d67ca89SAndroid Build Coastguard Worker   __u16 sisfb_pci_vendor;
82*8d67ca89SAndroid Build Coastguard Worker   __u32 sisfb_vbflags2;
83*8d67ca89SAndroid Build Coastguard Worker   __u8 sisfb_can_post;
84*8d67ca89SAndroid Build Coastguard Worker   __u8 sisfb_card_posted;
85*8d67ca89SAndroid Build Coastguard Worker   __u8 sisfb_was_boot_device;
86*8d67ca89SAndroid Build Coastguard Worker   __u8 reserved[183];
87*8d67ca89SAndroid Build Coastguard Worker };
88*8d67ca89SAndroid Build Coastguard Worker #define SISFB_CMD_GETVBFLAGS 0x55AA0001
89*8d67ca89SAndroid Build Coastguard Worker #define SISFB_CMD_SWITCHCRT1 0x55AA0010
90*8d67ca89SAndroid Build Coastguard Worker #define SISFB_CMD_ERR_OK 0x80000000
91*8d67ca89SAndroid Build Coastguard Worker #define SISFB_CMD_ERR_LOCKED 0x80000001
92*8d67ca89SAndroid Build Coastguard Worker #define SISFB_CMD_ERR_EARLY 0x80000002
93*8d67ca89SAndroid Build Coastguard Worker #define SISFB_CMD_ERR_NOVB 0x80000003
94*8d67ca89SAndroid Build Coastguard Worker #define SISFB_CMD_ERR_NOCRT2 0x80000004
95*8d67ca89SAndroid Build Coastguard Worker #define SISFB_CMD_ERR_UNKNOWN 0x8000ffff
96*8d67ca89SAndroid Build Coastguard Worker #define SISFB_CMD_ERR_OTHER 0x80010000
97*8d67ca89SAndroid Build Coastguard Worker struct sisfb_cmd {
98*8d67ca89SAndroid Build Coastguard Worker   __u32 sisfb_cmd;
99*8d67ca89SAndroid Build Coastguard Worker   __u32 sisfb_arg[16];
100*8d67ca89SAndroid Build Coastguard Worker   __u32 sisfb_result[4];
101*8d67ca89SAndroid Build Coastguard Worker };
102*8d67ca89SAndroid Build Coastguard Worker #define SISFB_GET_INFO_SIZE _IOR(0xF3, 0x00, __u32)
103*8d67ca89SAndroid Build Coastguard Worker #define SISFB_GET_INFO _IOR(0xF3, 0x01, struct sisfb_info)
104*8d67ca89SAndroid Build Coastguard Worker #define SISFB_GET_VBRSTATUS _IOR(0xF3, 0x02, __u32)
105*8d67ca89SAndroid Build Coastguard Worker #define SISFB_GET_AUTOMAXIMIZE _IOR(0xF3, 0x03, __u32)
106*8d67ca89SAndroid Build Coastguard Worker #define SISFB_SET_AUTOMAXIMIZE _IOW(0xF3, 0x03, __u32)
107*8d67ca89SAndroid Build Coastguard Worker #define SISFB_GET_TVPOSOFFSET _IOR(0xF3, 0x04, __u32)
108*8d67ca89SAndroid Build Coastguard Worker #define SISFB_SET_TVPOSOFFSET _IOW(0xF3, 0x04, __u32)
109*8d67ca89SAndroid Build Coastguard Worker #define SISFB_COMMAND _IOWR(0xF3, 0x05, struct sisfb_cmd)
110*8d67ca89SAndroid Build Coastguard Worker #define SISFB_SET_LOCK _IOW(0xF3, 0x06, __u32)
111*8d67ca89SAndroid Build Coastguard Worker #define SISFB_GET_INFO_OLD _IOR('n', 0xF8, __u32)
112*8d67ca89SAndroid Build Coastguard Worker #define SISFB_GET_VBRSTATUS_OLD _IOR('n', 0xF9, __u32)
113*8d67ca89SAndroid Build Coastguard Worker #define SISFB_GET_AUTOMAXIMIZE_OLD _IOR('n', 0xFA, __u32)
114*8d67ca89SAndroid Build Coastguard Worker #define SISFB_SET_AUTOMAXIMIZE_OLD _IOW('n', 0xFA, __u32)
115*8d67ca89SAndroid Build Coastguard Worker struct sis_memreq {
116*8d67ca89SAndroid Build Coastguard Worker   __u32 offset;
117*8d67ca89SAndroid Build Coastguard Worker   __u32 size;
118*8d67ca89SAndroid Build Coastguard Worker };
119*8d67ca89SAndroid Build Coastguard Worker #endif
120