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. 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. Alan Stern