OSDN Git Service

776f3b2df06e1f54702999ae78d032bf63eddbac
[linuxjm/LDP_man-pages.git] / original / man4 / console_ioctl.4
1 .\" Copyright (c) 1995 Jim Van Zandt <jrv@vanzandt.mv.com> and aeb
2 .\" Sun Feb 26 11:46:23 MET 1995
3 .\"
4 .\" %%%LICENSE_START(GPLv2+_DOC_FULL)
5 .\" This is free documentation; you can redistribute it and/or
6 .\" modify it under the terms of the GNU General Public License as
7 .\" published by the Free Software Foundation; either version 2 of
8 .\" the License, or (at your option) any later version.
9 .\"
10 .\" The GNU General Public License's references to "object code"
11 .\" and "executables" are to be interpreted as the output of any
12 .\" document formatting or typesetting system, including
13 .\" intermediate and printed output.
14 .\"
15 .\" This manual is distributed in the hope that it will be useful,
16 .\" but WITHOUT ANY WARRANTY; without even the implied warranty of
17 .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 .\" GNU General Public License for more details.
19 .\"
20 .\" You should have received a copy of the GNU General Public
21 .\" License along with this manual; if not, see
22 .\" <http://www.gnu.org/licenses/>.
23 .\" %%%LICENSE_END
24 .\"
25 .\" Modified, Sun Feb 26 15:04:20 1995, faith@cs.unc.edu
26 .\" Modified, Thu Apr 20 22:08:17 1995, jrv@vanzandt.mv.com
27 .\" Modified, Mon Sep 18 22:32:47 1995, hpa@storm.net (H. Peter Anvin)
28 .\" FIXME The following are not documented:
29 .\"     KDFONTOP (since 2.1.111)
30 .\"     KDGKBDIACRUC (since 2.6.24)
31 .\"     KDSKBDIACR
32 .\"     KDSKBDIACRUC (since 2.6.24)
33 .\"     KDKBDREP (since 2.1.113)
34 .\"     KDMAPDISP (not implemented as at 2.6.27)
35 .\"     KDUNMAPDISP (not implemented as at 2.6.27)
36 .\"     VT_LOCKSWITCH (since 1.3.47, needs CAP_SYS_TTY_CONFIG)
37 .\"     VT_UNLOCKSWITCH (since 1.3.47, needs CAP_SYS_TTY_CONFIG)
38 .\"     VT_GETHIFONTMASK (since 2.6.18)
39 .\"
40 .TH CONSOLE_IOCTL 4 2009-02-28 "Linux" "Linux Programmer's Manual"
41 .SH NAME
42 console_ioctl \- ioctls for console terminal and virtual consoles
43 .SH DESCRIPTION
44 The following Linux-specific
45 .BR ioctl (2)
46 requests are supported.
47 Each requires a third argument, assumed here to be
48 .IR argp .
49 .TP
50 .B KDGETLED
51 Get state of LEDs.
52 .I argp
53 points to a
54 .IR char .
55 The lower three bits
56 of
57 .I *argp
58 are set to the state of the LEDs, as follows:
59 .TS
60 l l l.
61 LED_CAP         0x04    caps lock led
62 LEC_NUM         0x02    num lock led
63 LED_SCR         0x01    scroll lock led
64 .TE
65 .TP
66 .B KDSETLED
67 Set the LEDs.
68 The LEDs are set to correspond to the lower three bits of
69 .IR argp .
70 However, if a higher order bit is set,
71 the LEDs revert to normal: displaying the state of the
72 keyboard functions of caps lock, num lock, and scroll lock.
73 .LP
74 Before 1.1.54, the LEDs just reflected the state of the corresponding
75 keyboard flags, and KDGETLED/KDSETLED would also change the keyboard
76 flags.
77 Since 1.1.54 the LEDs can be made to display arbitrary
78 information, but by default they display the keyboard flags.
79 The following two ioctls are used to access the keyboard flags.
80 .TP
81 .B KDGKBLED
82 Get keyboard flags CapsLock, NumLock, ScrollLock (not lights).
83 .I argp
84 points to a char which is set to the flag state.
85 The low order three bits (mask 0x7) get the current flag state,
86 and the low order bits of the next nibble (mask 0x70) get
87 the default flag state.
88 (Since 1.1.54.)
89 .TP
90 .B KDSKBLED
91 Set keyboard flags CapsLock, NumLock, ScrollLock (not lights).
92 .I argp
93 has the desired flag state.
94 The low order three bits (mask 0x7) have the flag state,
95 and the low order bits of the next nibble (mask 0x70) have
96 the default flag state.
97 (Since 1.1.54.)
98 .TP
99 .B KDGKBTYPE
100 Get keyboard type.
101 This returns the value KB_101, defined as 0x02.
102 .TP
103 .B KDADDIO
104 Add I/O port as valid.
105 Equivalent to
106 .IR ioperm(arg,1,1) .
107 .TP
108 .B KDDELIO
109 Delete I/O port as valid.
110 Equivalent to
111 .IR ioperm(arg,1,0) .
112 .TP
113 .B KDENABIO
114 Enable I/O to video board.
115 Equivalent to
116 .IR "ioperm(0x3b4, 0x3df-0x3b4+1, 1)" .
117 .TP
118 .B KDDISABIO
119 Disable I/O to video board.
120 Equivalent to
121 .IR "ioperm(0x3b4, 0x3df-0x3b4+1, 0)" .
122 .TP
123 .B KDSETMODE
124 Set text/graphics mode.
125 .I argp
126 is one of these:
127
128 .TS
129 l l.
130 KD_TEXT 0x00
131 KD_GRAPHICS     0x01
132 .TE
133 .TP
134 .B KDGETMODE
135 Get text/graphics mode.
136 .I argp
137 points to a
138 .I long
139 which is set to one
140 of the above values.
141 .TP
142 .B KDMKTONE
143 Generate tone of specified length.
144 The lower 16 bits of
145 .I argp
146 specify the period in clock cycles,
147 and the upper 16 bits give the duration in msec.
148 If the duration is zero, the sound is turned off.
149 Control returns immediately.
150 For example,
151 .I argp
152 = (125<<16) + 0x637 would specify
153 the beep normally associated with a ctrl-G.
154 (Thus since 0.99pl1; broken in 2.1.49-50.)
155 .TP
156 .B KIOCSOUND
157 Start or stop sound generation.
158 The lower 16 bits of
159 .I argp
160 specify the period in clock cycles
161 (that is,
162 .I argp
163 = 1193180/frequency).
164 .I argp
165 = 0 turns sound off.
166 In either case, control returns immediately.
167 .TP
168 .B GIO_CMAP
169 Get the current default color map from kernel.
170 .I argp
171 points to
172 a 48-byte array.
173 (Since 1.3.3.)
174 .TP
175 .B PIO_CMAP
176 Change the default text-mode color map.
177 .I argp
178 points to a
179 48-byte array which contains, in order, the Red, Green, and Blue
180 values for the 16 available screen colors: 0 is off, and 255 is full
181 intensity.
182 The default colors are, in order: black, dark red, dark
183 green, brown, dark blue, dark purple, dark cyan, light grey, dark
184 grey, bright red, bright green, yellow, bright blue, bright purple,
185 bright cyan and white.
186 (Since 1.3.3.)
187 .TP
188 .B GIO_FONT
189 Gets 256-character screen font in expanded form.
190 .I argp
191 points to an 8192 byte array.
192 Fails with error code
193 .B EINVAL
194 if the
195 currently loaded font is a 512-character font, or if the console is
196 not in text mode.
197 .TP
198 .B GIO_FONTX
199 Gets screen font and associated information.
200 .I argp
201 points to a
202 .I "struct consolefontdesc"
203 (see
204 .BR PIO_FONTX ).
205 On call, the
206 .I charcount
207 field should be set to the maximum number of
208 characters that would fit in the buffer pointed to by
209 .IR chardata .
210 On return, the
211 .I charcount
212 and
213 .I charheight
214 are filled with
215 the respective data for the currently loaded font, and the
216 .I chardata
217 array contains the font data if the initial value of
218 .I charcount
219 indicated enough space was available; otherwise the
220 buffer is untouched and
221 .I errno
222 is set to
223 .BR ENOMEM .
224 (Since 1.3.1.)
225 .TP
226 .B PIO_FONT
227 Sets 256-character screen font.
228 Load font into the EGA/VGA character
229 generator.
230 .I argp
231 points to a 8192 byte map, with 32 bytes per
232 character.
233 Only the first
234 .I N
235 of them are used for an 8x\fIN\fP font
236 (0 <
237 .I N
238 <= 32).
239 This call also invalidates the Unicode mapping.
240 .TP
241 .B PIO_FONTX
242 Sets screen font and associated rendering information.
243 .I argp
244 points to a
245
246 .in +4n
247 .nf
248 struct consolefontdesc {
249     unsigned short charcount;  /* characters in font
250                                   (256 or 512) */
251     unsigned short charheight; /* scan lines per
252                                   character (1-32) */
253     char          *chardata;   /* font data in
254                                   expanded form */
255 };
256 .fi
257 .in
258
259 If necessary, the screen will be appropriately resized, and
260 .B SIGWINCH
261 sent to the appropriate processes.
262 This call also invalidates the Unicode mapping.
263 (Since 1.3.1.)
264 .TP
265 .B PIO_FONTRESET
266 Resets the screen font, size and Unicode mapping to the bootup
267 defaults.
268 .I argp
269 is unused, but should be set to NULL to
270 ensure compatibility with future versions of Linux.
271 (Since 1.3.28.)
272 .TP
273 .B GIO_SCRNMAP
274 Get screen mapping from kernel.
275 .I argp
276 points to an area of size
277 E_TABSZ, which is loaded with the font positions used to display each
278 character.
279 This call is likely to return useless information if the
280 currently loaded font is more than 256 characters.
281 .TP
282 .B GIO_UNISCRNMAP
283 Get full Unicode screen mapping from kernel.
284 .I argp
285 points to an
286 area of size
287 .IR "E_TABSZ*sizeof(unsigned short)" ,
288 which is loaded with the
289 Unicodes each character represent.
290 A special set of Unicodes,
291 starting at U+F000, are used to represent "direct to font" mappings.
292 (Since 1.3.1.)
293 .TP
294 .B PIO_SCRNMAP
295 Loads the "user definable" (fourth) table in the kernel which maps
296 bytes into console screen symbols.
297 .I argp
298 points to an area of
299 size E_TABSZ.
300 .TP
301 .B PIO_UNISCRNMAP
302 Loads the "user definable" (fourth) table in the kernel which maps
303 bytes into Unicodes, which are then translated into screen symbols
304 according to the currently loaded Unicode-to-font map.
305 Special Unicodes starting at U+F000 can be used to map directly to the font
306 symbols.
307 (Since 1.3.1.)
308 .TP
309 .B GIO_UNIMAP
310 Get Unicode-to-font mapping from kernel.
311 .I argp
312 points to a
313
314 .in +4n
315 .nf
316 struct unimapdesc {
317     unsigned short  entry_ct;
318     struct unipair *entries;
319 };
320 .fi
321 .in
322
323 where
324 .I entries
325 points to an array of
326
327 .in +4n
328 .nf
329 struct unipair {
330     unsigned short unicode;
331     unsigned short fontpos;
332 };
333 .fi
334 .in
335
336 (Since 1.1.92.)
337 .TP
338 .B PIO_UNIMAP
339 Put unicode-to-font mapping in kernel.
340 .I argp
341 points to a
342 .IR "struct unimapdesc" .
343 (Since 1.1.92)
344 .TP
345 .B PIO_UNIMAPCLR
346 Clear table, possibly advise hash algorithm.
347 .I argp
348 points to a
349
350 .in +4n
351 .nf
352 struct unimapinit {
353     unsigned short advised_hashsize;  /* 0 if no opinion */
354     unsigned short advised_hashstep;  /* 0 if no opinion */
355     unsigned short advised_hashlevel; /* 0 if no opinion */
356 };
357 .fi
358 .in
359
360 (Since 1.1.92.)
361 .TP
362 .B KDGKBMODE
363 Gets current keyboard mode.
364 .I argp
365 points to a
366 .I long
367 which is set to one
368 of these:
369
370 .TS
371 l l.
372 K_RAW   0x00
373 K_XLATE 0x01
374 K_MEDIUMRAW     0x02
375 K_UNICODE       0x03
376 .TE
377 .TP
378 .B KDSKBMODE
379 Sets current keyboard mode.
380 .I argp
381 is a
382 .I long
383 equal to one of the above values.
384 .TP
385 .B KDGKBMETA
386 Gets meta key handling mode.
387 .I argp
388 points to a
389 .I long
390 which is
391 set to one of these:
392
393 .TS
394 l l l.
395 K_METABIT       0x03    set high order bit
396 K_ESCPREFIX     0x04    escape prefix
397 .TE
398 .TP
399 .B KDSKBMETA
400 Sets meta key handling mode.
401 .I argp
402 is a
403 .I long
404 equal to one of the above values.
405 .TP
406 .B KDGKBENT
407 Gets one entry in key translation table (keycode to action code).
408 .I argp
409 points to a
410
411 .in +4n
412 .nf
413 struct kbentry {
414     unsigned char  kb_table;
415     unsigned char  kb_index;
416     unsigned short kb_value;
417 };
418 .fi
419 .in
420
421 with the first two members filled in:
422 .I kb_table
423 selects the key table (0 <=
424 .I kb_table
425 < MAX_NR_KEYMAPS),
426 and
427 .IR kb_index
428 is the keycode (0 <=
429 .I kb_index
430 < NR_KEYS).
431 .I kb_value
432 is set to the corresponding action code,
433 or K_HOLE if there is no such key,
434 or K_NOSUCHMAP if
435 .I kb_table
436 is invalid.
437 .TP
438 .B KDSKBENT
439 Sets one entry in translation table.
440 .I argp
441 points to a
442 .IR "struct kbentry" .
443 .TP
444 .B KDGKBSENT
445 Gets one function key string.
446 .I argp
447 points to a
448
449 .in +4n
450 .nf
451 struct kbsentry {
452     unsigned char kb_func;
453     unsigned char kb_string[512];
454 };
455 .fi
456 .in
457
458 .I kb_string
459 is set to the (null-terminated) string corresponding to
460 the
461 .IR kb_func th
462 function key action code.
463 .TP
464 .B KDSKBSENT
465 Sets one function key string entry.
466 .I argp
467 points to a
468 .IR "struct kbsentry" .
469 .TP
470 .B KDGKBDIACR
471 Read kernel accent table.
472 .I argp
473 points to a
474
475 .in +4n
476 .nf
477 struct kbdiacrs {
478     unsigned int   kb_cnt;
479     struct kbdiacr kbdiacr[256];
480 };
481 .fi
482 .in
483
484 where
485 .I kb_cnt
486 is the number of entries in the array, each of which
487 is a
488
489 .in +4n
490 .nf
491 struct kbdiacr {
492     unsigned char diacr;
493     unsigned char base;
494     unsigned char result;
495 };
496 .fi
497 .in
498 .TP
499 .B KDGETKEYCODE
500 Read kernel keycode table entry (scan code to keycode).
501 .I argp
502 points to a
503
504 .in +4n
505 .nf
506 struct kbkeycode {
507     unsigned int scancode;
508     unsigned int keycode;
509 };
510 .fi
511 .in
512
513 .I keycode
514 is set to correspond to the given
515 .IR scancode .
516 (89 <=
517 .I scancode
518 <= 255 only.
519 For 1 <=
520 .I scancode
521 <= 88,
522 .IR keycode == scancode .)
523 (Since 1.1.63.)
524 .TP
525 .B KDSETKEYCODE
526 Write kernel keycode table entry.
527 .I argp
528 points to a
529 .IR "struct kbkeycode" .
530 (Since 1.1.63.)
531 .TP
532 .B KDSIGACCEPT
533 The calling process indicates its willingness to accept the signal
534 .I argp
535 when it is generated by pressing an appropriate key combination.
536 (1 <=
537 .I argp
538 <= NSIG).
539 (See
540 .IR spawn_console ()
541 in
542 .IR linux/drivers/char/keyboard.c .)
543 .TP
544 .B VT_OPENQRY
545 Returns the first available (non-opened) console.
546 .I argp
547 points to an
548 .I int
549 which is set to the
550 number of the vt (1 <=
551 .I *argp
552 <= MAX_NR_CONSOLES).
553 .TP
554 .B VT_GETMODE
555 Get mode of active vt.
556 .I argp
557 points to a
558
559 .in +4n
560 .nf
561 struct vt_mode {
562     char  mode;    /* vt mode */
563     char  waitv;   /* if set, hang on writes if not active */
564     short relsig;  /* signal to raise on release req */
565     short acqsig;  /* signal to raise on acquisition */
566     short frsig;   /* unused (set to 0) */
567 };
568 .fi
569 .in
570
571 which is set to the mode of the active vt.
572 .I mode
573 is set to one of these values:
574
575 .TS
576 l l.
577 VT_AUTO auto vt switching
578 VT_PROCESS      process controls switching
579 VT_ACKACQ       acknowledge switch
580 .TE
581 .TP
582 .B VT_SETMODE
583 Set mode of active vt.
584 .I argp
585 points to a
586 .IR "struct vt_mode" .
587 .TP
588 .B VT_GETSTATE
589 Get global vt state info.
590 .I argp
591 points to a
592
593 .in +4n
594 .nf
595 struct vt_stat {
596     unsigned short v_active;  /* active vt */
597     unsigned short v_signal;  /* signal to send */
598     unsigned short v_state;   /* vt bit mask */
599 };
600 .fi
601 .in
602
603 For each vt in use, the corresponding bit in the
604 .I v_state
605 member is set.
606 (Kernels 1.0 through 1.1.92.)
607 .TP
608 .B VT_RELDISP
609 Release a display.
610 .TP
611 .B VT_ACTIVATE
612 Switch to vt
613 .IR argp
614 (1 <=
615 .I argp
616 <= MAX_NR_CONSOLES).
617 .TP
618 .B VT_WAITACTIVE
619 Wait until vt
620 .I argp
621 has been activated.
622 .TP
623 .B VT_DISALLOCATE
624 Deallocate the memory associated with vt
625 .IR argp .
626 (Since 1.1.54.)
627 .TP
628 .B VT_RESIZE
629 Set the kernel's idea of screensize.
630 .I argp
631 points to a
632
633 .in +4n
634 .nf
635 struct vt_sizes {
636     unsigned short v_rows;       /* # rows */
637     unsigned short v_cols;       /* # columns */
638     unsigned short v_scrollsize; /* no longer used */
639 };
640 .fi
641 .in
642
643 Note that this does not change the videomode.
644 See
645 .BR resizecons (8).
646 (Since 1.1.54.)
647 .TP
648 .B VT_RESIZEX
649 Set the kernel's idea of various screen parameters.
650 .I argp
651 points to a
652
653 .in +4n
654 .nf
655 struct vt_consize {
656     unsigned short v_rows;  /* number of rows */
657     unsigned short v_cols;  /* number of columns */
658     unsigned short v_vlin;  /* number of pixel rows
659                                on screen */
660     unsigned short v_clin;  /* number of pixel rows
661                                per character */
662     unsigned short v_vcol;  /* number of pixel columns
663                                on screen */
664     unsigned short v_ccol;  /* number of pixel columns
665                                per character */
666 };
667 .fi
668 .in
669
670 Any parameter may be set to zero, indicating "no change", but if
671 multiple parameters are set, they must be self-consistent.
672 Note that this does not change the videomode.
673 See
674 .BR resizecons (8).
675 (Since 1.3.3.)
676 .PP
677 The action of the following ioctls depends on the first byte in the struct
678 pointed to by
679 .IR argp ,
680 referred to here as the
681 .IR subcode .
682 These are legal only for the superuser or the owner of the current terminal.
683 .TP
684 .B "TIOCLINUX, subcode=0"
685 Dump the screen.
686 Disappeared in 1.1.92.  (With kernel 1.1.92 or later, read from
687 .I /dev/vcsN
688 or
689 .I /dev/vcsaN
690 instead.)
691 .TP
692 .B "TIOCLINUX, subcode=1"
693 Get task information.
694 Disappeared in 1.1.92.
695 .TP
696 .B "TIOCLINUX, subcode=2"
697 Set selection.
698 .I argp
699 points to a
700 .in +4n
701 .nf
702
703 struct {
704    char  subcode;
705    short xs, ys, xe, ye;
706    short sel_mode;
707 };
708
709 .fi
710 .in
711 .I xs
712 and
713 .I ys
714 are the starting column and row.
715 .I xe
716 and
717 .I ye
718 are the ending
719 column and row.
720 (Upper left corner is row=column=1.)
721 .I sel_mode
722 is 0 for character-by-character selection,
723 1 for word-by-word selection,
724 or 2 for line-by-line selection.
725 The indicated screen characters are highlighted and saved
726 in the static array sel_buffer in
727 .IR devices/char/console.c .
728 .TP
729 .B "TIOCLINUX, subcode=3"
730 Paste selection.
731 The characters in the selection buffer are
732 written to
733 .IR fd .
734 .TP
735 .B "TIOCLINUX, subcode=4"
736 Unblank the screen.
737 .TP
738 .B "TIOCLINUX, subcode=5"
739 Sets contents of a 256-bit look up table defining characters in a "word",
740 for word-by-word selection.
741 (Since 1.1.32.)
742 .TP
743 .B "TIOCLINUX, subcode=6"
744 .I argp
745 points to a char which is set to the value of the kernel
746 variable
747 .IR shift_state .
748 (Since 1.1.32.)
749 .TP
750 .B "TIOCLINUX, subcode=7"
751 .I argp
752 points to a char which is set to the value of the kernel
753 variable
754 .IR report_mouse .
755 (Since 1.1.33.)
756 .TP
757 .B "TIOCLINUX, subcode=8"
758 Dump screen width and height, cursor position, and all the
759 character-attribute pairs.
760 (Kernels 1.1.67 through 1.1.91 only.
761 With kernel 1.1.92 or later, read from
762 .I /dev/vcsa*
763 instead.)
764 .TP
765 .B "TIOCLINUX, subcode=9"
766 Restore screen width and height, cursor position, and all the
767 character-attribute pairs.
768 (Kernels 1.1.67 through 1.1.91 only.
769 With kernel 1.1.92 or later, write to
770 .I /dev/vcsa*
771 instead.)
772 .TP
773 .B "TIOCLINUX, subcode=10"
774 Handles the Power Saving
775 feature of the new generation of monitors.
776 VESA screen blanking mode is set to
777 .IR argp[1] ,
778 which governs what
779 screen blanking does:
780 .RS
781 .IP 0: 3
782 Screen blanking is disabled.
783 .IP 1:
784 The current video adapter
785 register settings are saved, then the controller is programmed to turn off
786 the vertical synchronization pulses.
787 This puts the monitor into "standby" mode.
788 If your monitor has an Off_Mode timer, then
789 it will eventually power down by itself.
790 .IP 2:
791 The current settings are saved, then both the vertical and horizontal
792 synchronization pulses are turned off.
793 This puts the monitor into "off" mode.
794 If your monitor has no Off_Mode timer,
795 or if you want your monitor to power down immediately when the
796 blank_timer times out, then you choose this option.
797 .RI ( Caution:
798 Powering down frequently will damage the monitor.)
799 (Since 1.1.76.)
800 .RE
801 .SH RETURN VALUE
802 On success, 0 is returned.
803 On error, \-1 is returned, and
804 .I errno
805 is set.
806 .SH ERRORS
807 .I errno
808 may take on these values:
809 .TP
810 .B EBADF
811 The file descriptor is invalid.
812 .TP
813 .B ENOTTY
814 The file descriptor is not associated with a character special device,
815 or the specified request does not apply to it.
816 .TP
817 .B EINVAL
818 The file descriptor or
819 .I argp
820 is invalid.
821 .TP
822 .B EPERM
823 Insufficient permission.
824 .SH NOTES
825 .BR Warning :
826 Do not regard this man page as documentation of the Linux console ioctls.
827 This is provided for the curious only, as an alternative to reading the
828 source.
829 Ioctl's are undocumented Linux internals, liable to be changed
830 without warning.
831 (And indeed, this page more or less describes the
832 situation as of kernel version 1.1.94;
833 there are many minor and not-so-minor
834 differences with earlier versions.)
835
836 Very often, ioctls are introduced for communication between the
837 kernel and one particular well-known program (fdisk, hdparm, setserial,
838 tunelp, loadkeys, selection, setfont, etc.), and their behavior will be
839 changed when required by this particular program.
840
841 Programs using these ioctls will not be portable to other versions
842 of UNIX, will not work on older versions of Linux, and will not work
843 on future versions of Linux.
844
845 Use POSIX functions.
846 .SH SEE ALSO
847 .BR dumpkeys (1),
848 .BR kbd_mode (1),
849 .BR loadkeys (1),
850 .BR mknod (1),
851 .BR setleds (1),
852 .BR setmetamode (1),
853 .BR execve (2),
854 .BR fcntl (2),
855 .BR ioperm (2),
856 .BR termios (3),
857 .BR console (4),
858 .BR console_codes (4),
859 .BR mt (4),
860 .BR sd (4),
861 .BR tty (4),
862 .BR tty_ioctl (4),
863 .BR ttyS (4),
864 .BR vcs (4),
865 .BR vcsa (4),
866 .BR charsets (7),
867 .BR mapscrn (8),
868 .BR resizecons (8),
869 .BR setfont (8)
870
871 .IR /usr/include/linux/kd.h ,
872 .I /usr/include/linux/vt.h
873 .SH COLOPHON
874 This page is part of release 3.64 of the Linux
875 .I man-pages
876 project.
877 A description of the project,
878 and information about reporting bugs,
879 can be found at
880 \%http://www.kernel.org/doc/man\-pages/.