Re: [PATCH] usbhid: call report_fixup before comparing descriptors

From: Sergei Shtylyov
Date: Tue Sep 18 2012 - 08:01:23 EST


Hello.

On 18-09-2012 0:05, Kevin Daughtridge wrote:

hid_post_reset checks the stored report descriptor against what is currently
returned by the device. An HID driver's report_fixup method may have changed the
stored descriptor, however, creating false positives. These leave some devices
nonfunctional after a resume, with a "reset_resume error 1" reported. This patch
passes the new descriptor to the driver's report_fixup method, if any, before it
is compared to the stored one.

BugLink: http://bugs.launchpad.net/bugs/1049623
Signed-off-by: Kevin Daughtridge <kevin@xxxxxxxx>
---
--- a/drivers/hid/usbhid/hid-core.c 2012-08-20 10:17:09.000000000 -0700
+++ b/drivers/hid/usbhid/hid-core.c 2012-09-16 18:51:45.381868737 -0700
@@ -1436,6 +1436,10 @@ static int hid_post_reset(struct usb_int
kfree(rdesc);
return 1;
}
+
+ if (hid->driver && hid->driver->report_fixup)
+ rdesc = hid->driver->report_fixup(hid, rdesc, &status);
+

Your patch is whitespace damaged, i.e. has all tabs replaced by spaces.

WBR, Sergei

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/