Boy, it would be nice if that was mentioned somewhere else. :) alpha,
mips, and mips64 get that wrong..
> So it will still crap out, because CONFIG_VT and CONFIG_SUN_KEYBOARD won't be
> set early enough.
Well CONFIG_SUN_KEYBOARD is define_bool'ed at the begining on
sparc/sparc64 (and PCI is asked before input, so that is OK). But
CONFIG_VT makes things less fun..
> Three possible options, none of them especially good:
> 1. Do various munging of config and make setup and try to cover this.
Probably harder than it's worth.
> 2. Move keyboard handling code to input subsystem
I think that will work out the best. How's the attached look? It moves
drivers/input/Config.in inside of drivers/char/Config.in and then fixes
arches which had both. (Lightly tested from xconfig[1] for all arches
which got changed).
> 3. Do wholesale backport of input subsystem from 2.5
Not really an option (and 2.5 has this problem anyhow) since it's so
invasive, once it's done.
-- Tom Rini (TR1265) http://gate.crashing.org/~trini/[1] xconfig because it tends to be the easiest to break.
===== arch/alpha/config.in 1.15 vs edited ===== --- 1.15/arch/alpha/config.in Sat May 25 19:37:06 2002 +++ edited/arch/alpha/config.in Wed Jun 26 07:30:11 2002 @@ -397,7 +397,6 @@ endmenu source drivers/usb/Config.in -source drivers/input/Config.in source net/bluetooth/Config.in ===== arch/arm/config.in 1.14 vs edited ===== --- 1.14/arch/arm/config.in Fri Apr 5 12:12:20 2002 +++ edited/arch/arm/config.in Wed Jun 26 07:30:24 2002 @@ -554,11 +554,6 @@ fi endmenu -# -# input before char - char/joystick depends on it. As does USB. -# -source drivers/input/Config.in - source drivers/char/Config.in if [ "$CONFIG_ARCH_ACORN" = "y" -a \ "$CONFIG_BUSMOUSE" = "y" ]; then ===== arch/cris/config.in 1.10 vs edited ===== --- 1.10/arch/cris/config.in Tue Feb 5 07:10:18 2002 +++ edited/arch/cris/config.in Wed Jun 26 07:30:29 2002 @@ -222,10 +222,6 @@ fi endmenu -# -# input before char - char/joystick depends on it. As does USB. -# -source drivers/input/Config.in source drivers/char/Config.in #source drivers/misc/Config.in ===== arch/i386/config.in 1.28 vs edited ===== --- 1.28/arch/i386/config.in Tue Apr 16 04:30:28 2002 +++ edited/arch/i386/config.in Wed Jun 26 07:30:32 2002 @@ -375,10 +375,6 @@ fi endmenu -# -# input before char - char/joystick depends on it. As does USB. -# -source drivers/input/Config.in source drivers/char/Config.in #source drivers/misc/Config.in ===== arch/ia64/config.in 1.9 vs edited ===== --- 1.9/arch/ia64/config.in Sat Mar 9 13:41:04 2002 +++ edited/arch/ia64/config.in Wed Jun 26 07:30:36 2002 @@ -203,10 +203,6 @@ fi # !HP_SIM -# -# input before char - char/joystick depends on it. As does USB. -# -source drivers/input/Config.in source drivers/char/Config.in #source drivers/misc/Config.in ===== arch/m68k/config.in 1.8 vs edited ===== --- 1.8/arch/m68k/config.in Fri Mar 1 05:29:44 2002 +++ edited/arch/m68k/config.in Wed Jun 26 07:42:36 2002 @@ -171,10 +171,6 @@ source net/Config.in fi -if [ "$CONFIG_MAC" = "y" ]; then - source drivers/input/Config.in -fi - mainmenu_option next_comment comment 'ATA/IDE/MFM/RLL support' @@ -396,6 +392,10 @@ if [ "$CONFIG_VT" = "y" ]; then bool 'Support for console on virtual terminal' CONFIG_VT_CONSOLE fi +fi + +if [ "$CONFIG_MAC" = "y" ]; then + source drivers/input/Config.in fi if [ "$CONFIG_ATARI" = "y" ]; then ===== arch/mips/config.in 1.6 vs edited ===== --- 1.6/arch/mips/config.in Thu Feb 28 06:57:19 2002 +++ edited/arch/mips/config.in Wed Jun 26 07:30:46 2002 @@ -628,7 +628,6 @@ fi source drivers/usb/Config.in -source drivers/input/Config.in mainmenu_option next_comment comment 'Kernel hacking' ===== arch/mips64/config.in 1.6 vs edited ===== --- 1.6/arch/mips64/config.in Thu Feb 28 06:57:19 2002 +++ edited/arch/mips64/config.in Wed Jun 26 07:30:50 2002 @@ -325,7 +325,6 @@ fi source drivers/usb/Config.in -source drivers/input/Config.in mainmenu_option next_comment comment 'Kernel hacking' ===== arch/ppc/config.in 1.17 vs edited ===== --- 1.17/arch/ppc/config.in Fri Apr 5 03:38:55 2002 +++ edited/arch/ppc/config.in Wed Jun 26 07:31:14 2002 @@ -321,8 +321,6 @@ fi endmenu -source drivers/input/Config.in - mainmenu_option next_comment comment 'Macintosh device drivers' ===== arch/ppc64/config.in 1.2 vs edited ===== --- 1.2/arch/ppc64/config.in Fri Mar 29 03:18:26 2002 +++ edited/arch/ppc64/config.in Wed Jun 26 07:31:19 2002 @@ -170,8 +170,6 @@ source drivers/video/Config.in endmenu -source drivers/input/Config.in - if [ "$CONFIG_PPC_ISERIES" = "y" ]; then mainmenu_option next_comment comment 'iSeries device drivers' ===== arch/sh/config.in 1.6 vs edited ===== --- 1.6/arch/sh/config.in Tue Feb 5 07:10:15 2002 +++ edited/arch/sh/config.in Wed Jun 26 07:43:22 2002 @@ -275,11 +275,6 @@ fi endmenu -# -# input before char - char/joystick depends on it. As does USB. -# -source drivers/input/Config.in - # if [ "$CONFIG_SH_DREAMCAST" = "y" ]; then # source drivers/maple/Config.in # fi @@ -312,6 +307,8 @@ "$CONFIG_SH_SOLUTION_ENGINE" = "y" ]; then bool 'Heartbeat LED' CONFIG_HEARTBEAT fi + +source drivers/input/Config.in if [ "$CONFIG_SH_DREAMCAST" = "y" -a "$CONFIG_MAPLE" != "n" ]; then mainmenu_option next_comment ===== drivers/char/Config.in 1.28 vs edited ===== --- 1.28/drivers/char/Config.in Fri May 3 01:49:04 2002 +++ edited/drivers/char/Config.in Wed Jun 26 07:28:09 2002 @@ -137,6 +137,8 @@ source drivers/i2c/Config.in +source drivers/input/Config.in + mainmenu_option next_comment comment 'Mice' tristate 'Bus Mouse Support' CONFIG_BUSMOUSE ===== drivers/input/Config.in 1.2 vs edited ===== --- 1.2/drivers/input/Config.in Tue Feb 5 00:45:17 2002 +++ edited/drivers/input/Config.in Tue Jun 25 08:58:41 2002 @@ -6,7 +6,12 @@ comment 'Input core support' tristate 'Input core support' CONFIG_INPUT -dep_tristate ' Keyboard support' CONFIG_INPUT_KEYBDEV $CONFIG_INPUT +if [ "$CONFIG_SUN_KEYBOARD" = "y" -a "$CONFIG_PCI" = "y"]; then + define_bool CONFIG_SUN_CAN_INPUT_KEYBDEV y +fi +if [ "$CONFIG_VT" = "y" -o "$CONFIG_SUN_CAN_INPUT_KEYBDEV" = "y" ]; then + dep_tristate ' Keyboard support' CONFIG_INPUT_KEYBDEV $CONFIG_INPUT +fi dep_tristate ' Mouse support' CONFIG_INPUT_MOUSEDEV $CONFIG_INPUT if [ "$CONFIG_INPUT_MOUSEDEV" != "n" ]; then int ' Horizontal screen resolution' CONFIG_INPUT_MOUSEDEV_SCREEN_X 1024 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/