]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/input/joystick/gf2k.c
Input: Touchscreen: Make TSC2005 depend on SPI
[linux-2.6-omap-h63xx.git] / drivers / input / joystick / gf2k.c
index e4a699f6ec87603d9f9e840f3353419cded537a4..cb6eef1f2d99f6d7b80a9f5e02d7411ececbd153 100644 (file)
@@ -1,6 +1,4 @@
 /*
- * $Id: gf2k.c,v 1.19 2002/01/22 20:27:43 vojtech Exp $
- *
  *  Copyright (c) 1998-2001 Vojtech Pavlik
  */
 
@@ -220,7 +218,7 @@ static void gf2k_poll(struct gameport *gameport)
 
 static int gf2k_open(struct input_dev *dev)
 {
-       struct gf2k *gf2k = dev->private;
+       struct gf2k *gf2k = input_get_drvdata(dev);
 
        gameport_start_polling(gf2k->gameport);
        return 0;
@@ -228,7 +226,7 @@ static int gf2k_open(struct input_dev *dev)
 
 static void gf2k_close(struct input_dev *dev)
 {
-       struct gf2k *gf2k = dev->private;
+       struct gf2k *gf2k = input_get_drvdata(dev);
 
        gameport_stop_polling(gf2k->gameport);
 }
@@ -308,12 +306,14 @@ static int gf2k_connect(struct gameport *gameport, struct gameport_driver *drv)
        input_dev->id.vendor = GAMEPORT_ID_VENDOR_GENIUS;
        input_dev->id.product = gf2k->id;
        input_dev->id.version = 0x0100;
-       input_dev->cdev.dev = &gameport->dev;
-       input_dev->private = gf2k;
+       input_dev->dev.parent = &gameport->dev;
+
+       input_set_drvdata(input_dev, gf2k);
 
        input_dev->open = gf2k_open;
        input_dev->close = gf2k_close;
-       input_dev->evbit[0] = BIT(EV_KEY) | BIT(EV_ABS);
+
+       input_dev->evbit[0] = BIT_MASK(EV_KEY) | BIT_MASK(EV_ABS);
 
        for (i = 0; i < gf2k_axes[gf2k->id]; i++)
                set_bit(gf2k_abs[i], input_dev->absbit);
@@ -341,7 +341,9 @@ static int gf2k_connect(struct gameport *gameport, struct gameport_driver *drv)
                input_dev->absflat[gf2k_abs[i]] = (i < 2) ? 24 : 0;
        }
 
-       input_register_device(gf2k->dev);
+       err = input_register_device(gf2k->dev);
+       if (err)
+               goto fail2;
 
        return 0;