aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/input
diff options
context:
space:
mode:
authorDmitry Torokhov <dmitry.torokhov@gmail.com>2010-04-21 01:20:37 -0400
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2010-04-21 01:34:15 -0400
commit5492f6f801c81c9663417cd8e48e759775977c83 (patch)
treebe42bad032477cf565e939f50af5978fd576178f /drivers/input
parent2ef2ed597669f5e120d0c51c295f00e34b2f0801 (diff)
Input: acecad - simplify usb_acecad_disconnect()
There is no need to check whether acecad structure is attached to the interface; if it isn't and we are called we have much bigger problems. Also no need to call usb_kill_urb() in usb_acecad_disconnect() since it is being called in usb_acecad_close(). Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'drivers/input')
-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 [] = {