|
@@ -1041,13 +1041,6 @@ static void usbhid_stop(struct hid_device *hid)
|
|
|
|
|
|
hid_cancel_delayed_stuff(usbhid);
|
|
|
|
|
|
- if (hid->claimed & HID_CLAIMED_INPUT)
|
|
|
- hidinput_disconnect(hid);
|
|
|
- if (hid->claimed & HID_CLAIMED_HIDDEV)
|
|
|
- hiddev_disconnect(hid);
|
|
|
- if (hid->claimed & HID_CLAIMED_HIDRAW)
|
|
|
- hidraw_disconnect(hid);
|
|
|
-
|
|
|
hid->claimed = 0;
|
|
|
|
|
|
usb_free_urb(usbhid->urbin);
|
|
@@ -1085,7 +1078,7 @@ static struct hid_ll_driver usb_hid_driver = {
|
|
|
.hidinput_input_event = usb_hidinput_input_event,
|
|
|
};
|
|
|
|
|
|
-static int hid_probe(struct usb_interface *intf, const struct usb_device_id *id)
|
|
|
+static int usbhid_probe(struct usb_interface *intf, const struct usb_device_id *id)
|
|
|
{
|
|
|
struct usb_host_interface *interface = intf->cur_altsetting;
|
|
|
struct usb_device *dev = interface_to_usbdev(intf);
|
|
@@ -1117,6 +1110,7 @@ static int hid_probe(struct usb_interface *intf, const struct usb_device_id *id)
|
|
|
hid->ff_init = hid_pidff_init;
|
|
|
#ifdef CONFIG_USB_HIDDEV
|
|
|
hid->hiddev_connect = hiddev_connect;
|
|
|
+ hid->hiddev_disconnect = hiddev_disconnect;
|
|
|
hid->hiddev_hid_event = hiddev_hid_event;
|
|
|
hid->hiddev_report_event = hiddev_report_event;
|
|
|
#endif
|
|
@@ -1177,7 +1171,7 @@ err:
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
-static void hid_disconnect(struct usb_interface *intf)
|
|
|
+static void usbhid_disconnect(struct usb_interface *intf)
|
|
|
{
|
|
|
struct hid_device *hid = usb_get_intfdata(intf);
|
|
|
struct usbhid_device *usbhid;
|
|
@@ -1359,8 +1353,8 @@ MODULE_DEVICE_TABLE (usb, hid_usb_ids);
|
|
|
|
|
|
static struct usb_driver hid_driver = {
|
|
|
.name = "usbhid",
|
|
|
- .probe = hid_probe,
|
|
|
- .disconnect = hid_disconnect,
|
|
|
+ .probe = usbhid_probe,
|
|
|
+ .disconnect = usbhid_disconnect,
|
|
|
#ifdef CONFIG_PM
|
|
|
.suspend = hid_suspend,
|
|
|
.resume = hid_resume,
|