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"
244 depends on TTY
240 select SERIO 245 select SERIO
241 help 246 help
242 Say Y here if you have the Fujitsu touchscreen (such as one 247 Say Y here if you have the Fujitsu touchscreen (such as one
@@ -275,6 +280,8 @@ config TOUCHSCREEN_S3C2410
275 To compile this driver as a module, choose M here: the 280 To compile this driver as a module, choose M here: the
276 module will be called s3c2410_ts. 281 module will be called s3c2410_ts.
277 282
283if TTY
284
278config TOUCHSCREEN_GUNZE 285config TOUCHSCREEN_GUNZE
279 tristate "Gunze AHL-51S touchscreen" 286 tristate "Gunze AHL-51S touchscreen"
280 select SERIO 287 select SERIO
@@ -311,6 +318,8 @@ config TOUCHSCREEN_WACOM_W8001
311 To compile this driver as a module, choose M here: the 318 To compile this driver as a module, choose M here: the
312 module will be called wacom_w8001. 319 module will be called wacom_w8001.
313 320
321endif # TTY
322
314config TOUCHSCREEN_WACOM_I2C 323config TOUCHSCREEN_WACOM_I2C
315 tristate "Wacom Tablet support (I2C)" 324 tristate "Wacom Tablet support (I2C)"
316 depends on I2C 325 depends on I2C
@@ -369,6 +378,8 @@ config TOUCHSCREEN_MMS114
369 To compile this driver as a module, choose M here: the 378 To compile this driver as a module, choose M here: the
370 module will be called mms114. 379 module will be called mms114.
371 380
381if TTY
382
372config TOUCHSCREEN_MTOUCH 383config TOUCHSCREEN_MTOUCH
373 tristate "MicroTouch serial touchscreens" 384 tristate "MicroTouch serial touchscreens"
374 select SERIO 385 select SERIO
@@ -393,6 +404,8 @@ config TOUCHSCREEN_INEXIO
393 To compile this driver as a module, choose M here: the 404 To compile this driver as a module, choose M here: the
394 module will be called inexio. 405 module will be called inexio.
395 406
407endif # TTY
408
396config TOUCHSCREEN_INTEL_MID 409config TOUCHSCREEN_INTEL_MID
397 tristate "Intel MID platform resistive touchscreen" 410 tristate "Intel MID platform resistive touchscreen"
398 depends on INTEL_SCU_IPC 411 depends on INTEL_SCU_IPC
@@ -450,6 +463,7 @@ config TOUCHSCREEN_HTCPEN
450 463
451config TOUCHSCREEN_PENMOUNT 464config TOUCHSCREEN_PENMOUNT
452 tristate "Penmount serial touchscreen" 465 tristate "Penmount serial touchscreen"
466 depends on TTY
453 select SERIO 467 select SERIO
454 help 468 help
455 Say Y here if you have a Penmount serial touchscreen connected to 469 Say Y here if you have a Penmount serial touchscreen connected to
@@ -493,6 +507,8 @@ config TOUCHSCREEN_TNETV107X
493 To compile this driver as a module, choose M here: the 507 To compile this driver as a module, choose M here: the
494 module will be called tnetv107x-ts. 508 module will be called tnetv107x-ts.
495 509
510if TTY
511
496config TOUCHSCREEN_TOUCHRIGHT 512config TOUCHSCREEN_TOUCHRIGHT
497 tristate "Touchright serial touchscreen" 513 tristate "Touchright serial touchscreen"
498 select SERIO 514 select SERIO
@@ -517,6 +533,8 @@ config TOUCHSCREEN_TOUCHWIN
517 To compile this driver as a module, choose M here: the 533 To compile this driver as a module, choose M here: the
518 module will be called touchwin. 534 module will be called touchwin.
519 535
536endif # TTY
537
520config TOUCHSCREEN_TI_AM335X_TSC 538config TOUCHSCREEN_TI_AM335X_TSC
521 tristate "TI Touchscreen Interface" 539 tristate "TI Touchscreen Interface"
522 depends on MFD_TI_AM335X_TSCADC 540 depends on MFD_TI_AM335X_TSCADC
@@ -790,6 +808,8 @@ config TOUCHSCREEN_USB_EASYTOUCH
790 Say Y here if you have an EasyTouch USB Touch controller. 808 Say Y here if you have an EasyTouch USB Touch controller.
791 If unsure, say N. 809 If unsure, say N.
792 810
811if TTY
812
793config TOUCHSCREEN_TOUCHIT213 813config TOUCHSCREEN_TOUCHIT213
794 tristate "Sahara TouchIT-213 touchscreen" 814 tristate "Sahara TouchIT-213 touchscreen"
795 select SERIO 815 select SERIO
@@ -813,6 +833,8 @@ config TOUCHSCREEN_TSC_SERIO
813 To compile this driver as a module, choose M here: the 833 To compile this driver as a module, choose M here: the
814 module will be called tsc40. 834 module will be called tsc40.
815 835
836endif # TTY
837
816config TOUCHSCREEN_TSC2005 838config TOUCHSCREEN_TSC2005
817 tristate "TSC2005 based touchscreens" 839 tristate "TSC2005 based touchscreens"
818 depends on SPI_MASTER && GENERIC_HARDIRQS 840 depends on SPI_MASTER && GENERIC_HARDIRQS