[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <678F3D1BB717D949B966B68EAEB446ED0C9CAC39@DGGEMM506-MBX.china.huawei.com>
Date: Mon, 20 Aug 2018 01:59:11 +0000
From: "Zengtao (B)" <prime.zeng@...ilicon.com>
To: Alan Stern <stern@...land.harvard.edu>
CC: "gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>,
"mathias.nyman@...ux.intel.com" <mathias.nyman@...ux.intel.com>,
"drinkcat@...omium.org" <drinkcat@...omium.org>,
"felipe.balbi@...ux.intel.com" <felipe.balbi@...ux.intel.com>,
"drake@...lessm.com" <drake@...lessm.com>,
"mike.looijmans@...ic.nl" <mike.looijmans@...ic.nl>,
"joe@...ches.com" <joe@...ches.com>,
"Jonathan Corbet" <corbet@....net>,
Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...nel.org>,
"Rafael J. Wysocki" <rafael.j.wysocki@...el.com>,
"Marc Zyngier" <marc.zyngier@....com>,
Kai-Heng Feng <kai.heng.feng@...onical.com>,
Thymo van Beers <thymovanbeers@...il.com>,
Frederic Weisbecker <frederic@...nel.org>,
Konrad Rzeszutek Wilk <konrad.wilk@...cle.com>,
David Rientjes <rientjes@...gle.com>,
"linux-doc@...r.kernel.org" <linux-doc@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-usb@...r.kernel.org" <linux-usb@...r.kernel.org>
Subject: RE: [PATCH v2] usb: hub: try old enumeration scheme first for high
speed devices
Hi Alan:
Thanks for your reply.
>-----Original Message-----
>From: Alan Stern [mailto:stern@...land.harvard.edu]
>Sent: Friday, August 17, 2018 10:19 PM
>To: Zengtao (B) <prime.zeng@...ilicon.com>
>Cc: gregkh@...uxfoundation.org; mathias.nyman@...ux.intel.com;
>drinkcat@...omium.org; felipe.balbi@...ux.intel.com;
>drake@...lessm.com; mike.looijmans@...ic.nl; joe@...ches.com;
>Jonathan Corbet <corbet@....net>; Thomas Gleixner <tglx@...utronix.de>;
>Ingo Molnar <mingo@...nel.org>; Rafael J. Wysocki
><rafael.j.wysocki@...el.com>; Marc Zyngier <marc.zyngier@....com>;
>Kai-Heng Feng <kai.heng.feng@...onical.com>; Thymo van Beers
><thymovanbeers@...il.com>; Frederic Weisbecker <frederic@...nel.org>;
>Konrad Rzeszutek Wilk <konrad.wilk@...cle.com>; David Rientjes
><rientjes@...gle.com>; linux-doc@...r.kernel.org;
>linux-kernel@...r.kernel.org; linux-usb@...r.kernel.org
>Subject: Re: [PATCH v2] usb: hub: try old enumeration scheme first for high
>speed devices
>
>On Fri, 17 Aug 2018, Zeng Tao wrote:
>
>> The new scheme is required just to support legacy low and full-speed
>> devices. For high speed devices, it will slower the enumeration speed.
>> So in this patch we try the "old" enumeration scheme first for high
>> speed devices, and this is what Windows does since Windows 8.
>>
>> Signed-off-by: Zeng Tao <prime.zeng@...ilicon.com>
>> ---
>> Changes in v2:
>> 1. As suggested by Alan, mention in the commit log that this change is
>> follow what the Window does.
>> 2. As suggested by Roger, update the kernel-parameter description.
>> ---
>> Documentation/admin-guide/kernel-parameters.txt | 3 ++-
>> drivers/usb/core/hub.c | 5 ++++-
>> 2 files changed, 6 insertions(+), 2 deletions(-)
>>
>> diff --git a/Documentation/admin-guide/kernel-parameters.txt
>> b/Documentation/admin-guide/kernel-parameters.txt
>> index 533ff5c..95db23c 100644
>> --- a/Documentation/admin-guide/kernel-parameters.txt
>> +++ b/Documentation/admin-guide/kernel-parameters.txt
>> @@ -4453,7 +4453,8 @@
>>
>> usbcore.old_scheme_first=
>> [USB] Start with the old device initialization
>> - scheme (default 0 = off).
>> + scheme, applies only to low and full-speed devices
>> + (default 0 = off).
>>
>> usbcore.usbfs_memory_mb=
>> [USB] Memory limit (in MB) for buffers allocated by diff --git
>> a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c index
>> 1fb2668..d265b19 100644
>> --- a/drivers/usb/core/hub.c
>> +++ b/drivers/usb/core/hub.c
>> @@ -2661,10 +2661,13 @@ static bool use_new_scheme(struct
>usb_device *udev, int retry,
>> int old_scheme_first_port =
>> port_dev->quirks & USB_PORT_QUIRK_OLD_SCHEME;
>>
>> + int quick_enumeration = (udev->speed == USB_SPEED_HIGH);
>
Okey, will fix in v3
>Minor style point: the preceding blank line should be eliminated.
>
>> +
>> if (udev->speed >= USB_SPEED_SUPER)
>> return false;
>>
>> - return USE_NEW_SCHEME(retry, old_scheme_first_port ||
>old_scheme_first);
>> + return USE_NEW_SCHEME(retry, old_scheme_first_port ||
>old_scheme_first
>> + || quick_enumeration);
>> }
>>
>> /* Is a USB 3.0 port in the Inactive or Compliance Mode state?
>
>Aside from that:
>
>Acked-by: Alan Stern <stern@...land.harvard.edu>
Okay , tag will be applied in v3.
Powered by blists - more mailing lists