summaryrefslogtreecommitdiffstats
path: root/drivers/char/keyboard.c
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2000-01-29 01:41:54 +0000
committerRalf Baechle <ralf@linux-mips.org>2000-01-29 01:41:54 +0000
commitf969d69ba9f952e5bdd38278e25e26a3e4a61a70 (patch)
treeb3530d803df59d726afaabebc6626987dee1ca05 /drivers/char/keyboard.c
parenta10ce7ef2066b455d69187643ddf2073bfc4db24 (diff)
Merge with 2.3.27.
Diffstat (limited to 'drivers/char/keyboard.c')
-rw-r--r--drivers/char/keyboard.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/char/keyboard.c b/drivers/char/keyboard.c
index 5989fbff5..ea97ee151 100644
--- a/drivers/char/keyboard.c
+++ b/drivers/char/keyboard.c
@@ -32,7 +32,6 @@
#include <linux/string.h>
#include <linux/random.h>
#include <linux/init.h>
-#include <linux/module.h>
#include <asm/keyboard.h>
#include <asm/bitops.h>
@@ -42,6 +41,7 @@
#include <linux/vt_kern.h>
#include <linux/kbd_ll.h>
#include <linux/sysrq.h>
+#include <linux/acpi.h>
#define SIZE(x) (sizeof(x)/sizeof((x)[0]))
@@ -159,6 +159,9 @@ static int sysrq_pressed;
int sysrq_enabled = 1;
#endif
+static struct acpi_dev_info acpi_kbd_info = {ACPI_SYS_DEV, ACPI_KBC_HID, NULL};
+static struct acpi_dev *acpi_kbd = NULL;
+
/*
* Many other routines do put_queue, but I think either
* they produce ASCII, or they produce some user-assigned
@@ -201,6 +204,8 @@ void handle_scancode(unsigned char scancode, int down)
char up_flag = down ? 0 : 0200;
char raw_mode;
+ acpi_access(acpi_kbd);
+
do_poke_blanked_console = 1;
mark_bh(CONSOLE_BH);
add_keyboard_randomness(scancode | up_flag);
@@ -939,5 +944,8 @@ int __init kbd_init(void)
kbd_init_hw();
init_bh(KEYBOARD_BH, kbd_bh);
mark_bh(KEYBOARD_BH);
+
+ acpi_kbd = acpi_register(&acpi_kbd_info, 0);
+
return 0;
}