diff options
-rw-r--r-- | drivers/usb/host/xhci.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c index f647d918a886..fcc5821a27f3 100644 --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c | |||
@@ -1888,6 +1888,12 @@ int xhci_check_bandwidth(struct usb_hcd *hcd, struct usb_device *udev) | |||
1888 | ctrl_ctx->add_flags |= cpu_to_le32(SLOT_FLAG); | 1888 | ctrl_ctx->add_flags |= cpu_to_le32(SLOT_FLAG); |
1889 | ctrl_ctx->add_flags &= cpu_to_le32(~EP0_FLAG); | 1889 | ctrl_ctx->add_flags &= cpu_to_le32(~EP0_FLAG); |
1890 | ctrl_ctx->drop_flags &= cpu_to_le32(~(SLOT_FLAG | EP0_FLAG)); | 1890 | ctrl_ctx->drop_flags &= cpu_to_le32(~(SLOT_FLAG | EP0_FLAG)); |
1891 | |||
1892 | /* Don't issue the command if there's no endpoints to update. */ | ||
1893 | if (ctrl_ctx->add_flags == cpu_to_le32(SLOT_FLAG) && | ||
1894 | ctrl_ctx->drop_flags == 0) | ||
1895 | return 0; | ||
1896 | |||
1891 | xhci_dbg(xhci, "New Input Control Context:\n"); | 1897 | xhci_dbg(xhci, "New Input Control Context:\n"); |
1892 | slot_ctx = xhci_get_slot_ctx(xhci, virt_dev->in_ctx); | 1898 | slot_ctx = xhci_get_slot_ctx(xhci, virt_dev->in_ctx); |
1893 | xhci_dbg_ctx(xhci, virt_dev->in_ctx, | 1899 | xhci_dbg_ctx(xhci, virt_dev->in_ctx, |