aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/input/tablet/acecad.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/input/tablet/acecad.c b/drivers/input/tablet/acecad.c
index 265753c76304..1697ec2c308a 100644
--- a/drivers/input/tablet/acecad.c
+++ b/drivers/input/tablet/acecad.c
@@ -252,13 +252,11 @@ static void usb_acecad_disconnect(struct usb_interface *intf)
252 struct usb_acecad *acecad = usb_get_intfdata(intf); 252 struct usb_acecad *acecad = usb_get_intfdata(intf);
253 253
254 usb_set_intfdata(intf, NULL); 254 usb_set_intfdata(intf, NULL);
255 if (acecad) { 255
256 usb_kill_urb(acecad->irq); 256 input_unregister_device(acecad->input);
257 input_unregister_device(acecad->input); 257 usb_free_urb(acecad->irq);
258 usb_free_urb(acecad->irq); 258 usb_buffer_free(acecad->usbdev, 8, acecad->data, acecad->data_dma);
259 usb_buffer_free(interface_to_usbdev(intf), 8, acecad->data, acecad->data_dma); 259 kfree(acecad);
260 kfree(acecad);
261 }
262} 260}
263 261
264static struct usb_device_id usb_acecad_id_table [] = { 262static struct usb_device_id usb_acecad_id_table [] = {