ChangeSet 1.1509, 2004/01/20 15:29:14-08:00, greg@kroah.com USB: hook up the HID device's struct device to the input system properly. drivers/usb/input/hid-core.c | 1 + drivers/usb/input/hid-input.c | 1 + drivers/usb/input/hid.h | 1 + 3 files changed, 3 insertions(+) diff -Nru a/drivers/usb/input/hid-core.c b/drivers/usb/input/hid-core.c --- a/drivers/usb/input/hid-core.c Tue Jan 20 17:33:47 2004 +++ b/drivers/usb/input/hid-core.c Tue Jan 20 17:33:47 2004 @@ -1546,6 +1546,7 @@ hid->version = le16_to_cpu(hdesc->bcdHID); hid->country = hdesc->bCountryCode; hid->dev = dev; + hid->intf = intf; hid->ifnum = interface->desc.bInterfaceNumber; hid->name[0] = 0; diff -Nru a/drivers/usb/input/hid-input.c b/drivers/usb/input/hid-input.c --- a/drivers/usb/input/hid-input.c Tue Jan 20 17:33:47 2004 +++ b/drivers/usb/input/hid-input.c Tue Jan 20 17:33:47 2004 @@ -592,6 +592,7 @@ hidinput->input.id.vendor = dev->descriptor.idVendor; hidinput->input.id.product = dev->descriptor.idProduct; hidinput->input.id.version = dev->descriptor.bcdDevice; + hidinput->input.dev = &hid->intf->dev; } for (i = 0; i < report->maxfield; i++) diff -Nru a/drivers/usb/input/hid.h b/drivers/usb/input/hid.h --- a/drivers/usb/input/hid.h Tue Jan 20 17:33:47 2004 +++ b/drivers/usb/input/hid.h Tue Jan 20 17:33:47 2004 @@ -342,6 +342,7 @@ struct hid_report_enum report_enum[HID_REPORT_TYPES]; struct usb_device *dev; /* USB device */ + struct usb_interface *intf; /* USB interface */ int ifnum; /* USB interface number */ unsigned long iofl; /* I/O flags (CTRL_RUNNING, OUT_RUNNING) */