USB4BSD release candidate number 3 - request for review

Bruce Cran bruce at cran.org.uk
Mon Nov 3 20:02:46 PST 2008


On Sun, 2 Nov 2008 14:15:58 -0800
Bruce Cran <bruce at cran.org.uk> wrote:

> On Sun, 2 Nov 2008 21:42:11 +0100
> Hans Petter Selasky <hselasky at c2i.net> wrote:
> 
> > On Sunday 02 November 2008, Bruce Cran wrote:
> > > On Sun, 26 Oct 2008 16:33:20 +0100
> > >
> > > Hans Petter Selasky <hselasky at c2i.net> wrote:
> > > > Hi,
> > > >
> > > > A new USB release is available:
> > > >
> > > > http://www.selasky.org/hans_petter/usb4bsd/for_review/
> > > >
> > > > %md5 usb2_release_003.*
> > > > MD5 (usb2_release_003.diff) = e31a032d0234bb7d72eb968c33118d84
> > > > MD5 (usb2_release_003.tar.gz) = 0a0d9dd44e93ba2ceaa849c577f6fecf
> > > > %sha256 usb2_release_003.*
> > > > SHA256 (usb2_release_003.diff) =
> > > > 9b4359f76eeef43d9b6c0c524198e529f2debff14e6158ebac8f35d51efb211b
> > > > SHA256 (usb2_release_003.tar.gz) =
> > > > 3040714546fc21bc2943c2e7aec1734150845271664aad44639ff5c553e3ed31
> > >
> > > I untarred usb2_release_003.tar.gz into /usr/src but am having
> > > problems building it: it seems libusb20 needs /usr/src/sys in the
> > >
> > > include path, but after installing libusb20 the modules won't
> > > build:
> > > > cd /sys/modules/usb2
> > > > make
> > >
> > > ===> bluetooth (all)
> > > Warning: Object directory not changed from
> > > original /usr/src/sys/modules/usb2/bluetooth make: don't know how
> > > to make usb2_if.h. Stop *** Error code 2
> > >
> > > Stop in /usr/src/sys/modules/usb2.
> > >
> > > If I use the copy of /sys/conf/files from perforce then I get a
> > > compile error in the ata driver during buildkernel because I guess
> > > things have moved on and the references are no longer valid.
> > > What's the proper way to build the new usb stack?
> > 
> > Did you apply the patches in the diff file ?
> > 
> 
> That was the problem: after applying the patches and updating kmod.mk
> the build works.
> 

It's working now and I've been able to read back data from
my Garmin GPS device on FreeBSD for the first time!   

I've noticed a couple of issues while getting it working.  The first
is that I get a message when I plug the GPS in, but not when I unplug
it - I'd expect to see something like "ugen3.1: at usbus3 disconnected".
It gets attached on the ohci hub; usbconfig reports it as:

ugen3.1: <OHCI root HUB ATI> at usbus3, cfg=0 md=HOST spd=FULL (12Mbps)
pwr=ON ugen3.2: <product 0x0003 Garmin International> at usbus3, cfg=0
md=HOST spd=FULL (12Mbps) pwr=ON

I've built the stack as modules, and just 'kldload
usb2_controller_ohci'.

The other issue I bumped into was when I was trying to get gpsbabel
working.  I tracked it down to the code that selected an endpoint
address: my Garmin has addresses 0x81, 0x2 and 0x83 but the USB stack
wasn't happy with gpsbabel sending the result of those addresses ANDed
with USB_ENDPOINT_ADDRESS_MASK.  When I passed the addresses
themselves, gpsbabel sprang into life and read data back from the
device.

-- 
Bruce Cran


More information about the freebsd-usb mailing list