[PATCH] USB: Fix maxpacket length for ep0 on root hubs
Alan Stern [Mon, 24 Oct 2005 19:41:19 +0000 (15:41 -0400)]
This patch (as591) fixes a rather innocuous bug that has been around for
quite a long time: Virtual root hubs should have a maxpacket length of
64 for endpoint 0.  I didn't realize it was wrong until I started
looking through the endpoint attribute files.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

drivers/usb/core/hcd.c

index 61ef994..6c7ca5b 100644 (file)
@@ -130,7 +130,7 @@ static const u8 usb2_rh_dev_descriptor [18] = {
        0x09,       /*  __u8  bDeviceClass; HUB_CLASSCODE */
        0x00,       /*  __u8  bDeviceSubClass; */
        0x01,       /*  __u8  bDeviceProtocol; [ usb 2.0 single TT ]*/
-       0x08,       /*  __u8  bMaxPacketSize0; 8 Bytes */
+       0x40,       /*  __u8  bMaxPacketSize0; 64 Bytes */
 
        0x00, 0x00, /*  __le16 idVendor; */
        0x00, 0x00, /*  __le16 idProduct; */
@@ -153,7 +153,7 @@ static const u8 usb11_rh_dev_descriptor [18] = {
        0x09,       /*  __u8  bDeviceClass; HUB_CLASSCODE */
        0x00,       /*  __u8  bDeviceSubClass; */
        0x00,       /*  __u8  bDeviceProtocol; [ low/full speeds only ] */
-       0x08,       /*  __u8  bMaxPacketSize0; 8 Bytes */
+       0x40,       /*  __u8  bMaxPacketSize0; 64 Bytes */
 
        0x00, 0x00, /*  __le16 idVendor; */
        0x00, 0x00, /*  __le16 idProduct; */