Blame view

include/linux/vt.h 3.56 KB
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1
2
  #ifndef _LINUX_VT_H
  #define _LINUX_VT_H
b293d7584   Samuel Thibault   Console events an...
3

a8f340e39   Jon Smirl   [PATCH] vt: Remov...
4
5
6
7
8
9
10
11
12
  /*
   * These constants are also useful for user-level apps (e.g., VC
   * resizing).
   */
  #define MIN_NR_CONSOLES 1       /* must be at least 1 */
  #define MAX_NR_CONSOLES	63	/* serial lines start at 64 */
  #define MAX_NR_USER_CONSOLES 63	/* must be root to allocate above this */
  		/* Note: the ioctl VT_GETSTATE does not work for
  		   consoles 16 and higher (since it returns a short) */
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
  /* 0x56 is 'V', to avoid collision with termios and kd */
  
  #define VT_OPENQRY	0x5600	/* find available vt */
  
  struct vt_mode {
  	char mode;		/* vt mode */
  	char waitv;		/* if set, hang on writes if not active */
  	short relsig;		/* signal to raise on release req */
  	short acqsig;		/* signal to raise on acquisition */
  	short frsig;		/* unused (set to 0) */
  };
  #define VT_GETMODE	0x5601	/* get mode of active vt */
  #define VT_SETMODE	0x5602	/* set mode of active vt */
  #define		VT_AUTO		0x00	/* auto vt switching */
  #define		VT_PROCESS	0x01	/* process controls switching */
87a6aca50   Greg Kroah-Hartman   Revert "tty: Add ...
28
  #define		VT_ACKACQ	0x02	/* acknowledge switch */
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
  
  struct vt_stat {
  	unsigned short v_active;	/* active vt */
  	unsigned short v_signal;	/* signal to send */
  	unsigned short v_state;		/* vt bitmask */
  };
  #define VT_GETSTATE	0x5603	/* get global vt state info */
  #define VT_SENDSIG	0x5604	/* signal to send to bitmask of vts */
  
  #define VT_RELDISP	0x5605	/* release display */
  
  #define VT_ACTIVATE	0x5606	/* make vt active */
  #define VT_WAITACTIVE	0x5607	/* wait for vt active */
  #define VT_DISALLOCATE	0x5608  /* free memory associated to vt */
  
  struct vt_sizes {
  	unsigned short v_rows;		/* number of rows */
  	unsigned short v_cols;		/* number of columns */
  	unsigned short v_scrollsize;	/* number of lines of scrollback */
  };
  #define VT_RESIZE	0x5609	/* set kernel's idea of screensize */
  
  struct vt_consize {
  	unsigned short v_rows;	/* number of rows */
  	unsigned short v_cols;	/* number of columns */
  	unsigned short v_vlin;	/* number of pixel rows on screen */
  	unsigned short v_clin;	/* number of pixel rows per character */
  	unsigned short v_vcol;	/* number of pixel columns on screen */
  	unsigned short v_ccol;	/* number of pixel columns per character */
  };
  #define VT_RESIZEX      0x560A  /* set kernel's idea of screensize + more */
  #define VT_LOCKSWITCH   0x560B  /* disallow vt switching */
  #define VT_UNLOCKSWITCH 0x560C  /* allow vt switching */
533475d3d   Samuel Thibault   [PATCH] vcsa attr...
62
  #define VT_GETHIFONTMASK 0x560D  /* return hi font mask */
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
63

8b92e87d3   Alan Cox   vt: add an event ...
64
65
66
67
68
69
70
  struct vt_event {
  	unsigned int event;
  #define VT_EVENT_SWITCH		0x0001	/* Console switch */
  #define VT_EVENT_BLANK		0x0002	/* Screen blank */
  #define VT_EVENT_UNBLANK	0x0004	/* Screen unblank */
  #define VT_EVENT_RESIZE		0x0008	/* Resize display */
  #define VT_MAX_EVENT		0x000F
308efab5e   Alan Cox   vt: Fix use of "n...
71
72
  	unsigned int oldev;		/* Old console */
  	unsigned int newev;		/* New console (if changing) */
8b92e87d3   Alan Cox   vt: add an event ...
73
74
75
76
  	unsigned int pad[4];		/* Padding for expansion */
  };
  
  #define VT_WAITEVENT	0x560E	/* Wait for an event */
d3b5cffcf   Alan Cox   vt: add an activa...
77
78
79
80
81
82
  struct vt_setactivate {
  	unsigned int console;
  	struct vt_mode mode;
  };
  
  #define VT_SETACTIVATE	0x560F	/* Activate and set the mode of a console */
5d0bb2c42   Bernhard Walle   vt: don't export ...
83
  #ifdef __KERNEL__
a376d3d67   Amerigo Wang   notifiers: vt: mo...
84
85
86
87
88
89
  /* Virtual Terminal events. */
  #define VT_ALLOCATE		0x0001 /* Console got allocated */
  #define VT_DEALLOCATE		0x0002 /* Console will be deallocated */
  #define VT_WRITE		0x0003 /* A char got output */
  #define VT_UPDATE		0x0004 /* A bigger update occurred */
  #define VT_PREWRITE		0x0005 /* A char is about to be written to the console */
5ada918b8   Bernhard Walle   vt: introduce and...
90
91
92
93
94
95
96
97
98
99
100
101
  #ifdef CONFIG_VT_CONSOLE
  
  extern int vt_kmsg_redirect(int new);
  
  #else
  
  static inline int vt_kmsg_redirect(int new)
  {
  	return 0;
  }
  
  #endif
5d0bb2c42   Bernhard Walle   vt: don't export ...
102
  #endif /* __KERNEL__ */
5ada918b8   Bernhard Walle   vt: introduce and...
103
  #define vt_get_kmsg_redirect() vt_kmsg_redirect(-1)
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
104
  #endif /* _LINUX_VT_H */