Following up on some old USB issues with the T30 Bluethooth daughter card. I just noticed this when I did a 'usbdevs -v -d': Before pushing the button: Controller /dev/usb2: addr 1: full speed, self powered, config 1, UHCI root hub(0x0000), Intel(0x0000) , rev 1.00 uhub2 port 1 powered port 2 powered After pressing the bluetooth button, but before error message logged: Controller /dev/usb2: addr 1: full speed, self powered, config 1, UHCI root hub(0x0000), Intel(0x0000) , rev 1.00 uhub2 port 1 addr 0 should never happen! port 2 powered After "uhub2: device problem, disabling port 1" is posted to syslog: Controller /dev/usb2: addr 1: full speed, self powered, config 1, UHCI root hub(0x0000), Intel(0x0000), rev 1.00 uhub2 port 1 enabled port 2 powered > Lee, > > > Kernel recompiled and now no more "_mtx_assert undefined" errors. > > Continuing with the directions at <http://www.oook.cz/bsd/bluetooth.html>: > > > > When I press the T30's bluetooth button I get the known USB problem, > > but never see the ubt0 device defined. Instead of getting > > > > ubt0: vendor 0x0a12 product 0x0001, rev 1.10/5.25, addr 2 > > ubt0: Interface 0 endpoints: interrupt=0x81, bulk-in=0x82, bulk-out=0x2 > > ubt0: Interface 1 (alt.config 5) endpoints: isoc-in=0x83, isoc-out=0x3; > > wMaxPacketSize=49; nframes=6, buffer size=294 > > > > I get dead silence. Grep'ing for it in dmesg renders: > > > > : || tylendel.castle.org [8] ; dmesg | grep ubt > > Preloaded elf module "/boot/kernel/ng_ubt.ko" at 0xc06e60a8. > > Of course. Because ng_ubt(4) driver *does not* know about Bluetooth > device inside your T30. That is why you need to find out VendorID and > Product ID for the Bluetooth device inside your T30. You can use > ugen(4) for that. ugen(4) driver *must* be loaded *before* you press > the Bluetooth button. Once you press the Bluetooth button ugen(4) > driver *must* attach to it, because it is the default driver for > the USB devices. That is *if* USB will attach the device and you > do not get "device problem, disabling port 1" error. > > Once you have ugen(4) attached to the device run > > # usbdevs -v -d > > This will give you VendorID/ProductID pair. Now you are ready to > patch ng_ubt(4) driver. Just add VendorID/ProductID to the list > of supported devices inside USB_MATCH function (in ng_ubt.c file). > > Now > > 1) Recompile ng_ubt(4) module > 2) Turn off your Bluetooth device > 3) unload ng_ubt(4) (and ugen(4) if you loaded it by hand) > 4) load *new* ng_ubt(4) driver > 5) Press the Bluetooth button to activate device > > If everything is working then you should get the messages from the > ng_ubt(4) driver. > > > I am presuming pressing the bluetooth button is like adding a bluetooth > > USB device but I am lacking in actual real knowledge here. Their > > right, i think it more like plugging a new USB device. > > > documentation has things like "Power on the BDC by pressing Bluetooth power > > switch if the Bluetooth LED is off." (BDC = Bluetooth Daughter Card). > > When I press the button the LED does not come on. If I press and > > hold the button the LED will eventually flash once and then I get the > > "uhub2: device problem, disabling port 1" message on the console yet again. > > Well, it seem like when LED is on then the device is plugged, but you > still getting the "device problem, disabling port 1" message and that > means USB stack/hub *did not* attach/activate the device and hence no > driver was attached to it. > > You *must* get the device to attach, otherwise you can not use the > driver. For now just try to make ugen(4) attach to the device. Once > you get the ugen(4) to recognize the device then you should move to > ng_ubt(4). > > > In searching IBM's documentation I found that they have updated firmware > > for the BDC, but you have to be running windows to install it. :/ > > > > Kernel source was sup'd Monday evening, US Pacific time. Bluetooth > > bundle is ngbt-fbsd-20030305.tar.gz. > > It all does not matter at this point. Again USB *did not* attach (and > activate) the device. The firmware inside the card and other stuff does > not event come into play. The simple fact that you have plugged device > into hub does not indicate that device is working. > > > I went ahead and tried to run rc.bluetooth start ubt0 in debug mode > > and got pretty much what you'd expect when the device isn't there: > > [...] > > > + setup_stack ubt0 hook > > + dev=ubt0 > > + shift > > + hook=hook > > + shift > > + /usr/sbin/ngctl mkpeer ubt0: hci hook drv > > ngctl: send msg: No such file or directory > > + exit 1 > > No device - no driver - no "ubt0" Netgraph node - no Bluetooth :( Sorry > > In fact, just activate the Bluetooth device (LED on) and run > > # usbdev -v -d > > If device *was* activated you *must* see it, otherwise you will only > see USB hubs (and possibly other devices that have been attached). > > thanks, > max > nomad ----------- - Lee "nomad" Damon - \ play: nomad_at_castle.org or castle!nomad \ work: nomad_at_ee.washington.edu \ /\ Seneschal, Castle PAUS. / \ "Celebrate Diversity" / \Received on Fri Apr 25 2003 - 06:57:40 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:05 UTC