aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/input
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/input
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/input')
-rw-r--r--drivers/input/joystick/Kconfig4
-rw-r--r--drivers/input/keyboard/Kconfig10
-rw-r--r--drivers/input/mouse/Kconfig3
-rw-r--r--drivers/input/serio/Kconfig1
-rw-r--r--drivers/input/touchscreen/Kconfig22
5 files changed, 39 insertions, 1 deletions
diff --git a/drivers/input/joystick/Kconfig b/drivers/input/joystick/Kconfig
index 56eb471b5576..055bcaba774c 100644
--- a/drivers/input/joystick/Kconfig
+++ b/drivers/input/joystick/Kconfig
@@ -132,6 +132,8 @@ config JOYSTICK_TMDC
132 132
133source "drivers/input/joystick/iforce/Kconfig" 133source "drivers/input/joystick/iforce/Kconfig"
134 134
135if TTY
136
135config JOYSTICK_WARRIOR 137config JOYSTICK_WARRIOR
136 tristate "Logitech WingMan Warrior joystick" 138 tristate "Logitech WingMan Warrior joystick"
137 select SERIO 139 select SERIO
@@ -205,6 +207,8 @@ config JOYSTICK_ZHENHUA
205 To compile this driver as a module, choose M here: the 207 To compile this driver as a module, choose M here: the
206 module will be called zhenhua. 208 module will be called zhenhua.
207 209
210endif # TTY
211
208config JOYSTICK_DB9 212config JOYSTICK_DB9
209 tristate "Multisystem, Sega Genesis, Saturn joysticks and gamepads" 213 tristate "Multisystem, Sega Genesis, Saturn joysticks and gamepads"
210 depends on PARPORT 214 depends on PARPORT
diff --git a/drivers/input/keyboard/Kconfig b/drivers/input/keyboard/Kconfig
index 5a240c60342d..008f96aaf19e 100644
--- a/drivers/input/keyboard/Kconfig
+++ b/drivers/input/keyboard/Kconfig
@@ -69,6 +69,7 @@ config KEYBOARD_ATARI
69config KEYBOARD_ATKBD 69config KEYBOARD_ATKBD
70 tristate "AT keyboard" if EXPERT || !X86 70 tristate "AT keyboard" if EXPERT || !X86
71 default y 71 default y
72 depends on TTY
72 select SERIO 73 select SERIO
73 select SERIO_LIBPS2 74 select SERIO_LIBPS2
74 select SERIO_I8042 if X86 75 select SERIO_I8042 if X86
@@ -153,6 +154,7 @@ config KEYBOARD_BFIN
153 154
154config KEYBOARD_LKKBD 155config KEYBOARD_LKKBD
155 tristate "DECstation/VAXstation LK201/LK401 keyboard" 156 tristate "DECstation/VAXstation LK201/LK401 keyboard"
157 depends on TTY
156 select SERIO 158 select SERIO
157 help 159 help
158 Say Y here if you want to use a LK201 or LK401 style serial 160 Say Y here if you want to use a LK201 or LK401 style serial
@@ -268,7 +270,7 @@ config KEYBOARD_HIL_OLD
268 270
269config KEYBOARD_HIL 271config KEYBOARD_HIL
270 tristate "HP HIL keyboard/pointer support" 272 tristate "HP HIL keyboard/pointer support"
271 depends on GSC || HP300 273 depends on (GSC || HP300) && TTY
272 default y 274 default y
273 select HP_SDC 275 select HP_SDC
274 select HIL_MLC 276 select HIL_MLC
@@ -400,6 +402,7 @@ config KEYBOARD_IMX
400 402
401config KEYBOARD_NEWTON 403config KEYBOARD_NEWTON
402 tristate "Newton keyboard" 404 tristate "Newton keyboard"
405 depends on TTY
403 select SERIO 406 select SERIO
404 help 407 help
405 Say Y here if you have a Newton keyboard on a serial port. 408 Say Y here if you have a Newton keyboard on a serial port.
@@ -479,6 +482,8 @@ config KEYBOARD_SAMSUNG
479 To compile this driver as a module, choose M here: the 482 To compile this driver as a module, choose M here: the
480 module will be called samsung-keypad. 483 module will be called samsung-keypad.
481 484
485if TTY
486
482config KEYBOARD_STOWAWAY 487config KEYBOARD_STOWAWAY
483 tristate "Stowaway keyboard" 488 tristate "Stowaway keyboard"
484 select SERIO 489 select SERIO
@@ -501,6 +506,8 @@ config KEYBOARD_SUNKBD
501 To compile this driver as a module, choose M here: the 506 To compile this driver as a module, choose M here: the
502 module will be called sunkbd. 507 module will be called sunkbd.
503 508
509endif # TTY
510
504config KEYBOARD_SH_KEYSC 511config KEYBOARD_SH_KEYSC
505 tristate "SuperH KEYSC keypad support" 512 tristate "SuperH KEYSC keypad support"
506 depends on SUPERH || ARCH_SHMOBILE 513 depends on SUPERH || ARCH_SHMOBILE
@@ -597,6 +604,7 @@ config KEYBOARD_TWL4030
597 604
598config KEYBOARD_XTKBD 605config KEYBOARD_XTKBD
599 tristate "XT keyboard" 606 tristate "XT keyboard"
607 depends on TTY
600 select SERIO 608 select SERIO
601 help 609 help
602 Say Y here if you want to use the old IBM PC/XT keyboard (or 610 Say Y here if you want to use the old IBM PC/XT keyboard (or
diff --git a/drivers/input/mouse/Kconfig b/drivers/input/mouse/Kconfig
index cd6268cf7cd5..fc160f72dc4e 100644
--- a/drivers/input/mouse/Kconfig
+++ b/drivers/input/mouse/Kconfig
@@ -14,6 +14,7 @@ if INPUT_MOUSE
14 14
15config MOUSE_PS2 15config MOUSE_PS2
16 tristate "PS/2 mouse" 16 tristate "PS/2 mouse"
17 depends on TTY
17 default y 18 default y
18 select SERIO 19 select SERIO
19 select SERIO_LIBPS2 20 select SERIO_LIBPS2
@@ -138,6 +139,7 @@ config MOUSE_PS2_OLPC
138 139
139config MOUSE_SERIAL 140config MOUSE_SERIAL
140 tristate "Serial mouse" 141 tristate "Serial mouse"
142 depends on TTY
141 select SERIO 143 select SERIO
142 help 144 help
143 Say Y here if you have a serial (RS-232, COM port) mouse connected 145 Say Y here if you have a serial (RS-232, COM port) mouse connected
@@ -262,6 +264,7 @@ config MOUSE_RISCPC
262 264
263config MOUSE_VSXXXAA 265config MOUSE_VSXXXAA
264 tristate "DEC VSXXX-AA/GA mouse and VSXXX-AB tablet" 266 tristate "DEC VSXXX-AA/GA mouse and VSXXX-AB tablet"
267 depends on TTY
265 select SERIO 268 select SERIO
266 help 269 help
267 Say Y (or M) if you want to use a DEC VSXXX-AA (hockey 270 Say Y (or M) if you want to use a DEC VSXXX-AA (hockey
diff --git a/drivers/input/serio/Kconfig b/drivers/input/serio/Kconfig
index 4a4e182c33e7..81ee7551148e 100644
--- a/drivers/input/serio/Kconfig
+++ b/drivers/input/serio/Kconfig
@@ -4,6 +4,7 @@
4config SERIO 4config SERIO
5 tristate "Serial I/O support" if EXPERT || !X86 5 tristate "Serial I/O support" if EXPERT || !X86
6 default y 6 default y
7 depends on TTY
7 help 8 help
8 Say Yes here if you have any input device that uses serial I/O to 9 Say Yes here if you have any input device that uses serial I/O to
9 communicate with the system. This includes the 10 communicate with the system. This includes the
diff --git a/drivers/input/touchscreen/Kconfig b/drivers/input/touchscreen/Kconfig
index 515cfe790543..3d6f548dd3d4 100644
--- a/drivers/input/touchscreen/Kconfig
+++ b/drivers/input/touchscreen/Kconfig
@@ -192,6 +192,8 @@ config TOUCHSCREEN_DA9052
192 To compile this driver as a module, choose M here: the 192 To compile this driver as a module, choose M here: the
193 module will be called da9052_tsi. 193 module will be called da9052_tsi.
194 194
195if TTY
196
195config TOUCHSCREEN_DYNAPRO 197config TOUCHSCREEN_DYNAPRO
196 tristate "Dynapro serial touchscreen" 198 tristate "Dynapro serial touchscreen"
197 select SERIO 199 select SERIO
@@ -216,6 +218,8 @@ config TOUCHSCREEN_HAMPSHIRE
216 To compile this driver as a module, choose M here: the 218 To compile this driver as a module, choose M here: the
217 module will be called hampshire. 219 module will be called hampshire.
218 220
221endif # TTY
222
219config TOUCHSCREEN_EETI 223config TOUCHSCREEN_EETI
220 tristate "EETI touchscreen panel support" 224 tristate "EETI touchscreen panel support"
221 depends on I2C 225 depends on I2C
@@ -237,6 +241,7 @@ config TOUCHSCREEN_EGALAX
237 241
238config TOUCHSCREEN_FUJITSU 242config TOUCHSCREEN_FUJITSU
239 tristate "Fujitsu serial touchscreen" 243 tristate "Fujitsu serial touchscreen"