Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 26 Dec 2004 17:47:36 +0100
From:      Hans Petter Selasky <hselasky@c2i.net>
To:        freebsd-usb@freebsd.org
Subject:   Re: USB vendore designations..
Message-ID:  <200412261747.36555.hselasky@c2i.net>
In-Reply-To: <20041224124346.GG45586@cicely12.cicely.de>
References:  <41CB38A7.5020700@vicor.com> <41CB4BCB.1080708@elischer.org> <20041224124346.GG45586@cicely12.cicely.de>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday 24 December 2004 13:43, Bernd Walter wrote:
> On Thu, Dec 23, 2004 at 02:50:51PM -0800, Julian Elischer wrote:
> > EHCI is almost ok.. except for where it REALLY SUCKS!
>

The EHCI manual says that QH's can be removed without stopping the HC. QH 
removal is done like this: set the previous QH to point to the next QH, and 
then set the DOORBELL bit in the EHCI command register and wait for it to 
clear. This is the same whether the QH is finished or cancelled, though if it 
is finished one might get around with a short DELAY(), hence the HC should 
already be skipping the QH? Currently, no driver is checking cancelled QH's,  
to see if they were finished after all. If the drivers did, then no 
information as to whether the transfers on it were completed or not, would be 
lost. 

As long as there are not so many transfers the EHCI is not that inefficient.

Yours
--HPS



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200412261747.36555.hselasky>