[haiku-bugs] Re: [Haiku] #1045: USB isochronous streams

  • From: "Haiku" <trac@xxxxxxxxxxxx>
  • To: undisclosed-recipients: ;
  • Date: Fri, 07 Jan 2022 22:25:04 -0000

#1045: USB isochronous streams
--------------------------+---------------------------
  Reporter:  wkornewald   |      Owner:  nobody
      Type:  enhancement  |     Status:  assigned
  Priority:  normal       |  Milestone:  R1
 Component:  Drivers/USB  |    Version:  R1/pre-alpha1
Resolution:               |   Keywords:
Blocked By:               |   Blocking:  10521, 11256
  Platform:  All          |
--------------------------+---------------------------
Comment (by rudolfc):

 Hi waddlesplash!

 I located two minor faults in the XHCI driver:
 - Indeed there's a timing fault, the audio interface need more time to
 'spin up' before you communicate with them. please add a simple spin()
 instruction at line 1549 in xhci.cpp just before the device descriptor is
 fetched. I tried 100uS which is not enough. 500uS makes both sound cards
 successfully be configured, so my advice would be 1000uS (tested OK as
 well) so devices even a bit slower starting up will work (I will most
 definately try this later on on my microsoft surface 3 which is flaky,
 maybe this fixes it there too :-) On a sidenote: the TRACE line apparantly
 also costs this amount of time (> 100uS) as enabling that one line 'fixes'
 the problem as well.
 - there's a fault with variables logged which you will not see unless you
 enable debugging a bit further down in the same file: line 2489,
 TRACE("HandleTransferComplete... argument 1 and 3 will not compile on
 32bit systems.

 Next up I'll retry my usb_audio tweaked driver with XHCI on Skylake to see
 if I can get any actual sound out of these cards. Apparantly the HDAudio
 driver had some imrprovements lately as well, since that runs now on this
 system (so media servers are up too)

 Thanks in advance for applying this patch!
-- 
Ticket URL: <https://dev.haiku-os.org/ticket/1045#comment:31>
Haiku <https://dev.haiku-os.org>
The Haiku operating system.

Other related posts: