patch-2.4.22 linux-2.4.22/drivers/acorn/char/keyb_arc.c

Next file: linux-2.4.22/drivers/acorn/char/mouse_ps2.c
Previous file: linux-2.4.22/drivers/acorn/char/i2c.c
Back to the patch index
Back to the overall index

diff -urN linux-2.4.21/drivers/acorn/char/keyb_arc.c linux-2.4.22/drivers/acorn/char/keyb_arc.c
@@ -419,12 +419,51 @@
 		disable_irq(irq);
 }
 
+static int a5kkbd_setkeycode(unsigned int scancode, unsigned int keycode)
+{
+	return -EINVAL;
+}
+
+static int a5kkbd_getkeycode(unsigned int scancode)
+{
+	return -EINVAL;
+}
+
+static int a5kkbd_translate(unsigned char scancode, unsigned char *keycode, char rawmode)
+{
+	*keycode = scancode;
+	return 1;
+}
+
+static char a5kkbd_unexpected_up(unsigned char keycode)
+{
+	return 0200;
+}
+
+static int a5kkbd_rate(struct kbd_repeat *rep)
+{
+	return -EINVAL;
+}
+
 #ifdef CONFIG_KBDMOUSE
 static struct busmouse a5kkbd_mouse = {
 	6, "kbdmouse", NULL, NULL, NULL, 7
 };
 #endif
 
+struct kbd_ops_struct a5k_kbd_ops = {
+	k_setkeycode:		a5kkbd_setkeycode,
+	k_getkeycode:		a5kkbd_getkeycode,
+	k_translate:		a5kkbd_translate,
+	k_unexpected_up:	a5kkbd_unexpected_up,
+	k_leds:			a5kkbd_leds,
+	k_rate:			a5kkbd_rate,
+#ifdef CONFIG_MAGIC_SYSRQ
+	k_sysrq_xlate:		a5kkbd_sysrq_xlate,
+	k_sysrq_key:		13,
+#endif
+};
+
 void __init a5kkbd_init_hw (void)
 {
 	if (request_irq (IRQ_KEYBOARDTX, a5kkbd_tx, 0, "keyboard", NULL) != 0)

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)