diff options
Diffstat (limited to 'drivers/input/tablet/kbtab.c')
| -rw-r--r-- | drivers/input/tablet/kbtab.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/input/tablet/kbtab.c b/drivers/input/tablet/kbtab.c index 76b5d526cde9..3f7d1254b8ed 100644 --- a/drivers/input/tablet/kbtab.c +++ b/drivers/input/tablet/kbtab.c | |||
| @@ -193,13 +193,11 @@ static void kbtab_disconnect(struct usb_interface *intf) | |||
| 193 | struct kbtab *kbtab = usb_get_intfdata(intf); | 193 | struct kbtab *kbtab = usb_get_intfdata(intf); |
| 194 | 194 | ||
| 195 | usb_set_intfdata(intf, NULL); | 195 | usb_set_intfdata(intf, NULL); |
| 196 | if (kbtab) { | 196 | |
| 197 | usb_kill_urb(kbtab->irq); | 197 | input_unregister_device(kbtab->dev); |
| 198 | input_unregister_device(kbtab->dev); | 198 | usb_free_urb(kbtab->irq); |
| 199 | usb_free_urb(kbtab->irq); | 199 | usb_buffer_free(kbtab->usbdev, 8, kbtab->data, kbtab->data_dma); |
| 200 | usb_buffer_free(interface_to_usbdev(intf), 8, kbtab->data, kbtab->data_dma); | 200 | kfree(kbtab); |
| 201 | kfree(kbtab); | ||
| 202 | } | ||
| 203 | } | 201 | } |
| 204 | 202 | ||
| 205 | static struct usb_driver kbtab_driver = { | 203 | static struct usb_driver kbtab_driver = { |
