1951a39d68df598db08dfced8b4707755864a0492Ying Wang/**************************************************************************** 2951a39d68df598db08dfced8b4707755864a0492Ying Wang **************************************************************************** 3951a39d68df598db08dfced8b4707755864a0492Ying Wang *** 4951a39d68df598db08dfced8b4707755864a0492Ying Wang *** This header was automatically generated from a Linux kernel header 5951a39d68df598db08dfced8b4707755864a0492Ying Wang *** of the same name, to make information necessary for userspace to 6951a39d68df598db08dfced8b4707755864a0492Ying Wang *** call into the kernel available to libc. It contains only constants, 7951a39d68df598db08dfced8b4707755864a0492Ying Wang *** structures, and macros generated from the original header, and thus, 8951a39d68df598db08dfced8b4707755864a0492Ying Wang *** contains no copyrightable information. 9951a39d68df598db08dfced8b4707755864a0492Ying Wang *** 10951a39d68df598db08dfced8b4707755864a0492Ying Wang **************************************************************************** 11951a39d68df598db08dfced8b4707755864a0492Ying Wang ****************************************************************************/ 12951a39d68df598db08dfced8b4707755864a0492Ying Wang#ifndef _LINUX_FB_H 13951a39d68df598db08dfced8b4707755864a0492Ying Wang#define _LINUX_FB_H 14951a39d68df598db08dfced8b4707755864a0492Ying Wang 15951a39d68df598db08dfced8b4707755864a0492Ying Wang#include <asm/types.h> 16951a39d68df598db08dfced8b4707755864a0492Ying Wang 17951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_MAJOR 29 18951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_MAX 32 19951a39d68df598db08dfced8b4707755864a0492Ying Wang 20951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FBIOGET_VSCREENINFO 0x4600 21951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FBIOPUT_VSCREENINFO 0x4601 22951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FBIOGET_FSCREENINFO 0x4602 23951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FBIOGETCMAP 0x4604 24951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FBIOPUTCMAP 0x4605 25951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FBIOPAN_DISPLAY 0x4606 26951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FBIO_CURSOR _IOWR('F', 0x08, struct fb_cursor) 27951a39d68df598db08dfced8b4707755864a0492Ying Wang 28951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FBIOGET_CON2FBMAP 0x460F 29951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FBIOPUT_CON2FBMAP 0x4610 30951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FBIOBLANK 0x4611 31951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FBIOGET_VBLANK _IOR('F', 0x12, struct fb_vblank) 32951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FBIO_ALLOC 0x4613 33951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FBIO_FREE 0x4614 34951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FBIOGET_GLYPH 0x4615 35951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FBIOGET_HWCINFO 0x4616 36951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FBIOPUT_MODEINFO 0x4617 37951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FBIOGET_DISPINFO 0x4618 38951a39d68df598db08dfced8b4707755864a0492Ying Wang 39951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_TYPE_PACKED_PIXELS 0 40951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_TYPE_PLANES 1 41951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_TYPE_INTERLEAVED_PLANES 2 42951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_TYPE_TEXT 3 43951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_TYPE_VGA_PLANES 4 44951a39d68df598db08dfced8b4707755864a0492Ying Wang 45951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_AUX_TEXT_MDA 0 46951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_AUX_TEXT_CGA 1 47951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_AUX_TEXT_S3_MMIO 2 48951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_AUX_TEXT_MGA_STEP16 3 49951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_AUX_TEXT_MGA_STEP8 4 50951a39d68df598db08dfced8b4707755864a0492Ying Wang 51951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_AUX_VGA_PLANES_VGA4 0 52951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_AUX_VGA_PLANES_CFB4 1 53951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_AUX_VGA_PLANES_CFB8 2 54951a39d68df598db08dfced8b4707755864a0492Ying Wang 55951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VISUAL_MONO01 0 56951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VISUAL_MONO10 1 57951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VISUAL_TRUECOLOR 2 58951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VISUAL_PSEUDOCOLOR 3 59951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VISUAL_DIRECTCOLOR 4 60951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VISUAL_STATIC_PSEUDOCOLOR 5 61951a39d68df598db08dfced8b4707755864a0492Ying Wang 62951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NONE 0 63951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_ATARIBLITT 1 64951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_AMIGABLITT 2 65951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_S3_TRIO64 3 66951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NCR_77C32BLT 4 67951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_S3_VIRGE 5 68951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_ATI_MACH64GX 6 69951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_DEC_TGA 7 70951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_ATI_MACH64CT 8 71951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_ATI_MACH64VT 9 72951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_ATI_MACH64GT 10 73951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SUN_CREATOR 11 74951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SUN_CGSIX 12 75951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SUN_LEO 13 76951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_IMS_TWINTURBO 14 77951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_3DLABS_PERMEDIA2 15 78951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_MATROX_MGA2064W 16 79951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_MATROX_MGA1064SG 17 80951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_MATROX_MGA2164W 18 81951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_MATROX_MGA2164W_AGP 19 82951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_MATROX_MGAG100 20 83951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_MATROX_MGAG200 21 84951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SUN_CG14 22 85951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SUN_BWTWO 23 86951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SUN_CGTHREE 24 87951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SUN_TCX 25 88951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_MATROX_MGAG400 26 89951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NV3 27 90951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NV4 28 91951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NV5 29 92951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_CT_6555x 30 93951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_3DFX_BANSHEE 31 94951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_ATI_RAGE128 32 95951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_IGS_CYBER2000 33 96951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_IGS_CYBER2010 34 97951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_IGS_CYBER5000 35 98951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SIS_GLAMOUR 36 99951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_3DLABS_PERMEDIA3 37 100951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_ATI_RADEON 38 101951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_I810 39 102951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SIS_GLAMOUR_2 40 103951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SIS_XABRE 41 104951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_I830 42 105951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NV_10 43 106951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NV_20 44 107951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NV_30 45 108951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NV_40 46 109951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_XGI_VOLARI_V 47 110951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_XGI_VOLARI_Z 48 111951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_OMAP1610 49 112951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NEOMAGIC_NM2070 90 113951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NEOMAGIC_NM2090 91 114951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NEOMAGIC_NM2093 92 115951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NEOMAGIC_NM2097 93 116951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NEOMAGIC_NM2160 94 117951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NEOMAGIC_NM2200 95 118951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NEOMAGIC_NM2230 96 119951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NEOMAGIC_NM2360 97 120951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_NEOMAGIC_NM2380 98 121951a39d68df598db08dfced8b4707755864a0492Ying Wang 122951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SAVAGE4 0x80 123951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SAVAGE3D 0x81 124951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SAVAGE3D_MV 0x82 125951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SAVAGE2000 0x83 126951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SAVAGE_MX_MV 0x84 127951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SAVAGE_MX 0x85 128951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SAVAGE_IX_MV 0x86 129951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SAVAGE_IX 0x87 130951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_PROSAVAGE_PM 0x88 131951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_PROSAVAGE_KM 0x89 132951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_S3TWISTER_P 0x8a 133951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_S3TWISTER_K 0x8b 134951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_SUPERSAVAGE 0x8c 135951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_PROSAVAGE_DDR 0x8d 136951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCEL_PROSAVAGE_DDRK 0x8e 137951a39d68df598db08dfced8b4707755864a0492Ying Wang 138951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct fb_fix_screeninfo { 139951a39d68df598db08dfced8b4707755864a0492Ying Wang char id[16]; 140951a39d68df598db08dfced8b4707755864a0492Ying Wang unsigned long smem_start; 141951a39d68df598db08dfced8b4707755864a0492Ying Wang 142951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 smem_len; 143951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 type; 144951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 type_aux; 145951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 visual; 146951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 xpanstep; 147951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 ypanstep; 148951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 ywrapstep; 149951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 line_length; 150951a39d68df598db08dfced8b4707755864a0492Ying Wang unsigned long mmio_start; 151951a39d68df598db08dfced8b4707755864a0492Ying Wang 152951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 mmio_len; 153951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 accel; 154951a39d68df598db08dfced8b4707755864a0492Ying Wang 155951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 reserved[3]; 156951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 157951a39d68df598db08dfced8b4707755864a0492Ying Wang 158951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct fb_bitfield { 159951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 offset; 160951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 length; 161951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 msb_right; 162951a39d68df598db08dfced8b4707755864a0492Ying Wang 163951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 164951a39d68df598db08dfced8b4707755864a0492Ying Wang 165951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_NONSTD_HAM 1 166951a39d68df598db08dfced8b4707755864a0492Ying Wang 167951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACTIVATE_NOW 0 168951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACTIVATE_NXTOPEN 1 169951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACTIVATE_TEST 2 170951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACTIVATE_MASK 15 171951a39d68df598db08dfced8b4707755864a0492Ying Wang 172951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACTIVATE_VBL 16 173951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_CHANGE_CMAP_VBL 32 174951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACTIVATE_ALL 64 175951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACTIVATE_FORCE 128 176951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACTIVATE_INV_MODE 256 177951a39d68df598db08dfced8b4707755864a0492Ying Wang 178951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ACCELF_TEXT 1 179951a39d68df598db08dfced8b4707755864a0492Ying Wang 180951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_SYNC_HOR_HIGH_ACT 1 181951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_SYNC_VERT_HIGH_ACT 2 182951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_SYNC_EXT 4 183951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_SYNC_COMP_HIGH_ACT 8 184951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_SYNC_BROADCAST 16 185951a39d68df598db08dfced8b4707755864a0492Ying Wang 186951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_SYNC_ON_GREEN 32 187951a39d68df598db08dfced8b4707755864a0492Ying Wang 188951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VMODE_NONINTERLACED 0 189951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VMODE_INTERLACED 1 190951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VMODE_DOUBLE 2 191951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VMODE_MASK 255 192951a39d68df598db08dfced8b4707755864a0492Ying Wang 193951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VMODE_YWRAP 256 194951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VMODE_SMOOTH_XPAN 512 195951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VMODE_CONUPDATE 512 196951a39d68df598db08dfced8b4707755864a0492Ying Wang 197951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ROTATE_UR 0 198951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ROTATE_CW 1 199951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ROTATE_UD 2 200951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_ROTATE_CCW 3 201951a39d68df598db08dfced8b4707755864a0492Ying Wang 202951a39d68df598db08dfced8b4707755864a0492Ying Wang#define PICOS2KHZ(a) (1000000000UL/(a)) 203951a39d68df598db08dfced8b4707755864a0492Ying Wang#define KHZ2PICOS(a) (1000000000UL/(a)) 204951a39d68df598db08dfced8b4707755864a0492Ying Wang 205951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct fb_var_screeninfo { 206951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 xres; 207951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 yres; 208951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 xres_virtual; 209951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 yres_virtual; 210951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 xoffset; 211951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 yoffset; 212951a39d68df598db08dfced8b4707755864a0492Ying Wang 213951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 bits_per_pixel; 214951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 grayscale; 215951a39d68df598db08dfced8b4707755864a0492Ying Wang 216951a39d68df598db08dfced8b4707755864a0492Ying Wang struct fb_bitfield red; 217951a39d68df598db08dfced8b4707755864a0492Ying Wang struct fb_bitfield green; 218951a39d68df598db08dfced8b4707755864a0492Ying Wang struct fb_bitfield blue; 219951a39d68df598db08dfced8b4707755864a0492Ying Wang struct fb_bitfield transp; 220951a39d68df598db08dfced8b4707755864a0492Ying Wang 221951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 nonstd; 222951a39d68df598db08dfced8b4707755864a0492Ying Wang 223951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 activate; 224951a39d68df598db08dfced8b4707755864a0492Ying Wang 225951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 height; 226951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 width; 227951a39d68df598db08dfced8b4707755864a0492Ying Wang 228951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 accel_flags; 229951a39d68df598db08dfced8b4707755864a0492Ying Wang 230951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 pixclock; 231951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 left_margin; 232951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 right_margin; 233951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 upper_margin; 234951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 lower_margin; 235951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 hsync_len; 236951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 vsync_len; 237951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 sync; 238951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 vmode; 239951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 rotate; 240951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 reserved[5]; 241951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 242951a39d68df598db08dfced8b4707755864a0492Ying Wang 243951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct fb_cmap { 244951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 start; 245951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 len; 246951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 *red; 247951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 *green; 248951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 *blue; 249951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 *transp; 250951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 251951a39d68df598db08dfced8b4707755864a0492Ying Wang 252951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct fb_con2fbmap { 253951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 console; 254951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 framebuffer; 255951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 256951a39d68df598db08dfced8b4707755864a0492Ying Wang 257951a39d68df598db08dfced8b4707755864a0492Ying Wang#define VESA_NO_BLANKING 0 258951a39d68df598db08dfced8b4707755864a0492Ying Wang#define VESA_VSYNC_SUSPEND 1 259951a39d68df598db08dfced8b4707755864a0492Ying Wang#define VESA_HSYNC_SUSPEND 2 260951a39d68df598db08dfced8b4707755864a0492Ying Wang#define VESA_POWERDOWN 3 261951a39d68df598db08dfced8b4707755864a0492Ying Wang 262951a39d68df598db08dfced8b4707755864a0492Ying Wangenum { 263951a39d68df598db08dfced8b4707755864a0492Ying Wang 264951a39d68df598db08dfced8b4707755864a0492Ying Wang FB_BLANK_UNBLANK = VESA_NO_BLANKING, 265951a39d68df598db08dfced8b4707755864a0492Ying Wang 266951a39d68df598db08dfced8b4707755864a0492Ying Wang FB_BLANK_NORMAL = VESA_NO_BLANKING + 1, 267951a39d68df598db08dfced8b4707755864a0492Ying Wang 268951a39d68df598db08dfced8b4707755864a0492Ying Wang FB_BLANK_VSYNC_SUSPEND = VESA_VSYNC_SUSPEND + 1, 269951a39d68df598db08dfced8b4707755864a0492Ying Wang 270951a39d68df598db08dfced8b4707755864a0492Ying Wang FB_BLANK_HSYNC_SUSPEND = VESA_HSYNC_SUSPEND + 1, 271951a39d68df598db08dfced8b4707755864a0492Ying Wang 272951a39d68df598db08dfced8b4707755864a0492Ying Wang FB_BLANK_POWERDOWN = VESA_POWERDOWN + 1 273951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 274951a39d68df598db08dfced8b4707755864a0492Ying Wang 275951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VBLANK_VBLANKING 0x001 276951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VBLANK_HBLANKING 0x002 277951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VBLANK_HAVE_VBLANK 0x004 278951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VBLANK_HAVE_HBLANK 0x008 279951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VBLANK_HAVE_COUNT 0x010 280951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VBLANK_HAVE_VCOUNT 0x020 281951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VBLANK_HAVE_HCOUNT 0x040 282951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VBLANK_VSYNCING 0x080 283951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_VBLANK_HAVE_VSYNC 0x100 284951a39d68df598db08dfced8b4707755864a0492Ying Wang 285951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct fb_vblank { 286951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 flags; 287951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 count; 288951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 vcount; 289951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 hcount; 290951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 reserved[4]; 291951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 292951a39d68df598db08dfced8b4707755864a0492Ying Wang 293951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ROP_COPY 0 294951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ROP_XOR 1 295951a39d68df598db08dfced8b4707755864a0492Ying Wang 296951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct fb_copyarea { 297951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 dx; 298951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 dy; 299951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 width; 300951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 height; 301951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 sx; 302951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 sy; 303951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 304951a39d68df598db08dfced8b4707755864a0492Ying Wang 305951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct fb_fillrect { 306951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 dx; 307951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 dy; 308951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 width; 309951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 height; 310951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 color; 311951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 rop; 312951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 313951a39d68df598db08dfced8b4707755864a0492Ying Wang 314951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct fb_image { 315951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 dx; 316951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 dy; 317951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 width; 318951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 height; 319951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 fg_color; 320951a39d68df598db08dfced8b4707755864a0492Ying Wang __u32 bg_color; 321951a39d68df598db08dfced8b4707755864a0492Ying Wang __u8 depth; 322951a39d68df598db08dfced8b4707755864a0492Ying Wang const char *data; 323951a39d68df598db08dfced8b4707755864a0492Ying Wang struct fb_cmap cmap; 324951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 325951a39d68df598db08dfced8b4707755864a0492Ying Wang 326951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_CUR_SETIMAGE 0x01 327951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_CUR_SETPOS 0x02 328951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_CUR_SETHOT 0x04 329951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_CUR_SETCMAP 0x08 330951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_CUR_SETSHAPE 0x10 331951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_CUR_SETSIZE 0x20 332951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FB_CUR_SETALL 0xFF 333951a39d68df598db08dfced8b4707755864a0492Ying Wang 334951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct fbcurpos { 335951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 x, y; 336951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 337951a39d68df598db08dfced8b4707755864a0492Ying Wang 338951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct fb_cursor { 339951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 set; 340951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 enable; 341951a39d68df598db08dfced8b4707755864a0492Ying Wang __u16 rop; 342951a39d68df598db08dfced8b4707755864a0492Ying Wang const char *mask; 343951a39d68df598db08dfced8b4707755864a0492Ying Wang struct fbcurpos hot; 344951a39d68df598db08dfced8b4707755864a0492Ying Wang struct fb_image image; 345951a39d68df598db08dfced8b4707755864a0492Ying Wang}; 346951a39d68df598db08dfced8b4707755864a0492Ying Wang 347951a39d68df598db08dfced8b4707755864a0492Ying Wang#endif 348