1 /**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 *** To edit the content of this header, modify the corresponding 11 *** source file (e.g. under external/kernel-headers/original/) then 12 *** run bionic/libc/kernel/tools/update_all.py 13 *** 14 *** Any manual change here will be lost the next time this script will 15 *** be run. You've been warned! 16 *** 17 **************************************************************************** 18 ****************************************************************************/ 19 #ifndef _UAPI_LINUX_SISFB_H_ 20 #define _UAPI_LINUX_SISFB_H_ 21 #include <linux/types.h> 22 #include <asm/ioctl.h> 23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24 #define CRT2_DEFAULT 0x00000001 25 #define CRT2_LCD 0x00000002 26 #define CRT2_TV 0x00000004 27 #define CRT2_VGA 0x00000008 28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29 #define TV_NTSC 0x00000010 30 #define TV_PAL 0x00000020 31 #define TV_HIVISION 0x00000040 32 #define TV_YPBPR 0x00000080 33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34 #define TV_AVIDEO 0x00000100 35 #define TV_SVIDEO 0x00000200 36 #define TV_SCART 0x00000400 37 #define TV_PALM 0x00001000 38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39 #define TV_PALN 0x00002000 40 #define TV_NTSCJ 0x00001000 41 #define TV_CHSCART 0x00008000 42 #define TV_CHYPBPR525I 0x00010000 43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44 #define CRT1_VGA 0x00000000 45 #define CRT1_LCDA 0x00020000 46 #define VGA2_CONNECTED 0x00040000 47 #define VB_DISPTYPE_CRT1 0x00080000 48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49 #define VB_SINGLE_MODE 0x20000000 50 #define VB_MIRROR_MODE 0x40000000 51 #define VB_DUALVIEW_MODE 0x80000000 52 #define CRT2_ENABLE (CRT2_LCD | CRT2_TV | CRT2_VGA) 53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54 #define TV_STANDARD (TV_NTSC | TV_PAL | TV_PALM | TV_PALN | TV_NTSCJ) 55 #define TV_INTERFACE (TV_AVIDEO | TV_SVIDEO | TV_SCART | TV_HIVISION | TV_YPBPR | TV_CHSCART | TV_CHYPBPR525I) 56 #define TV_YPBPR525I TV_NTSC 57 #define TV_YPBPR525P TV_PAL 58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59 #define TV_YPBPR750P TV_PALM 60 #define TV_YPBPR1080I TV_PALN 61 #define TV_YPBPRALL (TV_YPBPR525I | TV_YPBPR525P | TV_YPBPR750P | TV_YPBPR1080I) 62 #define VB_DISPTYPE_DISP2 CRT2_ENABLE 63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64 #define VB_DISPTYPE_CRT2 CRT2_ENABLE 65 #define VB_DISPTYPE_DISP1 VB_DISPTYPE_CRT1 66 #define VB_DISPMODE_SINGLE VB_SINGLE_MODE 67 #define VB_DISPMODE_MIRROR VB_MIRROR_MODE 68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69 #define VB_DISPMODE_DUAL VB_DUALVIEW_MODE 70 #define VB_DISPLAY_MODE (SINGLE_MODE | MIRROR_MODE | DUALVIEW_MODE) 71 struct sisfb_info { 72 __u32 sisfb_id; 73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 74 #ifndef SISFB_ID 75 #define SISFB_ID 0x53495346 76 #endif 77 __u32 chip_id; 78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 79 __u32 memory; 80 __u32 heapstart; 81 __u8 fbvidmode; 82 __u8 sisfb_version; 83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 84 __u8 sisfb_revision; 85 __u8 sisfb_patchlevel; 86 __u8 sisfb_caps; 87 __u32 sisfb_tqlen; 88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 89 __u32 sisfb_pcibus; 90 __u32 sisfb_pcislot; 91 __u32 sisfb_pcifunc; 92 __u8 sisfb_lcdpdc; 93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 94 __u8 sisfb_lcda; 95 __u32 sisfb_vbflags; 96 __u32 sisfb_currentvbflags; 97 __u32 sisfb_scalelcd; 98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 99 __u32 sisfb_specialtiming; 100 __u8 sisfb_haveemi; 101 __u8 sisfb_emi30, sisfb_emi31, sisfb_emi32, sisfb_emi33; 102 __u8 sisfb_haveemilcd; 103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 104 __u8 sisfb_lcdpdca; 105 __u16 sisfb_tvxpos, sisfb_tvypos; 106 __u32 sisfb_heapsize; 107 __u32 sisfb_videooffset; 108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 109 __u32 sisfb_curfstn; 110 __u32 sisfb_curdstn; 111 __u16 sisfb_pci_vendor; 112 __u32 sisfb_vbflags2; 113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 114 __u8 sisfb_can_post; 115 __u8 sisfb_card_posted; 116 __u8 sisfb_was_boot_device; 117 __u8 reserved[183]; 118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 119 }; 120 #define SISFB_CMD_GETVBFLAGS 0x55AA0001 121 #define SISFB_CMD_SWITCHCRT1 0x55AA0010 122 #define SISFB_CMD_ERR_OK 0x80000000 123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 124 #define SISFB_CMD_ERR_LOCKED 0x80000001 125 #define SISFB_CMD_ERR_EARLY 0x80000002 126 #define SISFB_CMD_ERR_NOVB 0x80000003 127 #define SISFB_CMD_ERR_NOCRT2 0x80000004 128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 129 #define SISFB_CMD_ERR_UNKNOWN 0x8000ffff 130 #define SISFB_CMD_ERR_OTHER 0x80010000 131 struct sisfb_cmd { 132 __u32 sisfb_cmd; 133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 134 __u32 sisfb_arg[16]; 135 __u32 sisfb_result[4]; 136 }; 137 #define SISFB_GET_INFO_SIZE _IOR(0xF3, 0x00, __u32) 138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 139 #define SISFB_GET_INFO _IOR(0xF3, 0x01, struct sisfb_info) 140 #define SISFB_GET_VBRSTATUS _IOR(0xF3, 0x02, __u32) 141 #define SISFB_GET_AUTOMAXIMIZE _IOR(0xF3, 0x03, __u32) 142 #define SISFB_SET_AUTOMAXIMIZE _IOW(0xF3, 0x03, __u32) 143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 144 #define SISFB_GET_TVPOSOFFSET _IOR(0xF3, 0x04, __u32) 145 #define SISFB_SET_TVPOSOFFSET _IOW(0xF3, 0x04, __u32) 146 #define SISFB_COMMAND _IOWR(0xF3, 0x05, struct sisfb_cmd) 147 #define SISFB_SET_LOCK _IOW(0xF3, 0x06, __u32) 148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 149 #define SISFB_GET_INFO_OLD _IOR('n', 0xF8, __u32) 150 #define SISFB_GET_VBRSTATUS_OLD _IOR('n', 0xF9, __u32) 151 #define SISFB_GET_AUTOMAXIMIZE_OLD _IOR('n', 0xFA, __u32) 152 #define SISFB_SET_AUTOMAXIMIZE_OLD _IOW('n', 0xFA, __u32) 153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 154 struct sis_memreq { 155 __u32 offset; 156 __u32 size; 157 }; 158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 159 #endif 160