2004-01-04 18:00:49

by Oguzhan Eris

[permalink] [raw]
Subject: [Bluez-users] Problem "coldplugging"

Hi, I was wondering if someone could help me out with a problem using
the IOGEAR GBU301 device which requires bluefw.

Everything works fine if I hotplug the device with the device matching
bluefw.usermap and running the appropriate bluefw command.

I have kernel 2.6.0 (now upto rc1-mm1) with the bluetooth matches
from patch-2.6.0-mh1 (it applied cleanly to 2.6.0-rc1) I have tried
ALL combinations.

I also tried ALL combinations of having bluetooth as modules vs. kernel
built in.

My problem is that nomatter what I've tried, I cannot get the device to
work fine when it is simply plugged in (the place where this machine
will be put will not allow me to hotplug, so that isn't an option)

I can provide logs from any which combination, so if you think one way
is to go, please tell me, I'll setup the configuration and send over the
logs.

My question is as follows. If all bluetooth kernel options are
modules, which ones do I need installed before I run bluefw? I edited
/etc/hotplug/usb/bluefw to output the state of lsmod before it ran
bluefw and it showed that hci_usb was installed before running bluefw.
So I figured I add the following to my modprobe.conf

alias net-pf-31 bluetooth
alias bt-proto-0 l2cap
alias bt-proto-2 sco
alias bt-proto-3 rfcomm
alias bt-proto-4 bnep
install hci_usb /sbin/modprobe --ignore-install hci_usb; /sbin/bluefw usb /proc/bus/usb/002/002

I haven't figured out howto know which bus/device the dongle is
connected to, but I know for sure it's 002/002 at this time.

When I do modprobe hci_usb however, it doesn't work. I've added a lot
of debugging to bluefw and found that "sometimes" it thinks the vendor
id of the dongle is 0x2000 instead of 0x2033 I can confirm this
right now even. Here's the lines from /proc/bus/usb/devices

T: Bus=02 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
D: Ver= 1.01 Cls=e0(unk. ) Sub=01 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=0a5c ProdID=2000 Rev= 0.a0
S: Manufacturer=Broadcom Corp.
S: Product=BCM2033
S: SerialNumber=2033B1100001
C:* #Ifs= 3 Cfg#= 1 Atr=a0 MxPwr=100mA
I: If#= 0 Alt= 0 #EPs= 3 Cls=e0(unk. ) Sub=01 Prot=01 Driver=hci_usb
E: Ad=81(I) Atr=03(Int.) MxPS= 16 Ivl=1ms
E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
I: If#= 1 Alt= 0 #EPs= 2 Cls=e0(unk. ) Sub=01 Prot=01 Driver=hci_usb
E: Ad=83(I) Atr=01(Isoc) MxPS= 0 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 0 Ivl=1ms
I: If#= 1 Alt= 1 #EPs= 2 Cls=e0(unk. ) Sub=01 Prot=01 Driver=hci_usb
E: Ad=83(I) Atr=01(Isoc) MxPS= 16 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 16 Ivl=1ms
I: If#= 1 Alt= 2 #EPs= 2 Cls=e0(unk. ) Sub=01 Prot=01 Driver=hci_usb
E: Ad=83(I) Atr=01(Isoc) MxPS= 32 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 32 Ivl=1ms
I: If#= 1 Alt= 3 #EPs= 2 Cls=e0(unk. ) Sub=01 Prot=01 Driver=hci_usb
E: Ad=83(I) Atr=01(Isoc) MxPS= 32 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 32 Ivl=1ms
I: If#= 1 Alt= 4 #EPs= 2 Cls=e0(unk. ) Sub=01 Prot=01 Driver=hci_usb
E: Ad=83(I) Atr=01(Isoc) MxPS= 64 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 64 Ivl=1ms
I: If#= 1 Alt= 5 #EPs= 2 Cls=e0(unk. ) Sub=01 Prot=01 Driver=hci_usb
E: Ad=83(I) Atr=01(Isoc) MxPS= 64 Ivl=1ms
E: Ad=03(O) Atr=01(Isoc) MxPS= 64 Ivl=1ms
I: If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
E: Ad=84(I) Atr=02(Bulk) MxPS= 32 Ivl=0ms
E: Ad=04(O) Atr=02(Bulk) MxPS= 32 Ivl=0ms

This second usb port is handled via uhci-hcd

But sometimes after enough modprobe'ing and rmmod'ing and definitely
after hotplugging, the vendorid goes to 0x2033 and things work fine.

Sorry for the really long post, but I've been at this for two solid days
and I have not been able to get anywhere. Does anyone have a working
"coldplugged" solution to a usb dongle that needs the firmware? Am I
just out of luck? I can't see why I cannot replicate what
hotplug/usb.agent does when I plug in the object.

(any other pertinent info, I'm running kernel 2.6.1-rc1-mm1 at the
moment but can got vanilla 2.6.0 though that hasn't worked either) I
do not have devfs installed, and I also haven't installed udev)

This is a Fedora Core 1 box, with the necessary upgrades for kernel 2.6
Hotplug (which is now deinstalled, was 2003_08_05)

Thanks in advance.



-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills. Sign up for IBM's
Free Linux Tutorials. Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users


2004-01-04 21:59:06

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-users] Problem "coldplugging"

Hi,

> all bluetooth core drivers are in-kernel. hci_usb is a module and so is
> bcm203x (which I guess can never be in kernel as it needs way too many
> userland stuff)

personally I prefer to have all Bluetooth stuff as modules.

> I have tried lots and lots of different ways of going about it all. I'm
> guessing hci_usb needs to be loaded before bcm203x, please correct me if
> I'm wrong. But regardless, SOMETIMES it works perfectly, most of the
> time it just doesn't work. By doesn't work, i mean I can see the hci0
> device but bringing it up sometimes results in ...
> Can't init device hci0. Connection timed out(110)
> and in the logs I see
> hci_usb_isoc_rx_submit: hci0 isoc rx submit failed urb dd071214 err -90

Compile the hci_usb driver without the SCO audio support. Maybe the
Broadcom devices don't really like the ISOC transfers.

Regards

Marcel




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills. Sign up for IBM's
Free Linux Tutorials. Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users

2004-01-04 21:42:17

by Oguzhan Eris

[permalink] [raw]
Subject: Re: [Bluez-users] Problem "coldplugging"

I meant 2.6.1-rc1 (and by cleanly, I meant trivial :) )

I tried mh2 with the bcm203x driver and installed the firmware.agent and
put the firmwares from the bluefw package into /usr/lib/hotplug/firmware
(removed the usb bluefw mappings) And things worked for a second, but
now they don't again (after a reboot)
Here's the setup 2.6.1-rc1-mm1-mh2
Hotplug 2003_08_05-1 (with firmware.agent)

I had to modify the SYSFS variable in firmware.agent as the command to
get it results in /initrd/sys and /sys (not sure why its still
mounted on my system, but i guess it's possible to have more than one
sysfs on a machine)

all bluetooth core drivers are in-kernel. hci_usb is a module and so is
bcm203x (which I guess can never be in kernel as it needs way too many
userland stuff)

I have tried lots and lots of different ways of going about it all. I'm
guessing hci_usb needs to be loaded before bcm203x, please correct me if
I'm wrong. But regardless, SOMETIMES it works perfectly, most of the
time it just doesn't work. By doesn't work, i mean I can see the hci0
device but bringing it up sometimes results in ...
Can't init device hci0. Connection timed out(110)
and in the logs I see
hci_usb_isoc_rx_submit: hci0 isoc rx submit failed urb dd071214 err -90

Other times I see the device and can bring it up all fine. BUT hcitool
scan comes back instantly (when it works, the actual does scan takes
like 5-10 seconds and finds my t68i)

Any advice would be appreciated. If there's any debugging I can turn
on, please let me know. And also please let me know in your opinion
what should be modules, and what should be in-kernel and what should I
load before bcm203x if any (or after)

Also, any reason why you think I'm seeing different productID's (sorry
I had said vendorID before) As someone else also has seen this, could
it be a usb quirkness that we should bring up to the usb maintainers?

Thanks again.





