diff -ru linux-2.6.1-vanilla/drivers/input/keyboard/98kbd.c linux-2.6.1/drivers/input/keyboard/98kbd.c
--- linux-2.6.1-vanilla/drivers/input/keyboard/98kbd.c	2004-01-29 17:00:48.000000000 -0200
+++ linux-2.6.1/drivers/input/keyboard/98kbd.c	2004-01-30 14:51:51.000000000 -0200
@@ -366,10 +366,17 @@
 	kfree(kbd98);
 }
 
+static struct serio_device_id kbd98_ids[] = {
+	{ SERIO_PC9800 | SERIO_PROTO | SERIO_ID | SERIO_EXTRA },
+	{ 0 },
+};
+MODULE_DEVICE_TABLE(serio, kbd98_ids);
+
 struct serio_dev kbd98_dev = {
 	.interrupt =	kbd98_interrupt,
 	.connect =	kbd98_connect,
-	.disconnect =	kbd98_disconnect
+	.disconnect =	kbd98_disconnect,
+	.id_table =	kbd98_ids,
 };
 
 int __init kbd98_init(void)
