111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert/**************************************************************************** 211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert **************************************************************************** 311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** This header was automatically generated from a Linux kernel header 511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** of the same name, to make information necessary for userspace to 611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** call into the kernel available to libc. It contains only constants, 711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** structures, and macros generated from the original header, and thus, 811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** contains no copyrightable information. 911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert *** 1011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert **************************************************************************** 1111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert ****************************************************************************/ 1211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#ifndef _LINUX_KD_H 1311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define _LINUX_KD_H 1411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#include <linux/types.h> 1511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#include <linux/compiler.h> 1611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 1711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define GIO_FONT 0x4B60 1811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PIO_FONT 0x4B61 1911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 2011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define GIO_FONTX 0x4B6B 2111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PIO_FONTX 0x4B6C 2211cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct consolefontdesc { 2311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short charcount; 2411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short charheight; 2511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert char __user *chardata; 2611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 2711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 2811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PIO_FONTRESET 0x4B6D 2911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 3011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define GIO_CMAP 0x4B70 3111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PIO_CMAP 0x4B71 3211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 3311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KIOCSOUND 0x4B2F 3411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDMKTONE 0x4B30 3511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 3611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGETLED 0x4B31 3711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSETLED 0x4B32 3811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define LED_SCR 0x01 3911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define LED_NUM 0x02 4011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define LED_CAP 0x04 4111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 4211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGKBTYPE 0x4B33 4311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KB_84 0x01 4411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KB_101 0x02 4511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KB_OTHER 0x03 4611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 4711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDADDIO 0x4B34 4811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDDELIO 0x4B35 4911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDENABIO 0x4B36 5011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDDISABIO 0x4B37 5111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 5211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSETMODE 0x4B3A 5311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_TEXT 0x00 5411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_GRAPHICS 0x01 5511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_TEXT0 0x02 5611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_TEXT1 0x03 5711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGETMODE 0x4B3B 5811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 5911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDMAPDISP 0x4B3C 6011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDUNMAPDISP 0x4B3D 6111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 6211cd02dfb91661c65134cac258cf5924270e9d2Dan Alberttypedef char scrnmap_t; 6311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define E_TABSZ 256 6411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define GIO_SCRNMAP 0x4B40 6511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PIO_SCRNMAP 0x4B41 6611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define GIO_UNISCRNMAP 0x4B69 6711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PIO_UNISCRNMAP 0x4B6A 6811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 6911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define GIO_UNIMAP 0x4B66 7011cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct unipair { 7111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short unicode; 7211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short fontpos; 7311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 7411cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct unimapdesc { 7511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short entry_ct; 7611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert struct unipair __user *entries; 7711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 7811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PIO_UNIMAP 0x4B67 7911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define PIO_UNIMAPCLR 0x4B68 8011cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct unimapinit { 8111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short advised_hashsize; 8211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short advised_hashstep; 8311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short advised_hashlevel; 8411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 8511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 8611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define UNI_DIRECT_BASE 0xF000 8711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define UNI_DIRECT_MASK 0x01FF 8811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 8911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_RAW 0x00 9011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_XLATE 0x01 9111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_MEDIUMRAW 0x02 9211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_UNICODE 0x03 9311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGKBMODE 0x4B44 9411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSKBMODE 0x4B45 9511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 9611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_METABIT 0x03 9711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_ESCPREFIX 0x04 9811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGKBMETA 0x4B62 9911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSKBMETA 0x4B63 10011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 10111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_SCROLLLOCK 0x01 10211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_NUMLOCK 0x02 10311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_CAPSLOCK 0x04 10411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGKBLED 0x4B64 10511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSKBLED 0x4B65 10611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 10711cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct kbentry { 10811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char kb_table; 10911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char kb_index; 11011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned short kb_value; 11111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 11211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_NORMTAB 0x00 11311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_SHIFTTAB 0x01 11411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_ALTTAB 0x02 11511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define K_ALTSHIFTTAB 0x03 11611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 11711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGKBENT 0x4B46 11811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSKBENT 0x4B47 11911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 12011cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct kbsentry { 12111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char kb_func; 12211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char kb_string[512]; 12311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 12411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGKBSENT 0x4B48 12511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSKBSENT 0x4B49 12611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 12711cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct kbdiacr { 12811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char diacr, base, result; 12911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 13011cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct kbdiacrs { 13111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int kb_cnt; 13211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert struct kbdiacr kbdiacr[256]; 13311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 13411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGKBDIACR 0x4B4A 13511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSKBDIACR 0x4B4B 13611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 13711cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct kbkeycode { 13811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int scancode, keycode; 13911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 14011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDGETKEYCODE 0x4B4C 14111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSETKEYCODE 0x4B4D 14211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 14311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDSIGACCEPT 0x4B4E 14411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 14511cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct kbd_repeat { 14611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int delay; 14711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert int period; 14811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 14911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 15011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 15111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDKBDREP 0x4B52 15211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 15311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KDFONTOP 0x4B72 15411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 15511cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct console_font_op { 15611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int op; 15711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int flags; 15811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int width, height; 15911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int charcount; 16011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char __user *data; 16111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 16211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 16311cd02dfb91661c65134cac258cf5924270e9d2Dan Albertstruct console_font { 16411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int width, height; 16511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned int charcount; 16611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert unsigned char *data; 16711cd02dfb91661c65134cac258cf5924270e9d2Dan Albert}; 16811cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 16911cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_FONT_OP_SET 0 17011cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_FONT_OP_GET 1 17111cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_FONT_OP_SET_DEFAULT 2 17211cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_FONT_OP_COPY 3 17311cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 17411cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#define KD_FONT_FLAG_DONT_RECALC 1 17511cd02dfb91661c65134cac258cf5924270e9d2Dan Albert 17611cd02dfb91661c65134cac258cf5924270e9d2Dan Albert#endif 177