On 16/08/18 09:21, Zengtao (B) wrote: > Hi alan: > >> -----Original Message----- >> From: Alan Stern [mailto:stern@xxxxxxxxxxxxxxxxxxx] >> Sent: Tuesday, August 14, 2018 10:40 PM >> To: Zengtao (B) <prime.zeng@xxxxxxxxxxxxx> >> Cc: Roger Quadros <rogerq@xxxxxx>; gregkh@xxxxxxxxxxxxxxxxxxx; >> mathias.nyman@xxxxxxxxxxxxxxx; drinkcat@xxxxxxxxxxxx; >> felipe.balbi@xxxxxxxxxxxxxxx; drake@xxxxxxxxxxxx; mike.looijmans@xxxxxxxx; >> joe@xxxxxxxxxxx; linux-usb@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx >> Subject: RE: [PATCH] usb: hub: try old enumeration scheme first for high speed >> devices >> >> On Tue, 14 Aug 2018, Zengtao (B) wrote: >> >>> Hi alan: >>> >>>> -----Original Message----- >>>> From: linux-usb-owner@xxxxxxxxxxxxxxx >>>> [mailto:linux-usb-owner@xxxxxxxxxxxxxxx] On Behalf Of Alan Stern >>>> Sent: Friday, August 10, 2018 10:20 PM >>>> To: Roger Quadros <rogerq@xxxxxx> >>>> Cc: Zengtao (B) <prime.zeng@xxxxxxxxxxxxx>; >>>> gregkh@xxxxxxxxxxxxxxxxxxx; mathias.nyman@xxxxxxxxxxxxxxx; >>>> drinkcat@xxxxxxxxxxxx; felipe.balbi@xxxxxxxxxxxxxxx; >>>> drake@xxxxxxxxxxxx; mike.looijmans@xxxxxxxx; joe@xxxxxxxxxxx; >>>> linux-usb@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx >>>> Subject: Re: [PATCH] usb: hub: try old enumeration scheme first for >>>> high speed devices >>>> >>>> On Fri, 10 Aug 2018, Roger Quadros wrote: >>>> >>>>> Hi, >>>>> >>>>> On 10/08/18 18:01, 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. >>>>> >>>>> How slow does it get? Is it significant? >>>>> Do we risk breaking existing HS devices that work? I don't think we >>>>> can be sure till we run this through testing. >>>> >>>> Indeed. I am extremely skeptical about a patch like this, unless >>>> somebody can show that Windows uses the "old" scheme for high-speed >> devices. >>> >>> Yes, this is what the windows has done, you can refer to >>> https://blogs.msdn.microsoft.com/usbcoreblog/2013/04/11/usb-2-1-2-0-1- >>> 1-device-enumeration-changes-in-windows-8/ >> >> And that blog post is 5 years old! >> >> Okay, I think we can go ahead and make this change. However, you should >> update the patch description to mention what Microsoft did in Windows 8 and >> say that the new behavior matches theirs. >> > Okay, I will update it the change log in v2. > >> Also, as Roger mentioned, you should update the documentation to say that the >> old_scheme_first module parameter now applies only to low- and full-speed >> devices, since high- and SuperSpeed devices always use the old scheme first. >> > > Since we should have dedicated enumeration flow for SS, HIGH, low and full speed devices, > So I think the old_scheme_first and use_both_schemes parameters should be removed. > What do you think about it? I think we should retain them as some host controllers can have issues and these parameters give some control to system integrators to workaround if required. I'm aware of one errata [1] that requires the old_scheme_first to be set in certain circumstances. [1] http://www.ti.com/lit/er/sprz429l/sprz429l.pdf Section i897 -- Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki