Date: Fri, 8 Apr 2005 22:48:34 -0700 (PDT) From: Doug White <dwhite@gumbysoft.com> To: Christian Laursen <xi@borderworlds.dk> Cc: freebsd-stable@freebsd.org Subject: Re: 5.4-PRERELEASE usb audio problem Message-ID: <20050408223918.N67756@carver.gumbysoft.com> In-Reply-To: <86y8c1q9fh.fsf@borg.borderworlds.dk> References: <86y8c1q9fh.fsf@borg.borderworlds.dk>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 2 Apr 2005, Christian Laursen wrote: > When I plug in my Logitech USB headset I get the following: > > uaudio0: Logitech Logitech USB Headset, rev 1.10/1.13, addr 2 > uaudio_add_selector: NOT IMPLEMENTED > uaudio0: audio rev 1.00 > pcm1: <USB Audio> on uaudio0 > pcm1: chn_init(pcm1:play:0) failed: err = 19 > pcm1: pcm_chn_create(ua_chan, 1, 0xc1974780) failed > uhid0: Logitech Logitech USB Headset, rev 1.10/1.13, addr 2, iclass 1/1 > > With 5.3 and earlier it used to at least work for playback but now > it seems to be completely broken. > > I saw a lot of commits to uaudio, including recording support. Does > something need to be merged from -CURRENT for it to work properly? My analysis of the -CURRENT code indicates that there is missing functionality to implement this USB audio device. It requires synchronization to be run over a separate endpoint and the code to do that does not exist. The checks protected by #ifndef UAUDIO_MULTIPLE_ENDPOINTS is where you need to implement the functionality. The USB specs are completely open, but I don't know if sufficient support functions exist yet for performing the scheduling necessary to manage these types of endpoints. It may have worked before since input AudioStreaming interfaces were simply ignored, but now there is code to deal with input from stand-alone synchronous pipes and it rejects other configs due to the unimplemented code. -- Doug White | FreeBSD: The Power to Serve dwhite@gumbysoft.com | www.FreeBSD.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050408223918.N67756>