From: Nick Warne <nick@linicks.net>
To: linux-kernel@vger.kernel.org
Subject: [PATCH 2.4.31] Reintroduction i386 CONFIG_DUMMY_KEYB option
Date: Thu, 13 Oct 2005 18:38:44 +0100 [thread overview]
Message-ID: <200510131838.45082.nick@linicks.net> (raw)
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 <nick@linicks.net>
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
--- linux-2.4.31.orig/Documentation/Configure.help Mon Apr 4 02:42:19 2005
+++ linux-2.4.31n/Documentation/Configure.help Thu Oct 13 09:38:07 2005
@@ -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
--- linux-2.4.31.orig/arch/i386/kernel/dmi_scan.c Wed Nov 17 11:54:21 2004
+++ linux-2.4.31n/arch/i386/kernel/dmi_scan.c Wed Oct 12 15:57:27 2005
@@ -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
--- linux-2.4.31.orig/drivers/char/dummy_keyb.c Mon Aug 25 12:44:41 2003
+++ linux-2.4.31n/drivers/char/dummy_keyb.c Wed Oct 12 15:38:48 2005
@@ -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
--- linux-2.4.31.orig/drivers/input/Config.in Wed Feb 18 13:36:31 2004
+++ linux-2.4.31n/drivers/input/Config.in Wed Oct 12 15:16:09 2005
@@ -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
diff -Naur linux-2.4.31.orig/kernel/panic.c linux-2.4.31n/kernel/panic.c
--- linux-2.4.31.orig/kernel/panic.c Wed Nov 17 11:54:22 2004
+++ linux-2.4.31n/kernel/panic.c Wed Oct 12 16:07:56 2005
@@ -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
--
http://sourceforge.net/projects/quake2plus
"When you're chewing on life's gristle,
Don't grumble, Give a whistle..."
next reply other threads:[~2005-10-13 17:38 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-10-13 17:38 Nick Warne [this message]
2005-10-13 16:31 ` [PATCH 2.4.31] Reintroduction i386 CONFIG_DUMMY_KEYB option Jeff V. Merkey
2005-10-14 4:32 ` Willy Tarreau
-- strict thread matches above, loose matches on Subject: below --
2005-10-14 9:19 Nick Warne
2005-10-18 8:02 ` Marcelo Tosatti
2005-10-18 18:30 ` Nick Warne
2005-10-18 22:41 ` Willy Tarreau
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200510131838.45082.nick@linicks.net \
--to=nick@linicks.net \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox