Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 24 Feb 2006 19:09:04 +0100
From:      Hans Petter Selasky <hselasky@c2i.net>
To:        Peter B <pb@ludd.ltu.se>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: usb2 iscochronous transfer
Message-ID:  <200602241909.05333.hselasky@c2i.net>
In-Reply-To: <200602241625.k1OGPTuj017556@brother.ludd.ltu.se>
References:  <200602241625.k1OGPTuj017556@brother.ludd.ltu.se>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday 24 February 2006 17:25, Peter B wrote:
> Hans Petter Selasky wrote:
> >On Thursday 23 February 2006 17:41, Peter B wrote:
> >> Is there any work at all on usb2 isochronous transfer functionality?
> >
> >It's already implemented!
> >
> >> http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/usb/ehci.c?rev=1.14.2.
> >>10& content-type=text/x-cvsweb-markup
> >>
> >>  * 1) The EHCI driver lacks support for isochronous transfers, so
> >>  *    devices using them don't work.
> >>
> >> Any hints on what's needed to make it work?
> >
> >My new USB driver supports it.
> >http://www.turbocat.net/~hselasky/usb4bsd
> >
> >> Seems DVB-S receiver cards use usb2-isoc mode, therefore the need.
> >
> >Maybe you want to try out the new USB API when designing the driver. Don't
> >forget that high-speed isoc have 8 frames per millisecond!
> >
> >PS: My USB driver in SVN is now also compiling and working on NetBSD 3.X.
>
> How is integration to the FreeBSD CVS ..?  (commited?)

There are some plans to commit it, leaving an option to use the old USB system 
if that works better during the transition phase. But the patches are not 
ready yet. Really it is just to follow the Makefile.

>
> Considering fully working usb1/usb2 ctrl/intr/bulk/isoc working modes and
> finegrained locks. It seems better than the current one.
>
> How is uaudio and umass working with this driver?

uaudio and umass works fine, but they need to be rewritten, hence they are 
still under the compatibility layer of my driver, and can sleep when they 
should not sleep.

ugen I have written completely new, and it should support high speed 
isochronous transfer. But I have never tested it, except full speed isoc, 
hence I have got no such devices.

>What version of freebsd works best with this new usb-driver? 
>  (I will likely use ugen for dvb-s)

FreeBSD 5/6/7. If you use current you need a small patch after install:

Index: src/sys/dev/usb2/usb.h
===================================================================
--- src/sys/dev/usb2/usb.h      (revision 153)
+++ src/sys/dev/usb2/usb.h      (revision 154)
@@ -486,8 +486,9 @@
 #define  UIPROTO_IRDA                  0
 
 #define UICLASS_VENDOR         0xff
+#define  UISUBCLASS_XBOX360_CONTROLLER 0x5d
+#define  UIPROTO_XBOX360_GAMEPAD       0x01
 
-
 #define USB_HUB_MAX_DEPTH 5

--HPS



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