Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 01 Sep 2007 18:33:26 +0100
From:      Rui Paulo <rpaulo@fnop.net>
To:        Peter Schuller <peter.schuller@infidyne.com>
Cc:        freebsd-mobile@freebsd.org
Subject:   Re: Option HSDPA USB dongle and mode switching
Message-ID:  <46D9A266.8080508@fnop.net>
In-Reply-To: <200708312056.12233.peter.schuller@infidyne.com>
References:  <200708311820.08340.peter.schuller@infidyne.com> <200708312056.12233.peter.schuller@infidyne.com>

next in thread | previous in thread | raw e-mail | index | archive | help

Peter Schuller wrote:
>> % gcc -L/usr/local/lib -lusb -lusbpp -I/usr/local/include -o ttt
>> icon_switch.c prometheus:/tmp(1)
>>
>> /var/tmp//ccCnzzjn.o(.text+0x26e): In function `main':
>> : undefined reference to `usb_get_driver_np'
>>
>> /var/tmp//ccCnzzjn.o(.text+0x2a7): In function `main':
>> : undefined reference to `usb_detach_kernel_driver_np'
>>
>> Would anyone know of a way to make such USB dongles work, other than
>> properly looking into this stuff and making the necessary code changes?
> 
> Simply eliminating the driver attach/detach attemps makes the tool compile and 
> run, though it complains that it cannot find the device (even though the 
> product/vendor matches the config file). I guess it's not visible to the API 
> when the driver is attached or some such.

Yes, unfortunately, libusb in *BSD doesn't work correctly regarding to
device matching.
Your best try is to mimic the libusb calls in icon_switch.c to change
the device and then do the matching on your own.

I wrote a similar utility for switching Bluetooth devices. Maybe this 
helps you:
	http://fnop.net/~rpaulo/priv/freebsd/ubthidctl.tgz

Regards.
-- 
Rui Paulo




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