linux/include/uapi/linux/fb.h

/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
#ifndef _UAPI_LINUX_FB_H
#define _UAPI_LINUX_FB_H

#include <linux/types.h>
#include <linux/i2c.h>
#include <linux/vesa.h>

/* Definitions of frame buffers						*/

#define FB_MAX

/* ioctls
   0x46 is 'F'								*/
#define FBIOGET_VSCREENINFO
#define FBIOPUT_VSCREENINFO
#define FBIOGET_FSCREENINFO
#define FBIOGETCMAP
#define FBIOPUTCMAP
#define FBIOPAN_DISPLAY
#ifndef __KERNEL__
#define FBIO_CURSOR
#endif
/* 0x4607-0x460B are defined below */
/* #define FBIOGET_MONITORSPEC	0x460C */
/* #define FBIOPUT_MONITORSPEC	0x460D */
/* #define FBIOSWITCH_MONIBIT	0x460E */
#define FBIOGET_CON2FBMAP
#define FBIOPUT_CON2FBMAP
#define FBIOBLANK
#define FBIOGET_VBLANK
#define FBIO_ALLOC
#define FBIO_FREE
#define FBIOGET_GLYPH
#define FBIOGET_HWCINFO
#define FBIOPUT_MODEINFO
#define FBIOGET_DISPINFO
#define FBIO_WAITFORVSYNC

#define FB_TYPE_PACKED_PIXELS
#define FB_TYPE_PLANES
#define FB_TYPE_INTERLEAVED_PLANES
#define FB_TYPE_TEXT
#define FB_TYPE_VGA_PLANES
#define FB_TYPE_FOURCC

#define FB_AUX_TEXT_MDA
#define FB_AUX_TEXT_CGA
#define FB_AUX_TEXT_S3_MMIO
#define FB_AUX_TEXT_MGA_STEP16
#define FB_AUX_TEXT_MGA_STEP8
#define FB_AUX_TEXT_SVGA_GROUP
#define FB_AUX_TEXT_SVGA_MASK
#define FB_AUX_TEXT_SVGA_STEP2
#define FB_AUX_TEXT_SVGA_STEP4
#define FB_AUX_TEXT_SVGA_STEP8
#define FB_AUX_TEXT_SVGA_STEP16
#define FB_AUX_TEXT_SVGA_LAST

#define FB_AUX_VGA_PLANES_VGA4
#define FB_AUX_VGA_PLANES_CFB4
#define FB_AUX_VGA_PLANES_CFB8

#define FB_VISUAL_MONO01
#define FB_VISUAL_MONO10
#define FB_VISUAL_TRUECOLOR
#define FB_VISUAL_PSEUDOCOLOR
#define FB_VISUAL_DIRECTCOLOR
#define FB_VISUAL_STATIC_PSEUDOCOLOR
#define FB_VISUAL_FOURCC

#define FB_ACCEL_NONE
#define FB_ACCEL_ATARIBLITT
#define FB_ACCEL_AMIGABLITT
#define FB_ACCEL_S3_TRIO64
#define FB_ACCEL_NCR_77C32BLT
#define FB_ACCEL_S3_VIRGE
#define FB_ACCEL_ATI_MACH64GX
#define FB_ACCEL_DEC_TGA
#define FB_ACCEL_ATI_MACH64CT
#define FB_ACCEL_ATI_MACH64VT
#define FB_ACCEL_ATI_MACH64GT
#define FB_ACCEL_SUN_CREATOR
#define FB_ACCEL_SUN_CGSIX
#define FB_ACCEL_SUN_LEO
#define FB_ACCEL_IMS_TWINTURBO
#define FB_ACCEL_3DLABS_PERMEDIA2
#define FB_ACCEL_MATROX_MGA2064W
#define FB_ACCEL_MATROX_MGA1064SG
#define FB_ACCEL_MATROX_MGA2164W
#define FB_ACCEL_MATROX_MGA2164W_AGP
#define FB_ACCEL_MATROX_MGAG100
#define FB_ACCEL_MATROX_MGAG200
#define FB_ACCEL_SUN_CG14
#define FB_ACCEL_SUN_BWTWO
#define FB_ACCEL_SUN_CGTHREE
#define FB_ACCEL_SUN_TCX
#define FB_ACCEL_MATROX_MGAG400
#define FB_ACCEL_NV3
#define FB_ACCEL_NV4
#define FB_ACCEL_NV5
#define FB_ACCEL_CT_6555x
#define FB_ACCEL_3DFX_BANSHEE
#define FB_ACCEL_ATI_RAGE128
#define FB_ACCEL_IGS_CYBER2000
#define FB_ACCEL_IGS_CYBER2010
#define FB_ACCEL_IGS_CYBER5000
#define FB_ACCEL_SIS_GLAMOUR
#define FB_ACCEL_3DLABS_PERMEDIA3
#define FB_ACCEL_ATI_RADEON
#define FB_ACCEL_I810
#define FB_ACCEL_SIS_GLAMOUR_2
#define FB_ACCEL_SIS_XABRE
#define FB_ACCEL_I830
#define FB_ACCEL_NV_10
#define FB_ACCEL_NV_20
#define FB_ACCEL_NV_30
#define FB_ACCEL_NV_40
#define FB_ACCEL_XGI_VOLARI_V
#define FB_ACCEL_XGI_VOLARI_Z
#define FB_ACCEL_OMAP1610
#define FB_ACCEL_TRIDENT_TGUI
#define FB_ACCEL_TRIDENT_3DIMAGE
#define FB_ACCEL_TRIDENT_BLADE3D
#define FB_ACCEL_TRIDENT_BLADEXP
#define FB_ACCEL_CIRRUS_ALPINE
#define FB_ACCEL_NEOMAGIC_NM2070
#define FB_ACCEL_NEOMAGIC_NM2090
#define FB_ACCEL_NEOMAGIC_NM2093
#define FB_ACCEL_NEOMAGIC_NM2097
#define FB_ACCEL_NEOMAGIC_NM2160
#define FB_ACCEL_NEOMAGIC_NM2200
#define FB_ACCEL_NEOMAGIC_NM2230
#define FB_ACCEL_NEOMAGIC_NM2360
#define FB_ACCEL_NEOMAGIC_NM2380
#define FB_ACCEL_PXA3XX

