From owner-freebsd-current@FreeBSD.ORG Tue May 4 00:19:44 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6B6FE16A4CE for ; Tue, 4 May 2004 00:19:44 -0700 (PDT) Received: from imst251.imst.de (imstfunk.uni-duisburg.de [134.91.226.254]) by mx1.FreeBSD.org (Postfix) with ESMTP id 338A143D2D for ; Tue, 4 May 2004 00:19:39 -0700 (PDT) (envelope-from Danovitsch@Vitsch.net) Received: from imst108.imst.de (imst108.imst.de [134.91.232.8]) by imst251.imst.de (8.9.3/8.9.3) with ESMTP id JAA20160; Tue, 4 May 2004 09:19:01 +0200 From: "Daan Vreeken [PA4DAN]" To: Julian Elischer Date: Tue, 4 May 2004 09:18:29 +0200 User-Agent: KMail/1.5.2 References: In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200405040918.29117.Danovitsch@Vitsch.net> cc: FreeBSD-current@FreeBSD.org Subject: Re: USB isochronous transfers X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 May 2004 07:19:44 -0000 On Tuesday 04 May 2004 02:32, Julian Elischer wrote: > On Tue, 4 May 2004, John Birrell wrote: > > Are there any USB experts here? > > > > The ugen driver in current has code that treats an isochronous endpoint > > which has a wMaxPacketSize of zero as invalid and won't open it. > > > > I have a board here that reports it's isochronous endpoint like that. > > > > On page 47 of the USB Specification 2.0, I see this: > > > > "All device default interface settings must not include any isochronous > > endpoints with non-zero data payload sizes (specified via wMaxPacketSize > > in the endpoint descriptor). Alternate interface settings may specify > > non-zero data payload sizes for isochronous operation." > > > > My board is supposed to be a reference implementation from Philips > > for their 1581 USB chip and their MPEG2 chips. It only has the default > > interface. > > I had a look in my USB book (The mindshare USB2 book) but it didn't > illuminate the subject any more than what you have already found.. > The whole concept of all those descriptors and how they all fit together > is confusing at the best of times. Maybe a bit off-topic, but even if ugen would accept it, you would probably crash your system using it ;-) The ugen driver has a pointer error in the isochronous transfer code. I have filed a PR about it with a patch more than a year ago, but it's still in the code today... Could someone please apply the fix in : kern/51074: pointer arithmatic error in ugen.c And when you're at it have a look at another PR (with patch) I have sent in that prevents all USB if_* drivers from crashing with more than one device plugged in : kern/59290: [PATCH] attaching more than one of the same usb if_* adapters crashes system Thanks, Daan