Skip to content

Commit 42c8b4b

Browse files
jhovoldgregkh
authored andcommitted
USB: gadget: dummy_hcd: fix hub-descriptor removable fields
commit d81182ce30dbd497a1e7047d7fda2af040347790 upstream. Flag the first and only port as removable while also leaving the remaining bits (including the reserved bit zero) unset in accordance with the specifications: "Within a byte, if no port exists for a given location, the bit field representing the port characteristics shall be 0." Also add a comment marking the legacy PortPwrCtrlMask field. Fixes: 1cd8fd2 ("usb: gadget: dummy_hcd: add SuperSpeed support") Fixes: 1da177e ("Linux-2.6.12-rc2") Cc: Tatyana Brokhman <tlinder@codeaurora.org> Signed-off-by: Johan Hovold <johan@kernel.org> Acked-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1 parent dc6ecba commit 42c8b4b

1 file changed

Lines changed: 3 additions & 3 deletions

File tree

drivers/usb/gadget/udc/dummy_hcd.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2011,7 +2011,7 @@ ss_hub_descriptor(struct usb_hub_descriptor *desc)
20112011
HUB_CHAR_COMMON_OCPM);
20122012
desc->bNbrPorts = 1;
20132013
desc->u.ss.bHubHdrDecLat = 0x04; /* Worst case: 0.4 micro sec*/
2014-
desc->u.ss.DeviceRemovable = 0xffff;
2014+
desc->u.ss.DeviceRemovable = 0;
20152015
}
20162016

20172017
static inline void hub_descriptor(struct usb_hub_descriptor *desc)
@@ -2023,8 +2023,8 @@ static inline void hub_descriptor(struct usb_hub_descriptor *desc)
20232023
HUB_CHAR_INDV_PORT_LPSM |
20242024
HUB_CHAR_COMMON_OCPM);
20252025
desc->bNbrPorts = 1;
2026-
desc->u.hs.DeviceRemovable[0] = 0xff;
2027-
desc->u.hs.DeviceRemovable[1] = 0xff;
2026+
desc->u.hs.DeviceRemovable[0] = 0;
2027+
desc->u.hs.DeviceRemovable[1] = 0xff; /* PortPwrCtrlMask */
20282028
}
20292029

20302030
static int dummy_hub_control(

0 commit comments

Comments
 (0)