aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char/Kconfig
diff options
context:
space:
mode:
authorJoe Millenbach <jmillenbach@gmail.com>2013-01-18 01:44:22 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-01-18 19:15:27 -0500
commit4f73bc4dd3e8563ef4109f293a092820dff66d92 (patch)
tree8ebd5d01abaceb70da1932db1a5e7219630b0fd3 /drivers/char/Kconfig
parenta1bf9584429d61b7096f93ae09325e1ba538e9e8 (diff)
tty: Added a CONFIG_TTY option to allow removal of TTY
The option allows you to remove TTY and compile without errors. This saves space on systems that won't support TTY interfaces anyway. bloat-o-meter output is below. The bulk of this patch consists of Kconfig changes adding "depends on TTY" to various serial devices and similar drivers that require the TTY layer. Ideally, these dependencies would occur on a common intermediate symbol such as SERIO, but most drivers "select SERIO" rather than "depends on SERIO", and "select" does not respect dependencies. bloat-o-meter output comparing our previous minimal to new minimal by removing TTY. The list is filtered to not show removed entries with awk '$3 != "-"' as the list was very long. add/remove: 0/226 grow/shrink: 2/14 up/down: 6/-35356 (-35350) function old new delta chr_dev_init 166 170 +4 allow_signal 80 82 +2 static.__warned 143 142 -1 disallow_signal 63 62 -1 __set_special_pids 95 94 -1 unregister_console 126 121 -5 start_kernel 546 541 -5 register_console 593 588 -5 copy_from_user 45 40 -5 sys_setsid 128 120 -8 sys_vhangup 32 19 -13 do_exit 1543 1526 -17 bitmap_zero 60 40 -20 arch_local_irq_save 137 117 -20 release_task 674 652 -22 static.spin_unlock_irqrestore 308 260 -48 Signed-off-by: Joe Millenbach <jmillenbach@gmail.com> Reviewed-by: Jamey Sharp <jamey@minilop.net> Reviewed-by: Josh Triplett <josh@joshtriplett.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/char/Kconfig')
-rw-r--r--drivers/char/Kconfig7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig
index 72bedad6bf8c..3bb6fa3930be 100644
--- a/drivers/char/Kconfig
+++ b/drivers/char/Kconfig
@@ -53,7 +53,7 @@ source "drivers/tty/serial/Kconfig"
53 53
54config TTY_PRINTK 54config TTY_PRINTK
55 bool "TTY driver to output user messages via printk" 55 bool "TTY driver to output user messages via printk"
56 depends on EXPERT 56 depends on EXPERT && TTY
57 default n 57 default n
58 ---help--- 58 ---help---
59 If you say Y here, the support for writing user messages (i.e. 59 If you say Y here, the support for writing user messages (i.e.
@@ -159,7 +159,7 @@ source "drivers/tty/hvc/Kconfig"
159 159
160config VIRTIO_CONSOLE 160config VIRTIO_CONSOLE
161 tristate "Virtio console" 161 tristate "Virtio console"
162 depends on VIRTIO 162 depends on VIRTIO && TTY
163 select HVC_DRIVER 163 select HVC_DRIVER
164 help 164 help
165 Virtio console for use with lguest and other hypervisors. 165 Virtio console for use with lguest and other hypervisors.
@@ -392,6 +392,7 @@ config XILINX_HWICAP
392 392
393config R3964 393config R3964
394 tristate "Siemens R3964 line discipline" 394 tristate "Siemens R3964 line discipline"
395 depends on TTY
395 ---help--- 396 ---help---
396 This driver allows synchronous communication with devices using the 397 This driver allows synchronous communication with devices using the
397 Siemens R3964 packet protocol. Unless you are dealing with special 398 Siemens R3964 packet protocol. Unless you are dealing with special
@@ -439,7 +440,7 @@ source "drivers/char/pcmcia/Kconfig"
439 440
440config MWAVE 441config MWAVE
441 tristate "ACP Modem (Mwave) support" 442 tristate "ACP Modem (Mwave) support"
442 depends on X86 443 depends on X86 && TTY
443 select SERIAL_8250 444 select SERIAL_8250
444 ---help--- 445 ---help---
445 The ACP modem (Mwave) for Linux is a WinModem. It is composed of a 446 The ACP modem (Mwave) for Linux is a WinModem. It is composed of a