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) */
