diff options
Diffstat (limited to 'recipes/snes232/snes232-2.6.patch')
-rw-r--r-- | recipes/snes232/snes232-2.6.patch | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/recipes/snes232/snes232-2.6.patch b/recipes/snes232/snes232-2.6.patch new file mode 100644 index 0000000000..cfefe488ad --- /dev/null +++ b/recipes/snes232/snes232-2.6.patch @@ -0,0 +1,46 @@ +--- snes232.c~snes232-2.6.patch 2002-11-18 00:18:44.000000000 +0000 ++++ snes232.c 2004-10-10 01:15:10.000000000 +0100 +@@ -60,7 +60,7 @@ + BTN_B, /* 15 */ + }; + +-static void snes232_interrupt(struct serio *serio, unsigned char data, unsigned int flags) ++static irqreturn_t snes232_interrupt(struct serio *serio, unsigned char data, unsigned int flags, struct pt_regs *regs) + { + struct snes232* snes232 = serio->private; + struct input_dev *dev = (data & 0x40) ? &snes232->dev[1] : &snes232->dev[0]; +@@ -85,6 +85,10 @@ + input_report_key(dev, button_map[btn], down); + break; + } ++ ++ input_sync(dev); ++ ++ return IRQ_HANDLED; + } + + /* +@@ -133,10 +137,10 @@ + snes232->dev[d].absbit[0] = BIT(ABS_X) | BIT(ABS_Y); + + snes232->dev[d].name = snes232_name; +- snes232->dev[d].idbus = BUS_RS232; +- snes232->dev[d].idvendor = SERIO_SNES232; +- snes232->dev[d].idproduct = 0x0001; +- snes232->dev[d].idversion = 0x0100; ++ snes232->dev[d].id.bustype = BUS_RS232; ++ snes232->dev[d].id.vendor = SERIO_SNES232; ++ snes232->dev[d].id.product = 0x0001; ++ snes232->dev[d].id.version = 0x0100; + + for (i = 0; i < 2; i++) { + snes232->dev[d].absmax[ABS_X+i] = 64; +@@ -148,7 +152,7 @@ + + input_register_device(&snes232->dev[d]); + +- printk(KERN_INFO "input%d: %s on serio%d\n", snes232->dev[d].number, snes232_name, serio->number); ++ printk(KERN_INFO "%s: %s on %s\n", snes232->dev[d].name, snes232_name, serio->name); + } + } + |