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_OMAPFB_H__ 20#define _UAPI__LINUX_OMAPFB_H__ 21#include <linux/fb.h> 22#include <linux/ioctl.h> 23/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24#include <linux/types.h> 25#define OMAP_IOW(num, dtype) _IOW('O', num, dtype) 26#define OMAP_IOR(num, dtype) _IOR('O', num, dtype) 27#define OMAP_IOWR(num, dtype) _IOWR('O', num, dtype) 28/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29#define OMAP_IO(num) _IO('O', num) 30#define OMAPFB_MIRROR OMAP_IOW(31, int) 31#define OMAPFB_SYNC_GFX OMAP_IO(37) 32#define OMAPFB_VSYNC OMAP_IO(38) 33/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34#define OMAPFB_SET_UPDATE_MODE OMAP_IOW(40, int) 35#define OMAPFB_GET_CAPS OMAP_IOR(42, struct omapfb_caps) 36#define OMAPFB_GET_UPDATE_MODE OMAP_IOW(43, int) 37#define OMAPFB_LCD_TEST OMAP_IOW(45, int) 38/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39#define OMAPFB_CTRL_TEST OMAP_IOW(46, int) 40#define OMAPFB_UPDATE_WINDOW_OLD OMAP_IOW(47, struct omapfb_update_window_old) 41#define OMAPFB_SET_COLOR_KEY OMAP_IOW(50, struct omapfb_color_key) 42#define OMAPFB_GET_COLOR_KEY OMAP_IOW(51, struct omapfb_color_key) 43/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44#define OMAPFB_SETUP_PLANE OMAP_IOW(52, struct omapfb_plane_info) 45#define OMAPFB_QUERY_PLANE OMAP_IOW(53, struct omapfb_plane_info) 46#define OMAPFB_UPDATE_WINDOW OMAP_IOW(54, struct omapfb_update_window) 47#define OMAPFB_SETUP_MEM OMAP_IOW(55, struct omapfb_mem_info) 48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49#define OMAPFB_QUERY_MEM OMAP_IOW(56, struct omapfb_mem_info) 50#define OMAPFB_WAITFORVSYNC OMAP_IO(57) 51#define OMAPFB_MEMORY_READ OMAP_IOR(58, struct omapfb_memory_read) 52#define OMAPFB_GET_OVERLAY_COLORMODE OMAP_IOR(59, struct omapfb_ovl_colormode) 53/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54#define OMAPFB_WAITFORGO OMAP_IO(60) 55#define OMAPFB_GET_VRAM_INFO OMAP_IOR(61, struct omapfb_vram_info) 56#define OMAPFB_SET_TEARSYNC OMAP_IOW(62, struct omapfb_tearsync_info) 57#define OMAPFB_GET_DISPLAY_INFO OMAP_IOR(63, struct omapfb_display_info) 58/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59#define OMAPFB_CAPS_GENERIC_MASK 0x00000fff 60#define OMAPFB_CAPS_LCDC_MASK 0x00fff000 61#define OMAPFB_CAPS_PANEL_MASK 0xff000000 62#define OMAPFB_CAPS_MANUAL_UPDATE 0x00001000 63/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64#define OMAPFB_CAPS_TEARSYNC 0x00002000 65#define OMAPFB_CAPS_PLANE_RELOCATE_MEM 0x00004000 66#define OMAPFB_CAPS_PLANE_SCALE 0x00008000 67#define OMAPFB_CAPS_WINDOW_PIXEL_DOUBLE 0x00010000 68/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69#define OMAPFB_CAPS_WINDOW_SCALE 0x00020000 70#define OMAPFB_CAPS_WINDOW_OVERLAY 0x00040000 71#define OMAPFB_CAPS_WINDOW_ROTATE 0x00080000 72#define OMAPFB_CAPS_SET_BACKLIGHT 0x01000000 73/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 74#define OMAPFB_FORMAT_MASK 0x00ff 75#define OMAPFB_FORMAT_FLAG_DOUBLE 0x0100 76#define OMAPFB_FORMAT_FLAG_TEARSYNC 0x0200 77#define OMAPFB_FORMAT_FLAG_FORCE_VSYNC 0x0400 78/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 79#define OMAPFB_FORMAT_FLAG_ENABLE_OVERLAY 0x0800 80#define OMAPFB_FORMAT_FLAG_DISABLE_OVERLAY 0x1000 81#define OMAPFB_MEMTYPE_SDRAM 0 82#define OMAPFB_MEMTYPE_SRAM 1 83/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 84#define OMAPFB_MEMTYPE_MAX 1 85#define OMAPFB_MEM_IDX_ENABLED 0x80 86#define OMAPFB_MEM_IDX_MASK 0x7f 87enum omapfb_color_format { 88/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 89 OMAPFB_COLOR_RGB565 = 0, 90 OMAPFB_COLOR_YUV422, 91 OMAPFB_COLOR_YUV420, 92 OMAPFB_COLOR_CLUT_8BPP, 93/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 94 OMAPFB_COLOR_CLUT_4BPP, 95 OMAPFB_COLOR_CLUT_2BPP, 96 OMAPFB_COLOR_CLUT_1BPP, 97 OMAPFB_COLOR_RGB444, 98/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 99 OMAPFB_COLOR_YUY422, 100 OMAPFB_COLOR_ARGB16, 101 OMAPFB_COLOR_RGB24U, 102 OMAPFB_COLOR_RGB24P, 103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 104 OMAPFB_COLOR_ARGB32, 105 OMAPFB_COLOR_RGBA32, 106 OMAPFB_COLOR_RGBX32, 107}; 108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 109struct omapfb_update_window { 110 __u32 x, y; 111 __u32 width, height; 112 __u32 format; 113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 114 __u32 out_x, out_y; 115 __u32 out_width, out_height; 116 __u32 reserved[8]; 117}; 118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 119struct omapfb_update_window_old { 120 __u32 x, y; 121 __u32 width, height; 122 __u32 format; 123/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 124}; 125enum omapfb_plane { 126 OMAPFB_PLANE_GFX = 0, 127 OMAPFB_PLANE_VID1, 128/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 129 OMAPFB_PLANE_VID2, 130}; 131enum omapfb_channel_out { 132 OMAPFB_CHANNEL_OUT_LCD = 0, 133/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 134 OMAPFB_CHANNEL_OUT_DIGIT, 135}; 136struct omapfb_plane_info { 137 __u32 pos_x; 138/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 139 __u32 pos_y; 140 __u8 enabled; 141 __u8 channel_out; 142 __u8 mirror; 143/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 144 __u8 mem_idx; 145 __u32 out_width; 146 __u32 out_height; 147 __u32 reserved2[12]; 148/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 149}; 150struct omapfb_mem_info { 151 __u32 size; 152 __u8 type; 153/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 154 __u8 reserved[3]; 155}; 156struct omapfb_caps { 157 __u32 ctrl; 158/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 159 __u32 plane_color; 160 __u32 wnd_color; 161}; 162enum omapfb_color_key_type { 163/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 164 OMAPFB_COLOR_KEY_DISABLED = 0, 165 OMAPFB_COLOR_KEY_GFX_DST, 166 OMAPFB_COLOR_KEY_VID_SRC, 167}; 168/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 169struct omapfb_color_key { 170 __u8 channel_out; 171 __u32 background; 172 __u32 trans_key; 173/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 174 __u8 key_type; 175}; 176enum omapfb_update_mode { 177 OMAPFB_UPDATE_DISABLED = 0, 178/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 179 OMAPFB_AUTO_UPDATE, 180 OMAPFB_MANUAL_UPDATE 181}; 182struct omapfb_memory_read { 183/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 184 __u16 x; 185 __u16 y; 186 __u16 w; 187 __u16 h; 188/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 189 size_t buffer_size; 190 void __user *buffer; 191}; 192struct omapfb_ovl_colormode { 193/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 194 __u8 overlay_idx; 195 __u8 mode_idx; 196 __u32 bits_per_pixel; 197 __u32 nonstd; 198/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 199 struct fb_bitfield red; 200 struct fb_bitfield green; 201 struct fb_bitfield blue; 202 struct fb_bitfield transp; 203/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 204}; 205struct omapfb_vram_info { 206 __u32 total; 207 __u32 free; 208/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 209 __u32 largest_free_block; 210 __u32 reserved[5]; 211}; 212struct omapfb_tearsync_info { 213/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 214 __u8 enabled; 215 __u8 reserved1[3]; 216 __u16 line; 217 __u16 reserved2; 218/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 219}; 220struct omapfb_display_info { 221 __u16 xres; 222 __u16 yres; 223/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 224 __u32 width; 225 __u32 height; 226 __u32 reserved[5]; 227}; 228/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 229#endif 230