Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 30 Sep 2003 12:33:38 +0200
From:      Bernd Walter <ticso@cicely12.cicely.de>
To:        Barry Bouwsma <freebsd-misuser@NOSPAM.dyndns.dk>
Cc:        FreeBSD Hacking Group <hackers@freebsd.org>
Subject:   Re: USB2.0 external hub and ehci question
Message-ID:  <20030930103337.GL18891@cicely12.cicely.de>
In-Reply-To: <200309300326.h8U3QXx12997@Mail.NOSPAM.DynDNS.dK>
References:  <200309300326.h8U3QXx12997@Mail.NOSPAM.DynDNS.dK>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Sep 30, 2003 at 05:26:33AM +0200, Barry Bouwsma wrote:
> [Drop hostname part of IPv6-only address above to obtain IPv4-capable e-mail,
>  or just drop me from the recipients and I'll catch up from the archives]
> 
> 
> Hallo Hackers, I suppose I should post this to -current as the code in
> question is derived from there, but I'm running it on RELENG_4, so...
> 
> I've ported the USB controller codes (uhci, ohci, and ehci) from -current
> to 4.9-PRERELEASE in order to try and add USB2.0 support to 4.x, and I see
> something that I also saw with the NetBSD ehci codes back last December;
> namely, that I can't attach an external hub, supposedly with USB2.0
> capability, and have it be recognized.
> 
> First, I seem to have no problems building just the uhci and ohci codes
> into the usb.ko kernel module, and using them, though I haven't thoroughly
> crash-tested them.
> 
> I've mixed all three controller codes, with the result that the hub is
> not seen.  Nor is the external drive.  Which I attribute to my own
> incompetence more than anything.  So to make things easier, I ditched
> all but the ehci code and ignored the check for companion controllers,
> to limit testing to just that.
> 
> With an external USB2.0 drive connected, I am able to see and mount it.
> When I connect the external hub in its place, I get the error that the
> port was disabled, STALLED -- just as I saw under old NetBSD.
> 
> I haven't built -current, or a more recent NetBSD, to see if their
> behaviour is any different when faced with this hub.  Is it possible
> I need some sort of quirks entry for this device, which I can use as
> a USB1.x device fine?  Or do I not even get that far?

cypress hubs stall the controll endpoint without a reason when running
high speed - even if it had one the specs say that the control endpoint
shouldn't stall at all.
I have a workaround for the probing problem, but USB2 hubs won't work
anyway, because at ehci is missing support for interrupt endpoints.
Maybe there are other show stopppers too.

-- 
B.Walter                   BWCT                http://www.bwct.de
ticso@bwct.de                                  info@bwct.de



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