diff options
Diffstat (limited to 'drivers/char/scx200_gpio.c')
| -rw-r--r-- | drivers/char/scx200_gpio.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/char/scx200_gpio.c b/drivers/char/scx200_gpio.c index 5a280a330401..45083e5dd23b 100644 --- a/drivers/char/scx200_gpio.c +++ b/drivers/char/scx200_gpio.c | |||
| @@ -126,9 +126,10 @@ static int __init scx200_gpio_init(void) | |||
| 126 | undo_chrdev_region: | 126 | undo_chrdev_region: |
| 127 | unregister_chrdev_region(dev, num_pins); | 127 | unregister_chrdev_region(dev, num_pins); |
| 128 | undo_platform_device_add: | 128 | undo_platform_device_add: |
| 129 | platform_device_put(pdev); | 129 | platform_device_del(pdev); |
| 130 | undo_malloc: | 130 | undo_malloc: |
| 131 | kfree(pdev); | 131 | platform_device_put(pdev); |
| 132 | |||
| 132 | return rc; | 133 | return rc; |
| 133 | } | 134 | } |
| 134 | 135 | ||
| @@ -136,7 +137,6 @@ static void __exit scx200_gpio_cleanup(void) | |||
| 136 | { | 137 | { |
| 137 | kfree(scx200_devices); | 138 | kfree(scx200_devices); |
| 138 | unregister_chrdev_region(MKDEV(major, 0), num_pins); | 139 | unregister_chrdev_region(MKDEV(major, 0), num_pins); |
| 139 | platform_device_put(pdev); | ||
| 140 | platform_device_unregister(pdev); | 140 | platform_device_unregister(pdev); |
| 141 | /* kfree(pdev); */ | 141 | /* kfree(pdev); */ |
| 142 | } | 142 | } |
