Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
[linux-2.6] / drivers / input / keyboard / maple_keyb.c
index 42f5d4e..22f17a5 100644 (file)
@@ -139,7 +139,7 @@ static void dc_scan_kbd(struct dc_kbd *kbd)
 static void dc_kbd_callback(struct mapleq *mq)
 {
        struct maple_device *mapledev = mq->dev;
-       struct dc_kbd *kbd = mapledev->private_data;
+       struct dc_kbd *kbd = maple_get_drvdata(mapledev);
        unsigned long *buf = mq->recvbuf;
 
        /*
@@ -175,8 +175,6 @@ static int probe_maple_kbd(struct device *dev)
                goto fail;
        }
 
-       mdev->private_data = kbd;
-
        kbd->dev = idev;
        memcpy(kbd->keycode, dc_kbd_keycode, sizeof(kbd->keycode));
 
@@ -204,27 +202,30 @@ static int probe_maple_kbd(struct device *dev)
                MAPLE_FUNC_KEYBOARD);
 
        mdev->driver = mdrv;
+
+       maple_set_drvdata(mdev, kbd);
+
        return error;
 
 fail:
        input_free_device(idev);
        kfree(kbd);
-       mdev->private_data = NULL;
+       maple_set_drvdata(mdev, NULL);
        return error;
 }
 
 static int remove_maple_kbd(struct device *dev)
 {
        struct maple_device *mdev = to_maple_dev(dev);
-       struct dc_kbd *kbd;
+       struct dc_kbd *kbd = maple_get_drvdata(mdev);
 
        mutex_lock(&maple_keyb_mutex);
 
-       kbd = mdev->private_data;
-       mdev->private_data = NULL;
        input_unregister_device(kbd->dev);
        kfree(kbd);
 
+       maple_set_drvdata(mdev, NULL);
+
        mutex_unlock(&maple_keyb_mutex);
        return 0;
 }
@@ -235,17 +236,17 @@ static struct maple_driver dc_kbd_driver = {
                .name = "Dreamcast_keyboard",
                .probe = probe_maple_kbd,
                .remove = remove_maple_kbd,
-       },
+       },
 };
 
 static int __init dc_kbd_init(void)
 {
-       return maple_driver_register(&dc_kbd_driver.drv);
+       return maple_driver_register(&dc_kbd_driver);
 }
 
 static void __exit dc_kbd_exit(void)
 {
-       driver_unregister(&dc_kbd_driver.drv);
+       maple_driver_unregister(&dc_kbd_driver);
 }
 
 module_init(dc_kbd_init);