public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] usb: missing parentheses in USE_NEW_SCHEME
@ 2020-01-04 11:02 atmgnd
  2020-01-04 11:46 ` gregkh
  0 siblings, 1 reply; 7+ messages in thread
From: atmgnd @ 2020-01-04 11:02 UTC (permalink / raw)
  To: gregkh@linuxfoundation.org
  Cc: Alan Stern, Randy Dunlap, linux-kernel@vger.kernel.org, USB list

accroding to bd0e6c9#diff-28615d62e1250eadc353d804f49bc6d6, will try old enumeration
scheme first for high speed devices. for example, when a high speed device pluged in,
line 2720 should expand to 0 at the first time. USE_NEW_SCHEME(0, 0 || 0 || 1) === 0.
but it wrongly expand to 1(alway expand to 1 for high speed device), and change
USE_NEW_SCHEME to USE_NEW_SCHEME((i) % 2 == (int)(scheme)) may be better ?

Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Qi Zhou <atmgnd@outlook.com>
---
 drivers/usb/core/hub.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
index f229ad6952c0..7d17deca7021 100644
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
@@ -2692,7 +2692,7 @@ static unsigned hub_is_wusb(struct usb_hub *hub)
 #define SET_ADDRESS_TRIES	2
 #define GET_DESCRIPTOR_TRIES	2
 #define SET_CONFIG_TRIES	(2 * (use_both_schemes + 1))
-#define USE_NEW_SCHEME(i, scheme)	((i) / 2 == (int)scheme)
+#define USE_NEW_SCHEME(i, scheme)	((i) / 2 == (int)(scheme))

 #define HUB_ROOT_RESET_TIME	60	/* times are in msec */
 #define HUB_SHORT_RESET_TIME	10
--
2.17.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2020-01-08 16:43 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-01-04 11:02 [PATCH] usb: missing parentheses in USE_NEW_SCHEME atmgnd
2020-01-04 11:46 ` gregkh
2020-01-05  1:15   ` atmgnd
2020-01-05  1:17     ` atmgnd
2020-01-05  8:17     ` gregkh
2020-01-05 11:35       ` atmgnd
2020-01-08 16:43         ` gregkh

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox