| 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 | |
| 12 | struct 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 | |
| 23 | typedef 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) |
| 35 | struct 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) |
| 42 | struct 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 | |
| 79 | struct 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_ */ |