On Sun, 2004-01-04 at 14:19, Marcel Holtmann wrote:
> Hi,
>
> > Hi, I was wondering if someone could help me out with a problem using
> > the IOGEAR GBU301 device which requires bluefw.
> >
> > Everything works fine if I hotplug the device with the device matching
> > bluefw.usermap and running the appropriate bluefw command.
> >
> > I have kernel 2.6.0 (now upto rc1-mm1) with the bluetooth matches
> > from patch-2.6.0-mh1 (it applied cleanly to 2.6.0-rc1) I have tried
> > ALL combinations.
>
> the patch-2.6.0-mh1 don't apply cleanly to 2.6.0-rc1 :(
>
> Try to use 2.6.0-mh2 and don't install bluefw. The new bcm203x provides
> the same functionalty and uses the firmware.agent hotplug script for
> firmware loading.
>
> Regards
>
> Marcel
>
>
>
>
> --
> This SF.net email is sponsored by: IBM Linux Tutorials.
> Become an expert in LINUX or just sharpen your skills. Sign up for IBM's
> Free Linux Tutorials. Learn everything from the bash shell to sys admin.
> Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
> _______________________________________________
> Bluez-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/bluez-users
>



-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills. Sign up for IBM's
Free Linux Tutorials. Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users

2004-01-04 19:23:19

by Michael Mauch

[permalink] [raw]
Subject: [Bluez-users] Re: Problem "coldplugging"

Oguzhan Eris wrote:

> Hi, I was wondering if someone could help me out with a problem using
> the IOGEAR GBU301 device which requires bluefw.

I have two Tecom BT-3030 here, and the same problem, both with a desktop
and with a laptop. It worked in the past, but at the moment it's rather
flaky. Alas I changed too much in between, so I can't tell when the
problems started.

> When I do modprobe hci_usb however, it doesn't work. I've added a lot
> of debugging to bluefw and found that "sometimes" it thinks the vendor
> id of the dongle is 0x2000 instead of 0x2033 I can confirm this
> right now even. Here's the lines from /proc/bus/usb/devices

Same here. Sometimes it's even 0x2001.

> T: Bus=02 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
> D: Ver= 1.01 Cls=e0(unk. ) Sub=01 Prot=01 MxPS=64 #Cfgs= 1
> P: Vendor=0a5c ProdID=2000 Rev= 0.a0
> S: Manufacturer=Broadcom Corp.
> S: Product=BCM2033
> S: SerialNumber=2033B1100001

On the desktop:

T: Bus=01 Lev=02 Prnt=02 Port=03 Cnt=02 Dev#= 5 Spd=12 MxCh= 0
D: Ver= 1.01 Cls=e0(unk. ) Sub=01 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=0a5c ProdID=2000 Rev= 0.a0
S: Manufacturer=Broadcom Corp.??????
S: Product=BCM2033?????????????
S: SerialNumber=2033B1100001????

On the laptop:

T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
D: Ver= 1.01 Cls=e0(unk. ) Sub=01 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=0a5c ProdID=2001 Rev= 0.a0
S: Manufacturer=Broadcom Corp.
S: Product=BCM2033
S: SerialNumber=20330003C92AB320

> This second usb port is handled via uhci-hcd

I'm using usb-ohci on the desktop, and uhci or usb-uhci on the laptop
(both with vanilla 2.4.23).

Regards...
Michael


-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills. Sign up for IBM's
Free Linux Tutorials. Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users

2004-01-04 19:19:36

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-users] Problem "coldplugging"

Hi,

> Hi, I was wondering if someone could help me out with a problem using
> the IOGEAR GBU301 device which requires bluefw.
>
> Everything works fine if I hotplug the device with the device matching
> bluefw.usermap and running the appropriate bluefw command.
>
> I have kernel 2.6.0 (now upto rc1-mm1) with the bluetooth matches
> from patch-2.6.0-mh1 (it applied cleanly to 2.6.0-rc1) I have tried
> ALL combinations.

the patch-2.6.0-mh1 don't apply cleanly to 2.6.0-rc1 :(

Try to use 2.6.0-mh2 and don't install bluefw. The new bcm203x provides
the same functionalty and uses the firmware.agent hotplug script for
firmware loading.

Regards

Marcel




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills. Sign up for IBM's
Free Linux Tutorials. Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users