Commit 0b0c67c7 authored by Geert Uytterhoeven's avatar Geert Uytterhoeven Committed by Linus Torvalds

[PATCH] M68k IRQ API updates [15/20]

M68k input drivers: Update to the new irq API (from Roman Zippel and me) [15/20]
parent dbac8f1a
...@@ -52,7 +52,7 @@ static char *amijoy_phys[2] = { "amijoy/input0", "amijoy/input1" }; ...@@ -52,7 +52,7 @@ static char *amijoy_phys[2] = { "amijoy/input0", "amijoy/input1" };
static char *amijoy_name = "Amiga joystick"; static char *amijoy_name = "Amiga joystick";
static void amijoy_interrupt(int irq, void *dummy, struct pt_regs *fp) static irqreturn_t amijoy_interrupt(int irq, void *dummy, struct pt_regs *fp)
{ {
int i, data = 0, button = 0; int i, data = 0, button = 0;
...@@ -74,6 +74,7 @@ static void amijoy_interrupt(int irq, void *dummy, struct pt_regs *fp) ...@@ -74,6 +74,7 @@ static void amijoy_interrupt(int irq, void *dummy, struct pt_regs *fp)
input_sync(amijoy_dev + i); input_sync(amijoy_dev + i);
} }
return IRQ_HANDLED;
} }
static int amijoy_open(struct input_dev *dev) static int amijoy_open(struct input_dev *dev)
......
...@@ -71,7 +71,7 @@ static struct input_dev amikbd_dev; ...@@ -71,7 +71,7 @@ static struct input_dev amikbd_dev;
static char *amikbd_name = "Amiga keyboard"; static char *amikbd_name = "Amiga keyboard";
static char *amikbd_phys = "amikbd/input0"; static char *amikbd_phys = "amikbd/input0";
static void amikbd_interrupt(int irq, void *dummy, struct pt_regs *fp) static irqreturn_t amikbd_interrupt(int irq, void *dummy, struct pt_regs *fp)
{ {
unsigned char scancode, down; unsigned char scancode, down;
...@@ -93,16 +93,14 @@ static void amikbd_interrupt(int irq, void *dummy, struct pt_regs *fp) ...@@ -93,16 +93,14 @@ static void amikbd_interrupt(int irq, void *dummy, struct pt_regs *fp)
input_report_key(&amikbd_dev, scancode, 1); input_report_key(&amikbd_dev, scancode, 1);
input_report_key(&amikbd_dev, scancode, 0); input_report_key(&amikbd_dev, scancode, 0);
input_sync(&amikbd_dev); input_sync(&amikbd_dev);
return; } else {
input_report_key(&amikbd_dev, scancode, down);
input_sync(&amikbd_dev);
} }
} else /* scancodes >= 0x78 are error codes */
printk(amikbd_messages[scancode - 0x78]);
input_report_key(&amikbd_dev, scancode, down); return IRQ_HANDLED;
input_sync(&amikbd_dev);
return;
}
printk(amikbd_messages[scancode - 0x78]); /* scancodes >= 0x78 are error codes */
} }
static int __init amikbd_init(void) static int __init amikbd_init(void)
......
...@@ -40,7 +40,7 @@ static struct input_dev amimouse_dev; ...@@ -40,7 +40,7 @@ static struct input_dev amimouse_dev;
static char *amimouse_name = "Amiga mouse"; static char *amimouse_name = "Amiga mouse";
static char *amimouse_phys = "amimouse/input0"; static char *amimouse_phys = "amimouse/input0";
static void amimouse_interrupt(int irq, void *dummy, struct pt_regs *fp) static irqreturn_t amimouse_interrupt(int irq, void *dummy, struct pt_regs *fp)
{ {
unsigned short joy0dat, potgor; unsigned short joy0dat, potgor;
int nx, ny, dx, dy; int nx, ny, dx, dy;
...@@ -73,6 +73,8 @@ static void amimouse_interrupt(int irq, void *dummy, struct pt_regs *fp) ...@@ -73,6 +73,8 @@ static void amimouse_interrupt(int irq, void *dummy, struct pt_regs *fp)
input_report_key(&amimouse_dev, BTN_RIGHT, potgor & 0x0400); input_report_key(&amimouse_dev, BTN_RIGHT, potgor & 0x0400);
input_sync(&amimouse_dev); input_sync(&amimouse_dev);
return IRQ_HANDLED;
} }
static int amimouse_open(struct input_dev *dev) static int amimouse_open(struct input_dev *dev)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment