1/* $NetBSD: wsdisplay_usl_io.h,v 1.5 2019/02/26 10:30:28 msaitoh Exp $ */
2
3#ifndef _DEV_WSCONS_WSDISPLAY_USL_IO_H_
4#define _DEV_WSCONS_WSDISPLAY_USL_IO_H_
5
6#include <sys/ioccom.h>
7
8#define VT_OPENQRY _IOR('v', 1, int)
9#define VT_SETMODE _IOW('v', 2, vtmode_t)
10#define VT_GETMODE _IOR('v', 3, vtmode_t)
11
12struct vt_mode {
13 char mode;
14#define VT_AUTO 0 /* switching controlled by drvr */
15#define VT_PROCESS 1 /* switching controlled by prog */
16
17 char waitv; /* not implemented yet SOS */
18 short relsig;
19 short acqsig;
20 short frsig; /* not implemented yet SOS */
21};
22
23typedef struct vt_mode vtmode_t;
24
25#define VT_RELDISP _IO('v', 4)
26#define VT_FALSE 0 /* release of VT refused */
27#define VT_TRUE 1 /* VT released */
28#define VT_ACKACQ 2 /* acknowledging VT acquiration */
29
30#define VT_ACTIVATE _IO('v', 5)
31#define VT_WAITACTIVE _IO('v', 6)
32#define VT_GETACTIVE _IOR('v', 7, int)
33
34#define VT_GETSTATE _IOR('v', 100, struct vt_stat)
35struct vt_stat {
36 unsigned short v_active; /* active vt */
37 unsigned short v_signal; /* signal to send */
38 unsigned short v_state; /* vt bitmask */
39};
40
41#define KDGETKBENT _IOWR('K', 4, struct kbentry)
42struct kbentry {
43 unchar kb_table; /* which table to use */
44 unchar kb_index; /* which entry in table */
45 ushort kb_value; /* value to get/set in table */
46};
47
48#define KDGKBMODE _IOR('K', 6, int) /* get keyboard mode */
49
50#define KDSKBMODE _IO('K', 7) /* set keyboard mode */
51#define K_RAW 0 /* kbd switched to raw mode */
52#define K_XLATE 1 /* kbd switched to "normal" mode */
53
54#define KDMKTONE _IO('K', 8)
55
56#define KDSETMODE _IO('K', 10)
57#define KD_TEXT 0 /* set text mode restore fonts */
58#define KD_GRAPHICS 1 /* set graphics mode */
59
60#define KDENABIO _IO('K', 60) /* only allowed if euid == 0 */
61#define KDDISABIO _IO('K', 61)
62
63#define KDGKBTYPE _IOR('K', 64, char)
64#define KB_84 1
65#define KB_101 2
66#define KB_OTHER 3
67
68#define KDGETLED _IOR('K', 65, int)
69#define KDSETLED _IO('K', 66)
70#define LED_CAP 1
71#define LED_NUM 2
72#define LED_SCR 4
73
74#define KDSETRAD _IO('K', 67)
75
76/* pcvt compatibility */
77#define VGAPCVTID _IOWR('V', 113, struct pcvtid) /* get driver id */
78
79struct pcvtid {
80#define PCVTIDNAMELN 16 /* driver id - string length */
81 char name[PCVTIDNAMELN]; /* driver name */
82 int rmajor; /* revision number, major */
83 int rminor; /* revision number, minor */
84};
85
86/* syscons compatibility */
87#define CONS_GETVERS _IOR('c', 74, int)
88
89#endif /* _DEV_WSCONS_WSDISPLAY_USL_IO_H_ */
90