From owner-freebsd-stable@FreeBSD.ORG Sat Apr 9 05:48:35 2005 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2B48116A4CE for ; Sat, 9 Apr 2005 05:48:35 +0000 (GMT) Received: from carver.gumbysoft.com (carver.gumbysoft.com [66.220.23.50]) by mx1.FreeBSD.org (Postfix) with ESMTP id 01F1E43D45 for ; Sat, 9 Apr 2005 05:48:35 +0000 (GMT) (envelope-from dwhite@gumbysoft.com) Received: by carver.gumbysoft.com (Postfix, from userid 1000) id DC9AA72DDD; Fri, 8 Apr 2005 22:48:34 -0700 (PDT) Received: from localhost (localhost [127.0.0.1]) by carver.gumbysoft.com (Postfix) with ESMTP id D073F72DD4; Fri, 8 Apr 2005 22:48:34 -0700 (PDT) Date: Fri, 8 Apr 2005 22:48:34 -0700 (PDT) From: Doug White To: Christian Laursen In-Reply-To: <86y8c1q9fh.fsf@borg.borderworlds.dk> Message-ID: <20050408223918.N67756@carver.gumbysoft.com> References: <86y8c1q9fh.fsf@borg.borderworlds.dk> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: freebsd-stable@freebsd.org Subject: Re: 5.4-PRERELEASE usb audio problem X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 09 Apr 2005 05:48:35 -0000 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: 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