#define FB_ACCEL_SAVAGE4
#define FB_ACCEL_SAVAGE3D
#define FB_ACCEL_SAVAGE3D_MV
#define FB_ACCEL_SAVAGE2000
#define FB_ACCEL_SAVAGE_MX_MV
#define FB_ACCEL_SAVAGE_MX
#define FB_ACCEL_SAVAGE_IX_MV
#define FB_ACCEL_SAVAGE_IX
#define FB_ACCEL_PROSAVAGE_PM
#define FB_ACCEL_PROSAVAGE_KM
#define FB_ACCEL_S3TWISTER_P
#define FB_ACCEL_S3TWISTER_K
#define FB_ACCEL_SUPERSAVAGE
#define FB_ACCEL_PROSAVAGE_DDR
#define FB_ACCEL_PROSAVAGE_DDRK

#define FB_ACCEL_PUV3_UNIGFX

#define FB_CAP_FOURCC

struct fb_fix_screeninfo {};

/* Interpretation of offset for color fields: All offsets are from the right,
 * inside a "pixel" value, which is exactly 'bits_per_pixel' wide (means: you
 * can use the offset as right argument to <<). A pixel afterwards is a bit
 * stream and is written to video memory as that unmodified.
 *
 * For pseudocolor: offset and length should be the same for all color
 * components. Offset specifies the position of the least significant bit
 * of the palette index in a pixel value. Length indicates the number
 * of available palette entries (i.e. # of entries = 1 << length).
 */
struct fb_bitfield {};

#define FB_NONSTD_HAM
#define FB_NONSTD_REV_PIX_IN_B

#define FB_ACTIVATE_NOW
#define FB_ACTIVATE_NXTOPEN
#define FB_ACTIVATE_TEST
#define FB_ACTIVATE_MASK
					/* values			*/
#define FB_ACTIVATE_VBL
#define FB_CHANGE_CMAP_VBL
#define FB_ACTIVATE_ALL
#define FB_ACTIVATE_FORCE
#define FB_ACTIVATE_INV_MODE
#define FB_ACTIVATE_KD_TEXT

#define FB_ACCELF_TEXT

#define FB_SYNC_HOR_HIGH_ACT
#define FB_SYNC_VERT_HIGH_ACT
#define FB_SYNC_EXT
#define FB_SYNC_COMP_HIGH_ACT
#define FB_SYNC_BROADCAST
					/* vtotal = 144d/288n/576i => PAL  */
					/* vtotal = 121d/242n/484i => NTSC */
#define FB_SYNC_ON_GREEN

#define FB_VMODE_NONINTERLACED
#define FB_VMODE_INTERLACED
#define FB_VMODE_DOUBLE
#define FB_VMODE_ODD_FLD_FIRST
#define FB_VMODE_MASK

#define FB_VMODE_YWRAP
#define FB_VMODE_SMOOTH_XPAN
#define FB_VMODE_CONUPDATE

/*
 * Display rotation support
 */
#define FB_ROTATE_UR
#define FB_ROTATE_CW
#define FB_ROTATE_UD
#define FB_ROTATE_CCW

#define PICOS2KHZ(a)
#define KHZ2PICOS(a)

struct fb_var_screeninfo {};

struct fb_cmap {};

struct fb_con2fbmap {};

enum {};

#define FB_VBLANK_VBLANKING
#define FB_VBLANK_HBLANKING
#define FB_VBLANK_HAVE_VBLANK
#define FB_VBLANK_HAVE_HBLANK
#define FB_VBLANK_HAVE_COUNT
#define FB_VBLANK_HAVE_VCOUNT
#define FB_VBLANK_HAVE_HCOUNT
#define FB_VBLANK_VSYNCING
#define FB_VBLANK_HAVE_VSYNC

struct fb_vblank {};

/* Internal HW accel */
#define ROP_COPY
#define ROP_XOR

struct fb_copyarea {};

struct fb_fillrect {};

struct fb_image {};

/*
 * hardware cursor control
 */

#define FB_CUR_SETIMAGE
#define FB_CUR_SETPOS
#define FB_CUR_SETHOT
#define FB_CUR_SETCMAP
#define FB_CUR_SETSHAPE
#define FB_CUR_SETSIZE
#define FB_CUR_SETALL

struct fbcurpos {};

struct fb_cursor {};

/* Settings for the generic backlight code */
#define FB_BACKLIGHT_LEVELS
#define FB_BACKLIGHT_MAX


#endif /* _UAPI_LINUX_FB_H */