diff options
author | Hans de Goede <hdegoede@redhat.com> | 2015-01-16 10:54:02 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2015-01-25 07:59:43 -0500 |
commit | a6134136d938ed9298f15e865e4a035f9c0eeb9c (patch) | |
tree | 6bdc8dff53657003fe7163cd96705b628bbed650 | |
parent | 99705092a83f0202d2b64c1b754a831464c5ce90 (diff) |
xhci: Silence "xHCI xhci_drop_endpoint called with disabled ep ..." messages
When re-applying the configuration after a successful usb device reset,
xhci_discover_or_reset_device has already dropped the endpoints, and free-ed
the rings.
The endpoints already being dropped is expected, and should not lead to
warnings. Use the fact that the rings are also free-ed in this scenario to
detect this, and suppress the "xHCI xhci_drop_endpoint called with disabled
ep ..." message in this case.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
--
Changes in v2:
Move the ring check to only guard the xhci_warn, so as to avoid side-effects
in case we have a scenario where the rings are free-ed, but the endpoint is
not yet dropped.
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/usb/host/xhci.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c index 15d8c221442f..ec8ac1674854 100644 --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c | |||
@@ -1673,8 +1673,10 @@ int xhci_drop_endpoint(struct usb_hcd *hcd, struct usb_device *udev, | |||
1673 | cpu_to_le32(EP_STATE_DISABLED)) || | 1673 | cpu_to_le32(EP_STATE_DISABLED)) || |
1674 | le32_to_cpu(ctrl_ctx->drop_flags) & | 1674 | le32_to_cpu(ctrl_ctx->drop_flags) & |
1675 | xhci_get_endpoint_flag(&ep->desc)) { | 1675 | xhci_get_endpoint_flag(&ep->desc)) { |
1676 | xhci_warn(xhci, "xHCI %s called with disabled ep %p\n", | 1676 | /* Do not warn when called after a usb_device_reset */ |
1677 | __func__, ep); | 1677 | if (xhci->devs[udev->slot_id]->eps[ep_index].ring != NULL) |
1678 | xhci_warn(xhci, "xHCI %s called with disabled ep %p\n", | ||
1679 | __func__, ep); | ||
1678 | return 0; | 1680 | return 0; |
1679 | } | 1681 | } |
1680 | 1682 | ||