diff options
author | Greg Kroah-Hartman <gregkh@suse.de> | 2011-02-22 18:41:47 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-02-22 18:41:47 -0500 |
commit | bdcffc5a1a28b566a38a4b0d5bcefc78a97f4ecb (patch) | |
tree | 84b497e769c3923b08c052781067bb3f427e386c /drivers/tty | |
parent | 3c95c985fa91ecf6a0e29622bbdd13dcfc5ce9f1 (diff) |
tty: move Kconfig entries into drivers/tty from drivers/char
The Kconfig options for the drivers/tty/ files still were hanging around
in the "big" drivers/char/Kconfig file, so move them to the proper
location under drivers/tty and drivers/tty/hvc/
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/tty')
-rw-r--r-- | drivers/tty/Kconfig | 150 | ||||
-rw-r--r-- | drivers/tty/hvc/Kconfig | 105 |
2 files changed, 255 insertions, 0 deletions
diff --git a/drivers/tty/Kconfig b/drivers/tty/Kconfig new file mode 100644 index 000000000000..9cfbdb318ed9 --- /dev/null +++ b/drivers/tty/Kconfig | |||
@@ -0,0 +1,150 @@ | |||
1 | config VT | ||
2 | bool "Virtual terminal" if EXPERT | ||
3 | depends on !S390 | ||
4 | select INPUT | ||
5 | default y | ||
6 | ---help--- | ||
7 | If you say Y here, you will get support for terminal devices with | ||
8 | display and keyboard devices. These are called "virtual" because you | ||
9 | can run several virtual terminals (also called virtual consoles) on | ||
10 | one physical terminal. This is rather useful, for example one | ||
11 | virtual terminal can collect system messages and warnings, another | ||
12 | one can be used for a text-mode user session, and a third could run | ||
13 | an X session, all in parallel. Switching between virtual terminals | ||
14 | is done with certain key combinations, usually Alt-<function key>. | ||
15 | |||
16 | The setterm command ("man setterm") can be used to change the | ||
17 | properties (such as colors or beeping) of a virtual terminal. The | ||
18 | man page console_codes(4) ("man console_codes") contains the special | ||
19 | character sequences that can be used to change those properties | ||
20 | directly. The fonts used on virtual terminals can be changed with | ||
21 | the setfont ("man setfont") command and the key bindings are defined | ||
22 | with the loadkeys ("man loadkeys") command. | ||
23 | |||
24 | You need at least one virtual terminal device in order to make use | ||
25 | of your keyboard and monitor. Therefore, only people configuring an | ||
26 | embedded system would want to say N here in order to save some | ||
27 | memory; the only way to log into such a system is then via a serial | ||
28 | or network connection. | ||
29 | |||
30 | If unsure, say Y, or else you won't be able to do much with your new | ||
31 | shiny Linux system :-) | ||
32 | |||
33 | config CONSOLE_TRANSLATIONS | ||
34 | depends on VT | ||
35 | default y | ||
36 | bool "Enable character translations in console" if EXPERT | ||
37 | ---help--- | ||
38 | This enables support for font mapping and Unicode translation | ||
39 | on virtual consoles. | ||
40 | |||
41 | config VT_CONSOLE | ||
42 | bool "Support for console on virtual terminal" if EXPERT | ||
43 | depends on VT | ||
44 | default y | ||
45 | ---help--- | ||
46 | The system console is the device which receives all kernel messages | ||
47 | and warnings and which allows logins in single user mode. If you | ||
48 | answer Y here, a virtual terminal (the device used to interact with | ||
49 | a physical terminal) can be used as system console. This is the most | ||
50 | common mode of operations, so you should say Y here unless you want | ||
51 | the kernel messages be output only to a serial port (in which case | ||
52 | you should say Y to "Console on serial port", below). | ||
53 | |||
54 | If you do say Y here, by default the currently visible virtual | ||
55 | terminal (/dev/tty0) will be used as system console. You can change | ||
56 | that with a kernel command line option such as "console=tty3" which | ||
57 | would use the third virtual terminal as system console. (Try "man | ||
58 | bootparam" or see the documentation of your boot loader (lilo or | ||
59 | loadlin) about how to pass options to the kernel at boot time.) | ||
60 | |||
61 | If unsure, say Y. | ||
62 | |||
63 | config HW_CONSOLE | ||
64 | bool | ||
65 | depends on VT && !S390 && !UML | ||
66 | default y | ||
67 | |||
68 | config VT_HW_CONSOLE_BINDING | ||
69 | bool "Support for binding and unbinding console drivers" | ||
70 | depends on HW_CONSOLE | ||
71 | default n | ||
72 | ---help--- | ||
73 | The virtual terminal is the device that interacts with the physical | ||
74 | terminal through console drivers. On these systems, at least one | ||
75 | console driver is loaded. In other configurations, additional console | ||
76 | drivers may be enabled, such as the framebuffer console. If more than | ||
77 | 1 console driver is enabled, setting this to 'y' will allow you to | ||
78 | select the console driver that will serve as the backend for the | ||
79 | virtual terminals. | ||
80 | |||
81 | See <file:Documentation/console/console.txt> for more | ||
82 | information. For framebuffer console users, please refer to | ||
83 | <file:Documentation/fb/fbcon.txt>. | ||
84 | |||
85 | config UNIX98_PTYS | ||
86 | bool "Unix98 PTY support" if EXPERT | ||
87 | default y | ||
88 | ---help--- | ||
89 | A pseudo terminal (PTY) is a software device consisting of two | ||
90 | halves: a master and a slave. The slave device behaves identical to | ||
91 | a physical terminal; the master device is used by a process to | ||
92 | read data from and write data to the slave, thereby emulating a | ||
93 | terminal. Typical programs for the master side are telnet servers | ||
94 | and xterms. | ||
95 | |||
96 | Linux has traditionally used the BSD-like names /dev/ptyxx for | ||
97 | masters and /dev/ttyxx for slaves of pseudo terminals. This scheme | ||
98 | has a number of problems. The GNU C library glibc 2.1 and later, | ||
99 | however, supports the Unix98 naming standard: in order to acquire a | ||
100 | pseudo terminal, a process opens /dev/ptmx; the number of the pseudo | ||
101 | terminal is then made available to the process and the pseudo | ||
102 | terminal slave can be accessed as /dev/pts/<number>. What was | ||
103 | traditionally /dev/ttyp2 will then be /dev/pts/2, for example. | ||
104 | |||
105 | All modern Linux systems use the Unix98 ptys. Say Y unless | ||
106 | you're on an embedded system and want to conserve memory. | ||
107 | |||
108 | config DEVPTS_MULTIPLE_INSTANCES | ||
109 | bool "Support multiple instances of devpts" | ||
110 | depends on UNIX98_PTYS | ||
111 | default n | ||
112 | ---help--- | ||
113 | Enable support for multiple instances of devpts filesystem. | ||
114 | If you want to have isolated PTY namespaces (eg: in containers), | ||
115 | say Y here. Otherwise, say N. If enabled, each mount of devpts | ||
116 | filesystem with the '-o newinstance' option will create an | ||
117 | independent PTY namespace. | ||
118 | |||
119 | config LEGACY_PTYS | ||
120 | bool "Legacy (BSD) PTY support" | ||
121 | default y | ||
122 | ---help--- | ||
123 | A pseudo terminal (PTY) is a software device consisting of two | ||
124 | halves: a master and a slave. The slave device behaves identical to | ||
125 | a physical terminal; the master device is used by a process to | ||
126 | read data from and write data to the slave, thereby emulating a | ||
127 | terminal. Typical programs for the master side are telnet servers | ||
128 | and xterms. | ||
129 | |||
130 | Linux has traditionally used the BSD-like names /dev/ptyxx | ||
131 | for masters and /dev/ttyxx for slaves of pseudo | ||
132 | terminals. This scheme has a number of problems, including | ||
133 | security. This option enables these legacy devices; on most | ||
134 | systems, it is safe to say N. | ||
135 | |||
136 | |||
137 | config LEGACY_PTY_COUNT | ||
138 | int "Maximum number of legacy PTY in use" | ||
139 | depends on LEGACY_PTYS | ||
140 | range 0 256 | ||
141 | default "256" | ||
142 | ---help--- | ||
143 | The maximum number of legacy PTYs that can be used at any one time. | ||
144 | The default is 256, and should be more than enough. Embedded | ||
145 | systems may want to reduce this to save memory. | ||
146 | |||
147 | When not in use, each legacy PTY occupies 12 bytes on 32-bit | ||
148 | architectures and 24 bytes on 64-bit architectures. | ||
149 | |||
150 | |||
diff --git a/drivers/tty/hvc/Kconfig b/drivers/tty/hvc/Kconfig new file mode 100644 index 000000000000..6f2c9809f1fb --- /dev/null +++ b/drivers/tty/hvc/Kconfig | |||
@@ -0,0 +1,105 @@ | |||
1 | config HVC_DRIVER | ||
2 | bool | ||
3 | help | ||
4 | Generic "hypervisor virtual console" infrastructure for various | ||
5 | hypervisors (pSeries, iSeries, Xen, lguest). | ||
6 | It will automatically be selected if one of the back-end console drivers | ||
7 | is selected. | ||
8 | |||
9 | config HVC_IRQ | ||
10 | bool | ||
11 | |||
12 | config HVC_CONSOLE | ||
13 | bool "pSeries Hypervisor Virtual Console support" | ||
14 | depends on PPC_PSERIES | ||
15 | select HVC_DRIVER | ||
16 | select HVC_IRQ | ||
17 | help | ||
18 | pSeries machines when partitioned support a hypervisor virtual | ||
19 | console. This driver allows each pSeries partition to have a console | ||
20 | which is accessed via the HMC. | ||
21 | |||
22 | config HVC_ISERIES | ||
23 | bool "iSeries Hypervisor Virtual Console support" | ||
24 | depends on PPC_ISERIES | ||
25 | default y | ||
26 | select HVC_DRIVER | ||
27 | select HVC_IRQ | ||
28 | select VIOPATH | ||
29 | help | ||
30 | iSeries machines support a hypervisor virtual console. | ||
31 | |||
32 | config HVC_RTAS | ||
33 | bool "IBM RTAS Console support" | ||
34 | depends on PPC_RTAS | ||
35 | select HVC_DRIVER | ||
36 | help | ||
37 | IBM Console device driver which makes use of RTAS | ||
38 | |||
39 | config HVC_BEAT | ||
40 | bool "Toshiba's Beat Hypervisor Console support" | ||
41 | depends on PPC_CELLEB | ||
42 | select HVC_DRIVER | ||
43 | help | ||
44 | Toshiba's Cell Reference Set Beat Console device driver | ||
45 | |||
46 | config HVC_IUCV | ||
47 | bool "z/VM IUCV Hypervisor console support (VM only)" | ||
48 | depends on S390 | ||
49 | select HVC_DRIVER | ||
50 | select IUCV | ||
51 | default y | ||
52 | help | ||
53 | This driver provides a Hypervisor console (HVC) back-end to access | ||
54 | a Linux (console) terminal via a z/VM IUCV communication path. | ||
55 | |||
56 | config HVC_XEN | ||
57 | bool "Xen Hypervisor Console support" | ||
58 | depends on XEN | ||
59 | select HVC_DRIVER | ||
60 | select HVC_IRQ | ||
61 | default y | ||
62 | help | ||
63 | Xen virtual console device driver | ||
64 | |||
65 | config HVC_UDBG | ||
66 | bool "udbg based fake hypervisor console" | ||
67 | depends on PPC && EXPERIMENTAL | ||
68 | select HVC_DRIVER | ||
69 | default n | ||
70 | |||
71 | config HVC_DCC | ||
72 | bool "ARM JTAG DCC console" | ||
73 | depends on ARM | ||
74 | select HVC_DRIVER | ||
75 | help | ||
76 | This console uses the JTAG DCC on ARM to create a console under the HVC | ||
77 | driver. This console is used through a JTAG only on ARM. If you don't have | ||
78 | a JTAG then you probably don't want this option. | ||
79 | |||
80 | config HVC_BFIN_JTAG | ||
81 | bool "Blackfin JTAG console" | ||
82 | depends on BLACKFIN | ||
83 | select HVC_DRIVER | ||
84 | help | ||
85 | This console uses the Blackfin JTAG to create a console under the | ||
86 | the HVC driver. If you don't have JTAG, then you probably don't | ||
87 | want this option. | ||
88 | |||
89 | config HVCS | ||
90 | tristate "IBM Hypervisor Virtual Console Server support" | ||
91 | depends on PPC_PSERIES && HVC_CONSOLE | ||
92 | help | ||
93 | Partitionable IBM Power5 ppc64 machines allow hosting of | ||
94 | firmware virtual consoles from one Linux partition by | ||
95 | another Linux partition. This driver allows console data | ||
96 | from Linux partitions to be accessed through TTY device | ||
97 | interfaces in the device tree of a Linux partition running | ||
98 | this driver. | ||
99 | |||
100 | To compile this driver as a module, choose M here: the | ||
101 | module will be called hvcs. Additionally, this module | ||
102 | will depend on arch specific APIs exported from hvcserver.ko | ||
103 | which will also be compiled when this driver is built as a | ||
104 | module. | ||
105 | |||