0001
0002 #ifndef _UAPI_SCREEN_INFO_H
0003 #define _UAPI_SCREEN_INFO_H
0004
0005 #include <linux/types.h>
0006
0007
0008
0009
0010
0011 struct screen_info {
0012 __u8 orig_x;
0013 __u8 orig_y;
0014 __u16 ext_mem_k;
0015 __u16 orig_video_page;
0016 __u8 orig_video_mode;
0017 __u8 orig_video_cols;
0018 __u8 flags;
0019 __u8 unused2;
0020 __u16 orig_video_ega_bx;
0021 __u16 unused3;
0022 __u8 orig_video_lines;
0023 __u8 orig_video_isVGA;
0024 __u16 orig_video_points;
0025
0026
0027 __u16 lfb_width;
0028 __u16 lfb_height;
0029 __u16 lfb_depth;
0030 __u32 lfb_base;
0031 __u32 lfb_size;
0032 __u16 cl_magic, cl_offset;
0033 __u16 lfb_linelength;
0034 __u8 red_size;
0035 __u8 red_pos;
0036 __u8 green_size;
0037 __u8 green_pos;
0038 __u8 blue_size;
0039 __u8 blue_pos;
0040 __u8 rsvd_size;
0041 __u8 rsvd_pos;
0042 __u16 vesapm_seg;
0043 __u16 vesapm_off;
0044 __u16 pages;
0045 __u16 vesa_attributes;
0046 __u32 capabilities;
0047 __u32 ext_lfb_base;
0048 __u8 _reserved[2];
0049 } __attribute__((packed));
0050
0051 #define VIDEO_TYPE_MDA 0x10
0052 #define VIDEO_TYPE_CGA 0x11
0053 #define VIDEO_TYPE_EGAM 0x20
0054 #define VIDEO_TYPE_EGAC 0x21
0055 #define VIDEO_TYPE_VGAC 0x22
0056 #define VIDEO_TYPE_VLFB 0x23
0057
0058 #define VIDEO_TYPE_PICA_S3 0x30
0059 #define VIDEO_TYPE_MIPS_G364 0x31
0060 #define VIDEO_TYPE_SGI 0x33
0061
0062 #define VIDEO_TYPE_TGAC 0x40
0063
0064 #define VIDEO_TYPE_SUN 0x50
0065 #define VIDEO_TYPE_SUNPCI 0x51
0066
0067 #define VIDEO_TYPE_PMAC 0x60
0068
0069 #define VIDEO_TYPE_EFI 0x70
0070
0071 #define VIDEO_FLAGS_NOCURSOR (1 << 0)
0072
0073 #define VIDEO_CAPABILITY_SKIP_QUIRKS (1 << 0)
0074 #define VIDEO_CAPABILITY_64BIT_BASE (1 << 1)
0075
0076 #endif