Reintroduction i386 CONFIG_DUMMY_KEYB option
Subsystems (3)
PATCH 1/1 Reintroduction i386 CONFIG_DUMMY_KEYB option
Hi all,
A small patch here to reintroduce the dummy keyboard, which seems to have been lost sometime - refer to my LKML thread:
http://marc.theaimsgroup.com/?l=linux-kernel&m=112885471602308&w=2
I reason that a lot of people have headless boxes (I have 7), and the dummy keyboard option appears to be unknown, but a good addition...
I found out that CONFIG_DUMMY_KEYB is slightly broken in that although the header text in 'dummy_keyb.c' states that this should be used with CONFIG_VT, using this option breaks the kernel build 'as is'. This patch fixes that, and also allows the use of dummy keyboard with or with out CONFIG_VT which stops all the timeout warnings etc at boot on a keyboardless box. The option
to use the dummy keyboard is only available if CONFIG_INPUT_KEYBDEV is 'n'.
I apologise sending to list only, but I couldn't find a maintainer of this area...
Nick
Signed off by Nick Warne <[email protected]>
Documentation/Configure.help | 18 ++++++++++++++++++ arch/i386/kernel/dmi_scan.c | 2 ++ drivers/char/dummy_keyb.c | 1 + drivers/input/Config.in | 5 +++++ kernel/panic.c | 2 +- 5 files changed, 27 insertions(+), 1 deletion(-)
diff -Naur linux-2.4.31.orig/Documentation/Configure.help linux-2.4.31n/Documentation/Configure.help
Documentation/Configure.help +18 -0
@@ -15242,6 +15242,24 @@ The module will be called joydev.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. +Dummy keyboard driver +CONFIG_DUMMY_KEYB + What is this for? + + Not all systems have keyboards. Some don't even have a keyboard + port. However, some of those systems have video support and can + use the virtual terminal support for display. However, the virtual + terminal code expects a keyboard of some kind. This driver keeps + the virtual terminal code happy by providing it a "keyboard", albeit + a very quiet one. + + If you want to use the virtual terminal support but your system + does not support a keyboard, define CONFIG_DUMMY_KEYB along with + CONFIG_VT. + + This can also be selected lonesome without any VT support (i.e. no + monitor or keyboard attached) - just define CONFIG_DUMMY_KEYB. + Event interface support CONFIG_INPUT_EVDEV Say Y here if you want your USB or ADB HID device events be
diff -Naur linux-2.4.31.orig/arch/i386/kernel/dmi_scan.c linux-2.4.31n/arch/i386/kernel/dmi_scan.c
arch/i386/kernel/dmi_scan.c +1 -0
@@ -412,11 +412,13 @@ static __init int broken_ps2_resume(struct dmi_blacklist *d) { #ifdef CONFIG_VT +#ifndef CONFIG_DUMMY_KEYB if (pm_kbd_request_override == NULL) { pm_kbd_request_override = pckbd_pm_resume; printk(KERN_INFO "%s machine detected. Mousepad Resume Bug workaround
enabled.\n", d->ident);
}
+#endif
#endif
return 0;
}
diff -Naur linux-2.4.31.orig/drivers/char/dummy_keyb.c linux-2.4.31n/drivers/char/dummy_keyb.c
drivers/char/dummy_keyb.c +1 -0
@@ -29,6 +29,7 @@#include <linux/errno.h> #include <linux/init.h> #include <linux/input.h> +#include <asm/keyboard.h> void kbd_leds (unsigned char leds) {
diff -Naur linux-2.4.31.orig/drivers/input/Config.in linux-2.4.31n/drivers/input/Config.in
drivers/input/Config.in +5 -0
@@ -7,6 +7,11 @@ tristate 'Input core support' CONFIG_INPUT dep_tristate ' Keyboard support' CONFIG_INPUT_KEYBDEV $CONFIG_INPUT + +if [ "$CONFIG_INPUT_KEYBDEV" == "n" ]; then + bool ' Use dummy keyboard driver' CONFIG_DUMMY_KEYB $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
kernel/panic.c +1 -1
@@ -104,7 +104,7 @@#endif sti ();for (;;) { -#if defined(CONFIG_X86 ) && defined(CONFIG_VT ) +#if defined(CONFIG_X86 ) && defined(CONFIG_VT ) && !defined(CONFIG_DUMMY_KEYB )extern void panic_blink (void );panic_blink ();#endif
Signature · 4 lines
http://sourceforge.net/projects/quake2plus "When you're chewing on life's gristle, Don't grumble, Give a whistle..."
Quoted 10 lines · Nick Warne
Hi all,
A small patch here to reintroduce the dummy keyboard, which seems to have been lost sometime - refer to my LKML thread:
http://marc.theaimsgroup.com/?l=linux-kernel&m=112885471602308&w=2
A serial based keyboard driver for general purpose debuggers and test harnesses would be a whole lot more useful. Ever consider it? Snatch the one out of kdb and submit it as a patch. The AIMS test. I remember that from my Memorex Telex days on OS/2.
Jeff
Hi Nick,
On Thu, Oct 13, 2005 at 06:38:44PM +0100, Nick Warne wrote:
(...)
arch/i386/kernel/dmi_scan.c line 415
Quoted 9 lines
diff -Naur
linux-2.4.31.orig/arch/i386/kernel/dmi_scan.clinux-2.4.31n/arch/i386/kernel/dmi_scan.carch/i386/kernel/dmi_scan.c +1
-0@@ -412,11 +412,13 @@static __init int broken_ps2_resume (struct dmi_blacklist *d) {#ifdef CONFIG_VT +#ifndef CONFIG_DUMMY_KEYB
Please could you change this to #if defined(CONFIG_VT) && !defined(CONFIG_DUMMY_KEYB) ?
Marcelo, I'd like this one to be merged, as it is useful to many of us, and is already fixed in 2.6 (where you're not forced to have a keyboard). It's not intrusive and at most a build fix. Would you please accept Nick's patch after the little clean-up above ?
Thanks in advance,
Willy