The code handling Get Hub Descriptor request copies data from root_hub_des[],
then overwrites byte 3 with real 'wHubCharacteristics' value. There's no need
to overwrite, we can substitute the real value right into root_hub_des[3].

Signed-off-by: Sergei Shtylyov <sergei.shtyl...@cogentembedded.com>

---
The patch is against the 'usb-next' branch of Greg KH's 'usb.git' repo.

 drivers/usb/host/fhci-hub.c |    5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

Index: usb/drivers/usb/host/fhci-hub.c
===================================================================
--- usb.orig/drivers/usb/host/fhci-hub.c
+++ usb/drivers/usb/host/fhci-hub.c
@@ -32,8 +32,8 @@ static u8 root_hub_des[] = {
        0x09, /* blength */
        0x29, /* bDescriptorType;hub-descriptor */
        0x01, /* bNbrPorts */
-       0x00, /* wHubCharacteristics */
-       0x00,
+       0x11, /* wHubCharacteristics */
+       0x00, /* per-port power, no overcurrent */
        0x01, /* bPwrOn2pwrGood;2ms */
        0x00, /* bHubContrCurrent;0mA */
        0x00, /* DeviceRemoveable */
@@ -272,7 +272,6 @@ int fhci_hub_control(struct usb_hcd *hcd
                break;
        case GetHubDescriptor:
                memcpy(buf, root_hub_des, sizeof(root_hub_des));
-               buf[3] = 0x11; /* per-port power, no ovrcrnt */
                len = (buf[0] < wLength) ? buf[0] : wLength;
                break;
        case GetHubStatus:

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to