| From 392a07ae3316f2b90b39ce41e66d6f6b5c95de90 Mon Sep 17 00:00:00 2001 |
| From: Sarah Sharp <sarah.a.sharp@linux.intel.com> |
| Date: Thu, 25 Oct 2012 13:44:12 -0700 |
| Subject: xhci: Fix conditional check in bandwidth calculation. |
| |
| From: Sarah Sharp <sarah.a.sharp@linux.intel.com> |
| |
| commit 392a07ae3316f2b90b39ce41e66d6f6b5c95de90 upstream. |
| |
| David reports that at drivers/usb/host/xhci.c:2257: |
| |
| static bool xhci_is_sync_in_ep(unsigned int ep_type) |
| { |
| return (ep_type == ISOC_IN_EP || ep_type != INT_IN_EP); |
| } |
| |
| The static analyser cppcheck says |
| |
| [linux-3.7-rc2/drivers/usb/host/xhci.c:2257]: (style) Redundant condition: If ep_type == 5, the comparison ep_type != 7 is always true. |
| |
| Maybe the original programmer intention was something like |
| |
| static bool xhci_is_sync_in_ep(unsigned int ep_type) |
| { |
| return (ep_type == ISOC_IN_EP || ep_type == INT_IN_EP); |
| } |
| |
| Fix this. |
| |
| This patch should be backported to stable kernels as old as 3.2, that |
| contain the commit 2b69899934c63b7b9432568584fb4c4a2924f40c "xhci: USB |
| 3.0 BW checking." |
| |
| Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com> |
| Reported-by: David Binderman <dcb314@hotmail.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/usb/host/xhci.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/drivers/usb/host/xhci.c |
| +++ b/drivers/usb/host/xhci.c |
| @@ -2254,7 +2254,7 @@ static bool xhci_is_async_ep(unsigned in |
| |
| static bool xhci_is_sync_in_ep(unsigned int ep_type) |
| { |
| - return (ep_type == ISOC_IN_EP || ep_type != INT_IN_EP); |
| + return (ep_type == ISOC_IN_EP || ep_type == INT_IN_EP); |
| } |
| |
| static unsigned int xhci_get_ss_bw_consumed(struct xhci_bw_info *ep_bw) |