Resent as per Linus request.
Franz.
Hi,
the attached patch does the following:
* move input/Config.in in front of char/Config.in in all arch/*/config.in
(already done in t7p7 for x86)
* fix a small uncleanliness in char/keyboard.c, replace plain_map with
key_maps[0] to enable correct runtime switching of tables
* update keycode translation table in input/keybdev.c (checked with Vojtech)
Linus, please apply.
Franz.
diff -uprN linux-2.4.0-test7-pre7-clean/arch/alpha/config.in
linux-2.4.0-test7-pre7/arch/alpha/config.in
--- linux-2.4.0-test7-pre7-clean/arch/alpha/config.in Tue Aug 22 23:50:39 2000
+++ linux-2.4.0-test7-pre7/arch/alpha/config.in Wed Aug 23 20:10:21 2000
@@ -300,6 +300,8 @@ if [ "$CONFIG_CD_NO_IDESCSI" != "n" ]; t
fi
endmenu
+source drivers/input/Config.in
+
source drivers/char/Config.in
#source drivers/misc/Config.in
@@ -335,7 +337,6 @@ fi
endmenu
source drivers/usb/Config.in
-source drivers/input/Config.in
mainmenu_option next_comment
comment 'Kernel hacking'
diff -uprN linux-2.4.0-test7-pre7-clean/arch/arm/config.in
linux-2.4.0-test7-pre7/arch/arm/config.in
--- linux-2.4.0-test7-pre7-clean/arch/arm/config.in Tue Aug 22 23:50:39 2000
+++ linux-2.4.0-test7-pre7/arch/arm/config.in Wed Aug 23 20:11:02 2000
@@ -312,6 +312,8 @@ if [ "$CONFIG_ISDN" != "n" ]; then
fi
endmenu
+source drivers/input/Config.in
+
source drivers/char/Config.in
if [ "$CONFIG_ARCH_ACORN" = "y" -a \
"$CONFIG_BUSMOUSE" = "y" ]; then
@@ -354,8 +356,6 @@ if [ "$CONFIG_ARCH_ACORN" = "y" -o \
fi
source drivers/usb/Config.in
-source drivers/input/Config.in
-
mainmenu_option next_comment
comment 'Kernel hacking'
diff -uprN linux-2.4.0-test7-pre7-clean/arch/ia64/config.in
linux-2.4.0-test7-pre7/arch/ia64/config.in
--- linux-2.4.0-test7-pre7-clean/arch/ia64/config.in Tue Aug 22 23:50:39 2000
+++ linux-2.4.0-test7-pre7/arch/ia64/config.in Wed Aug 23 20:12:08 2000
@@ -160,6 +160,8 @@ endmenu
fi # !HP_SIM
+source drivers/input/Config.in
+
source drivers/char/Config.in
#source drivers/misc/Config.in
@@ -191,7 +193,6 @@ fi
endmenu
source drivers/usb/Config.in
-source drivers/input/Config.in
fi # !HP_SIM
diff -uprN linux-2.4.0-test7-pre7-clean/arch/mips/config.in
linux-2.4.0-test7-pre7/arch/mips/config.in
--- linux-2.4.0-test7-pre7-clean/arch/mips/config.in Tue Aug 22 23:50:39 2000
+++ linux-2.4.0-test7-pre7/arch/mips/config.in Wed Aug 23 20:13:27 2000
@@ -293,6 +293,8 @@ if [ "$CONFIG_ISA" = "y" -o "$CONFIG_PCI
endmenu
fi
+source drivers/input/Config.in
+
if [ "$CONFIG_DECSTATION" != "y" -a \
"$CONFIG_SGI_IP22" != "y" ]; then
source drivers/char/Config.in
@@ -378,7 +380,6 @@ if [ "$CONFIG_SGI_IP22" = "y" ]; then
fi
source drivers/usb/Config.in
-source drivers/input/Config.in
mainmenu_option next_comment
comment 'Kernel hacking'
diff -uprN linux-2.4.0-test7-pre7-clean/arch/mips64/config.in
linux-2.4.0-test7-pre7/arch/mips64/config.in
--- linux-2.4.0-test7-pre7-clean/arch/mips64/config.in Tue Aug 22 23:50:40 2000
+++ linux-2.4.0-test7-pre7/arch/mips64/config.in Wed Aug 23 20:14:08 2000
@@ -208,6 +208,8 @@ if [ "$CONFIG_CD_NO_IDESCSI" != "n" ]; t
fi
endmenu
+source drivers/input/Config.in
+
source drivers/char/Config.in
#source drivers/misc/Config.in
@@ -248,7 +250,6 @@ if [ "$CONFIG_SGI_IP22" = "y" ]; then
fi
source drivers/usb/Config.in
-source drivers/input/Config.in
mainmenu_option next_comment
comment 'Kernel hacking'
diff -uprN linux-2.4.0-test7-pre7-clean/arch/ppc/config.in
linux-2.4.0-test7-pre7/arch/ppc/config.in
--- linux-2.4.0-test7-pre7-clean/arch/ppc/config.in Tue Aug 22 23:50:40 2000
+++ linux-2.4.0-test7-pre7/arch/ppc/config.in Wed Aug 23 20:14:32 2000
@@ -262,6 +262,8 @@ comment 'Console drivers'
source drivers/video/Config.in
endmenu
+source drivers/input/Config.in
+
source drivers/char/Config.in
source drivers/media/Config.in
@@ -287,7 +289,6 @@ source arch/ppc/8260_io/Config.in
fi
source drivers/usb/Config.in
-source drivers/input/Config.in
mainmenu_option next_comment
comment 'Kernel hacking'
diff -uprN linux-2.4.0-test7-pre7-clean/drivers/char/keyboard.c
linux-2.4.0-test7-pre7/drivers/char/keyboard.c
--- linux-2.4.0-test7-pre7-clean/drivers/char/keyboard.c Tue Aug 1 04:36:10
2000
+++ linux-2.4.0-test7-pre7/drivers/char/keyboard.c Wed Aug 23 20:06:21 2000
@@ -322,7 +322,7 @@ void handle_scancode(unsigned char scanc
compute_shiftstate();
kbd->slockstate = 0; /* play it safe */
#else
- keysym = U(plain_map[keycode]);
+ keysym = U(key_maps[0][keycode]);
type = KTYP(keysym);
if (type == KT_SHIFT)
(*key_handler[type])(keysym & 0xff, up_flag);
@@ -750,7 +750,7 @@ void compute_shiftstate(void)
k = i*BITS_PER_LONG;
for(j=0; j<BITS_PER_LONG; j++,k++)
if(test_bit(k, key_down)) {
- sym = U(plain_map[k]);
+ sym = U(key_maps[0][k]);
if(KTYP(sym) == KT_SHIFT || KTYP(sym) == KT_SLOCK) {
val = KVAL(sym);
if (val == KVAL(K_CAPSSHIFT))
diff -uprN linux-2.4.0-test7-pre7-clean/drivers/input/keybdev.c
linux-2.4.0-test7-pre7/drivers/input/keybdev.c
--- linux-2.4.0-test7-pre7-clean/drivers/input/keybdev.c Tue Aug 22 23:50:41
2000
+++ linux-2.4.0-test7-pre7/drivers/input/keybdev.c Wed Aug 23 20:01:21 2000
@@ -40,22 +40,23 @@
static int x86_sysrq_alt = 0;
-static unsigned short x86_keycodes[256] =
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
+static unsigned short x86_keycodes[256] = {
+ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
80, 81, 82, 83, 43, 85, 86, 87, 88,115,119,120,121,375,123, 90,
284,285,309,298,312, 91,327,328,329,331,333,335,336,337,338,339,
- 367,294,293,286,350, 92,334,512,116,377,109,111,373,347,348,349,
+ 367,294,293,286,350, 92,334,512,116,377,109,111,259,347,348,349,
360, 93, 94, 95, 98,376,100,101,357,316,354,304,289,102,351,355,
103,104,105,275,281,272,306,106,274,107,288,364,358,363,362,361,
291,108,381,290,287,292,279,305,280, 99,112,257,258,113,270,114,
- 118,117,125,374,379,259,260,261,262,263,264,265,266,267,268,269,
+ 118,117,125,374,379,125,260,261,262,263,264,265,266,267,268,269,
271,273,276,277,278,282,283,295,296,297,299,300,301,302,303,307,
308,310,313,314,315,317,318,319,320,321,322,323,324,325,326,330,
- 332,340,341,342,343,344,345,346,356,359,365,368,369,370,371,372 };
+ 332,340,341,342,343,344,345,346,356,359,365,368,369,370,371,372
+};
static int emulate_raw(unsigned int keycode, int down)
{