diff options
author | Joe Millenbach <jmillenbach@gmail.com> | 2013-01-18 01:44:22 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-01-18 19:15:27 -0500 |
commit | 4f73bc4dd3e8563ef4109f293a092820dff66d92 (patch) | |
tree | 8ebd5d01abaceb70da1932db1a5e7219630b0fd3 /arch | |
parent | a1bf9584429d61b7096f93ae09325e1ba538e9e8 (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 'arch')
-rw-r--r-- | arch/alpha/Kconfig | 2 | ||||
-rw-r--r-- | arch/ia64/hp/sim/Kconfig | 1 | ||||
-rw-r--r-- | arch/m68k/Kconfig.devices | 2 | ||||
-rw-r--r-- | arch/parisc/Kconfig | 1 | ||||
-rw-r--r-- | arch/tile/Kconfig | 1 | ||||
-rw-r--r-- | arch/um/Kconfig.common | 1 | ||||
-rw-r--r-- | arch/xtensa/Kconfig | 1 |
7 files changed, 8 insertions, 1 deletions
diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig index 9d5904cc7712..1ef196ddadeb 100644 --- a/arch/alpha/Kconfig +++ b/arch/alpha/Kconfig | |||
@@ -125,6 +125,7 @@ choice | |||
125 | 125 | ||
126 | config ALPHA_GENERIC | 126 | config ALPHA_GENERIC |
127 | bool "Generic" | 127 | bool "Generic" |
128 | depends on TTY | ||
128 | help | 129 | help |
129 | A generic kernel will run on all supported Alpha hardware. | 130 | A generic kernel will run on all supported Alpha hardware. |
130 | 131 | ||
@@ -491,6 +492,7 @@ config VGA_HOSE | |||
491 | 492 | ||
492 | config ALPHA_SRM | 493 | config ALPHA_SRM |
493 | bool "Use SRM as bootloader" if ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P || ALPHA_PC164 || ALPHA_TAKARA || ALPHA_EB164 || ALPHA_ALCOR || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_NAUTILUS || ALPHA_NONAME | 494 | bool "Use SRM as bootloader" if ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P || ALPHA_PC164 || ALPHA_TAKARA || ALPHA_EB164 || ALPHA_ALCOR || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_NAUTILUS || ALPHA_NONAME |
495 | depends on TTY | ||
494 | default y if ALPHA_JENSEN || ALPHA_MIKASA || ALPHA_SABLE || ALPHA_LYNX || ALPHA_NORITAKE || ALPHA_DP264 || ALPHA_RAWHIDE || ALPHA_EIGER || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_MARVEL | 496 | default y if ALPHA_JENSEN || ALPHA_MIKASA || ALPHA_SABLE || ALPHA_LYNX || ALPHA_NORITAKE || ALPHA_DP264 || ALPHA_RAWHIDE || ALPHA_EIGER || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_MARVEL |
495 | ---help--- | 497 | ---help--- |
496 | There are two different types of booting firmware on Alphas: SRM, | 498 | There are two different types of booting firmware on Alphas: SRM, |
diff --git a/arch/ia64/hp/sim/Kconfig b/arch/ia64/hp/sim/Kconfig index 8d513a8c5266..d84707d55203 100644 --- a/arch/ia64/hp/sim/Kconfig +++ b/arch/ia64/hp/sim/Kconfig | |||
@@ -8,6 +8,7 @@ config HP_SIMETH | |||
8 | 8 | ||
9 | config HP_SIMSERIAL | 9 | config HP_SIMSERIAL |
10 | bool "Simulated serial driver support" | 10 | bool "Simulated serial driver support" |
11 | depends on TTY | ||
11 | 12 | ||
12 | config HP_SIMSERIAL_CONSOLE | 13 | config HP_SIMSERIAL_CONSOLE |
13 | bool "Console for HP simulator" | 14 | bool "Console for HP simulator" |
diff --git a/arch/m68k/Kconfig.devices b/arch/m68k/Kconfig.devices index c4cdfe444c64..4bc945dfe467 100644 --- a/arch/m68k/Kconfig.devices +++ b/arch/m68k/Kconfig.devices | |||
@@ -41,7 +41,7 @@ config NFBLOCK | |||
41 | 41 | ||
42 | config NFCON | 42 | config NFCON |
43 | tristate "NatFeat console driver" | 43 | tristate "NatFeat console driver" |
44 | depends on NATFEAT | 44 | depends on TTY && NATFEAT |
45 | help | 45 | help |
46 | Say Y to include support for the ARAnyM NatFeat console driver | 46 | Say Y to include support for the ARAnyM NatFeat console driver |
47 | which allows the console output to be redirected to the stderr | 47 | which allows the console output to be redirected to the stderr |
diff --git a/arch/parisc/Kconfig b/arch/parisc/Kconfig index b77feffbadea..df5beb639760 100644 --- a/arch/parisc/Kconfig +++ b/arch/parisc/Kconfig | |||
@@ -23,6 +23,7 @@ config PARISC | |||
23 | select HAVE_MOD_ARCH_SPECIFIC | 23 | select HAVE_MOD_ARCH_SPECIFIC |
24 | select MODULES_USE_ELF_RELA | 24 | select MODULES_USE_ELF_RELA |
25 | select CLONE_BACKWARDS | 25 | select CLONE_BACKWARDS |
26 | select TTY # Needed for pdc_cons.c | ||
26 | 27 | ||
27 | help | 28 | help |
28 | The PA-RISC microprocessor is designed by Hewlett-Packard and used | 29 | The PA-RISC microprocessor is designed by Hewlett-Packard and used |
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig index 875d008828b8..ae8a7ca67fa4 100644 --- a/arch/tile/Kconfig +++ b/arch/tile/Kconfig | |||
@@ -121,6 +121,7 @@ config DEBUG_COPY_FROM_USER | |||
121 | def_bool n | 121 | def_bool n |
122 | 122 | ||
123 | config HVC_TILE | 123 | config HVC_TILE |
124 | depends on TTY | ||
124 | select HVC_DRIVER | 125 | select HVC_DRIVER |
125 | def_bool y | 126 | def_bool y |
126 | 127 | ||
diff --git a/arch/um/Kconfig.common b/arch/um/Kconfig.common index 648121b037d5..bceee6623b00 100644 --- a/arch/um/Kconfig.common +++ b/arch/um/Kconfig.common | |||
@@ -12,6 +12,7 @@ config UML | |||
12 | select GENERIC_CPU_DEVICES | 12 | select GENERIC_CPU_DEVICES |
13 | select GENERIC_IO | 13 | select GENERIC_IO |
14 | select GENERIC_CLOCKEVENTS | 14 | select GENERIC_CLOCKEVENTS |
15 | select TTY # Needed for line.c | ||
15 | 16 | ||
16 | config MMU | 17 | config MMU |
17 | bool | 18 | bool |
diff --git a/arch/xtensa/Kconfig b/arch/xtensa/Kconfig index 5aab1acabf1c..ad64c73b8675 100644 --- a/arch/xtensa/Kconfig +++ b/arch/xtensa/Kconfig | |||
@@ -132,6 +132,7 @@ choice | |||
132 | 132 | ||
133 | config XTENSA_PLATFORM_ISS | 133 | config XTENSA_PLATFORM_ISS |
134 | bool "ISS" | 134 | bool "ISS" |
135 | depends on TTY | ||
135 | select XTENSA_CALIBRATE_CCOUNT | 136 | select XTENSA_CALIBRATE_CCOUNT |
136 | select SERIAL_CONSOLE | 137 | select SERIAL_CONSOLE |
137 | select XTENSA_ISS_NETWORK | 138 | select XTENSA_ISS_NETWORK |