2003-05-08 13:43:44

by Krisztian Mark Szentes

[permalink] [raw]
Subject: [Bluez-users] bt3c_cs time out - no firmware loaded?

Hi

I have trouble with the 3COM Cardbus bluetooth card on a Powerbook Titanium (a
powerpc notebook). I patched the 2.4.20 kernel with the mh-6 patch (and the
benh patch which does not collide). I haven't found any hint on the list yet.

With a USB bluetooth adapter (hci_usb) everything works fine. I have a
wonderful RFCOMM communication to a Nokia 6310 and I can get on the internet
via GPRS.

When, however, using a 3COM Bluetooth adapter, I get
connection timed out errors.
like:
tomcat:/home/m# hciconfig hci0 reset
Can't init device hci0. Connection timed out(110)

or:
tomcat:/home/m# strace hciconfig hci0 up
execve("/sbin/hciconfig", ["hciconfig", "hci0", "up"], [/* 24 vars */]) = 0
uname({sys="Linux", node="tomcat", ...}) = 0
brk(0) = 0x10016018
open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=41397, ...}) = 0
mmap(NULL, 41397, PROT_READ, MAP_PRIVATE, 3, 0) = 0x30016000
close(3) = 0
open("/usr/lib/libbluetooth.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\2\1\0\0\0\0\0\0\0\0\0\0\3\0\24\0\0\0\1\0\0*D"..., 1024) =
1024
fstat64(3, {st_mode=S_IFREG|0644, st_size=27132, ...}) = 0
mmap(0xffd9000, 91936, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xffd9000
mprotect(0xffe0000, 63264, PROT_NONE) = 0
mmap(0xffe9000, 28672, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED,
3, 0) = 0xffe9000
close(3) = 0
open("/lib/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\2\1\0\0\0\0\0\0\0\0\0\0\3\0\24\0\0\0\1\0\1\316"..., 1024) =
1024
fstat64(3, {st_mode=S_IFREG|0755, st_size=1273304, ...}) = 0
mmap(0xfe80000, 1343768, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0xfe80000
mprotect(0xffb0000, 98584, PROT_NONE) = 0
mmap(0xffb0000, 90112, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED,
3, 0x120000) = 0xffb0000
mmap(0xffc6000, 8472, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xffc6000
close(3) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x30021000
mprotect(0xfe80000, 1245184, PROT_READ|PROT_WRITE) = 0
mprotect(0xfe80000, 1245184, PROT_READ|PROT_EXEC) = 0
munmap(0x30016000, 41397) = 0
socket(0x1f /* PF_??? */, SOCK_RAW, 1) = 3
ioctl(3, 0x400448d3, 0x10015fbc) = 0
ioctl(3, 0x800448c9, 0) = -1 ETIMEDOUT (Connection timed out)
fstat64(1, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x30016000
write(1, "Can\'t init device hci0. Connecti"..., 50Can't init device hci0.
Connection timed out(110)
) = 50
munmap(0x30016000, 4096) = 0
exit(1) = ?
tomcat:/home/m#

then:

tomcat:/home/m# hciconfig -a
hci0: Type: PCCARD
BD Address: 00:00:00:00:00:00 ACL MTU: 0:0 SCO MTU: 0:0
DOWN
RX bytes:0 acl:0 sco:0 events:0 errors:0
TX bytes:4 acl:0 sco:0 commands:1 errors:0
Features: 0x00 0x00 0x00 0x00
Packet type: DM1 DH1 HV1
Link policy:
Link mode: SLAVE ACCEPT

lsmod delivers (just relevant lines):

bt3c_cs 9396 1
l2cap 18416 2 (autoclean)
hci_usb 7744 0 (autoclean) (unused)
rfcomm 34548 2 (autoclean)
bluez 36472 2 (autoclean) [bt3c_cs l2cap hci_usb rfcomm]
ds 8432 1 [bt3c_cs]
yenta_socket 11088 1
pcmcia_core 42464 0 [bt3c_cs ds yenta_socket]
unix 17528 184 (autoclean)

Booting looks like:

May 8 14:57:32 tomcat kernel: Linux Kernel Card Services 3.1.22
May 8 14:57:32 tomcat kernel: options: [pci] [cardbus] [pm]
May 8 14:57:32 tomcat kernel: Intel PCIC probe: not found.
May 8 14:57:33 tomcat kernel: Yenta IRQ list 0000, PCI irq58
May 8 14:57:33 tomcat kernel: Socket status: 30000086
May 8 14:57:33 tomcat cardmgr[1070]: watching 1 sockets
May 8 14:57:33 tomcat cardmgr[1071]: starting, version is 3.2.2
...
May 8 14:58:52 tomcat hcid[1428]: HCI daemon ver 2.3 started
May 8 14:58:53 tomcat kernel: BlueZ Core ver 2.2 Copyright (C) 2000,2001
Qualcomm Inc
May 8 14:58:53 tomcat kernel: Written 2000,2001 by Maxim Krasnyansky
<[email protected]>
May 8 14:58:53 tomcat kernel: register(bluetooth/rfcomm/47): could not append
to parent, err: -17
May 8 14:58:53 tomcat kernel: devfs_register(bluetooth/rfcomm/48): could not
append to parent, err: -17
May 8 14:58:53 tomcat kernel: devfs_register(bluetooth/rfcomm/49): could not
append to parent, err: -17
... (this one goes up to /255, this is just because of the devfs daemon,
without it the timeout still persists) ...
May 8 14:58:53 tomcat kernel: devfs_register(bluetooth/rfcomm/255): could not
append to parent, err: -17
May 8 14:58:53 tomcat kernel: BlueZ RFCOMM ver 0.4
May 8 14:58:53 tomcat kernel: Copyright (C) 2002 Maxim Krasnyansky
<[email protected]>
May 8 14:58:53 tomcat kernel: Copyright (C) 2002 Marcel Holtmann
<[email protected]>
May 8 14:58:53 tomcat kernel: BlueZ HCI USB driver ver 2.4 Copyright (C)
2000,2001 Qualcomm Inc
May 8 14:58:53 tomcat kernel: Written 2000,2001 by Maxim Krasnyansky
<[email protected]>
May 8 14:58:53 tomcat kernel: usb.c: registered new driver hci_usb
May 8 14:58:53 tomcat kernel: BlueZ L2CAP ver 2.1 Copyright (C) 2000,2001
Qualcomm Inc
May 8 14:58:53 tomcat kernel: Written 2000,2001 by Maxim Krasnyansky
<[email protected]>
May 8 14:58:54 tomcat sdpd[1436]: SDPd ver 1.1 started

then I insert the card, and it gives:

May 8 15:02:20 tomcat cardmgr[1071]: socket 0: 3Com Bluetooth PC Card
May 8 15:02:20 tomcat cardmgr[1071]: executing: 'modprobe bt3c_cs'
May 8 15:02:21 tomcat hcid[1428]: HCI dev 0 registered
May 8 15:02:31 tomcat hcid[1616]: Can't init device hci0. Connection timed
out(110)

in dmesg a line appears:
cs: memory probe 0x80000000-0x80ffffff: excluding 0x80000000-0x800fffff


the 3COM firmware is located in /etc/bluetooth/firmware (as suggested on
http://www.holtmann.org/linux/bluetooth/bt3c.html) and has the size:

tomcat:/home/m# ls -la /etc/bluetooth/firmware/
total 12
drwxr-xr-x 2 root root 4096 Oct 11 2002 .
drwxr-xr-x 3 root root 4096 May 8 12:56 ..
-r-xr-xr-x 1 h h 3726 Oct 11 2002 BT3CPCC.bin

tomcat:/home/m# file /etc/bluetooth/firmware/BT3CPCC.bin
/etc/bluetooth/firmware/BT3CPCC.bin: Motorola S-Record; binary data in text
format

the bluefw package is installed from sourceforge (debian):
ii bluez-bluefw 1.0-1 Firmware and loader
for BCM2033-based Bluetooth devices
tomcat:/home/m# dpkg -L bluez-bluefw
/.
/etc
/etc/hotplug
/etc/hotplug/usb
/etc/hotplug/usb/bluefw.usermap
/etc/hotplug/usb/bluefw
/usr
/usr/share
/usr/share/doc
/usr/share/doc/bluez-bluefw
/usr/share/doc/bluez-bluefw/BCM-LEGAL.txt
/usr/share/doc/bluez-bluefw/README.Debian
/usr/share/doc/bluez-bluefw/copyright
/usr/share/doc/bluez-bluefw/changelog.gz
/usr/share/doc/bluez-bluefw/changelog.Debian.gz
/usr/share/bluez-bluefw
/usr/share/bluez-bluefw/BCM2033-FW.bin
/usr/share/bluez-bluefw/BCM2033-MD.hex
/usr/share/man
/usr/share/man/man8
/usr/share/man/man8/bluefw.8.gz
/usr/sbin
/usr/sbin/bluefw

and /sbin/bluefw being a symlink to /usr/sbin/bluefw

What's wrong? Am I supposed to use another bluefw executable?

Thanks,

Mark





-------------------------------------------------------
Enterprise Linux Forum Conference & Expo, June 4-6, 2003, Santa Clara
The only event dedicated to issues related to Linux enterprise solutions
http://www.enterpriselinuxforum.com

_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users


2003-05-16 14:51:32

by Krisztian Mark Szentes

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?

On Friday 16 May 2003 16:32, Marcel Holtmann wrote:
> I got a contact at Cebit this year, but I never found the time to write
> an email to him according the firmware stuff and the new card Version
> 3.0 (which is not working with this driver). You can contact him if you
> like. His name is Brent Nixon (brent_nixon(at)3com.com).

Thanks, I will draft a letter and sent a copy to you.

Mark

--
produktivIT - Open-Source Solution Provider
Siebenbrunnengasse 55/7
A-1050 Wien

2003-05-16 14:48:00

by Benjamin Herrenschmidt

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?


> I have not a PowerPC platform for testing, so I can't write any code at
> the moment. But your proposal looks very ugly and I don't want to go
> this way for 2.4. I will wait until the firmware stuff is accepted by
> Linus and then try to port the current driver to the new architecture.

It is quite ugly, though not as ugly as hard coding the IO ports like
some ppl do ;) It's also the only proper way to access the IO ports
from userland regardless which PCI host bus they are on. We added this
syscall for the sake of XFree initially.

Ben.

2003-05-16 14:32:24

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?

Hi Kirsztian,

> I am fed up with the card, I bought it almost year ago and hoped it would
> some time become easier to use. I chose it over the Xircom and Anycom
> parts because its antenna looked neat. In the meantime, I also bought a
> USB device which explicitely stated Linux compatibility on the
> manufacturer's web site (Epox).
> I'm thinking about
>
> (1) asking 3COM for permission, or
> (2) returning it to 3COM's headquarters or
> (3) publicly destroying it and putting up a video or
> (4) sell it to a modern slave (Windoze user) and donating the money to
> Debian
>
> Marcel, can you give me a hint whom I should contact for (1)?

I got a contact at Cebit this year, but I never found the time to write
an email to him according the firmware stuff and the new card Version
3.0 (which is not working with this driver). You can contact him if you
like. His name is Brent Nixon (brent_nixon(at)3com.com).

Regards

marcel




-------------------------------------------------------
Enterprise Linux Forum Conference & Expo, June 4-6, 2003, Santa Clara
The only event dedicated to issues related to Linux enterprise solutions
http://www.enterpriselinuxforum.com

_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users

2003-05-16 14:25:05

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?

Hi Ben,

> > if you don't see any other solution to work around, this device will be
> > not supported on the PowerPC platform.
>
> And probably many others...
>
> direct IO port access is really an x86 thing...
>
> Note that if the cardbus bridge actually sits on the main PCI bus and uses
> "legacy" PIO addresses, it is possible to do something, though I hate it ;)
>
> You can call the sys_pciconfig_iobase syscall to retreive the physical base
> address where the IO ports of a given PCI bus are mapped.
>
> By passing that the bus number where the cardbus bridge lives on, you can
> then use the resulting value to mmap /dev/mem and actually access those
> IO ports.
>
> When actually implementing inx/outx in userland, I strongly suggest you do
> what the kernel does in asm/io.h for ld/st_le16, so you get byteswapped
> access for 16 bits, and have proper eieio barriers.
>
> That syscall should have the following syntax:
>
> #define IOBASE_IO 2
>
> syscall(200, IOBASE_IO, bus_number, 0);

I have not a PowerPC platform for testing, so I can't write any code at
the moment. But your proposal looks very ugly and I don't want to go
this way for 2.4. I will wait until the firmware stuff is accepted by
Linus and then try to port the current driver to the new architecture.

Regards

Marcel




-------------------------------------------------------
Enterprise Linux Forum Conference & Expo, June 4-6, 2003, Santa Clara
The only event dedicated to issues related to Linux enterprise solutions
http://www.enterpriselinuxforum.com

_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users

2003-05-16 14:22:47

by Krisztian Mark Szentes

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?



On Friday 16 May 2003 15:30, Marcel Holtmann wrote:

> > Hrm... The problem isn't simple. You are just not supposed to tap IOs
> > that way from userland, especially since PPC arch doesn't have
> > anything like "PIO" instructions. The IO space of your card is
> > actually mapped somewhere in physical memory, that "somewhere" not
> > beeing generally available to userland.
> >
> > Can you tell me more about the card ? Is it a 16 bits PCMCIA device or
> > is it a cardbus (PCI) one ? Why can't you tap the IOs solely from
> > within a kernel driver ?
>
> this is a 16 Bit PCMCIA card. We need to load the firmware from
> userspace, because we can't distribute it within the kernel driver due
> the legal issues. At the moment we don't even distribute the firmware
> file with our userspace firmware loader program.

OK.

I am fed up with the card, I bought it almost year ago and hoped it would
some time become easier to use. I chose it over the Xircom and Anycom
parts because its antenna looked neat. In the meantime, I also bought a
USB device which explicitely stated Linux compatibility on the
manufacturer's web site (Epox).
I'm thinking about

(1) asking 3COM for permission, or
(2) returning it to 3COM's headquarters or
(3) publicly destroying it and putting up a video or
(4) sell it to a modern slave (Windoze user) and donating the money to
Debian

Marcel, can you give me a hint whom I should contact for (1)?

Salut

Mark

P.S. Maybe I should do (1), (2), (3) AND (4) :-))

--
produktivIT - Open-Source Solution Provider
Siebenbrunnengasse 55/7
A-1050 Wien

2003-05-16 14:11:43

by Benjamin Herrenschmidt

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?

On Fri, 2003-05-16 at 15:57, Marcel Holtmann wrote:
> Hi Ben,
>
> > > an ioctl is not possible at that time, because we need the firmware
> > > loaded before we can initialise the Bluetooth HCI device. And I don't
> > > want to use the /proc for this kind of stuff. We hopefully will have a
> > > unified interface for this in 2.5 with request_firmware() call and the
> > > sysfs. See current discussion on LKML.
> >
> > Then a /proc entry or a temporary /dev entry will be the only sane
> > solution for 2.4 I'm afraid...
>
> if you don't see any other solution to work around, this device will be
> not supported on the PowerPC platform.

And probably many others...

direct IO port access is really an x86 thing...

Note that if the cardbus bridge actually sits on the main PCI bus and uses
"legacy" PIO addresses, it is possible to do something, though I hate it ;)

You can call the sys_pciconfig_iobase syscall to retreive the physical base
address where the IO ports of a given PCI bus are mapped.

By passing that the bus number where the cardbus bridge lives on, you can
then use the resulting value to mmap /dev/mem and actually access those
IO ports.

When actually implementing inx/outx in userland, I strongly suggest you do
what the kernel does in asm/io.h for ld/st_le16, so you get byteswapped
access for 16 bits, and have proper eieio barriers.

That syscall should have the following syntax:

#define IOBASE_IO 2

syscall(200, IOBASE_IO, bus_number, 0);

Ben.

2003-05-16 13:57:17

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?

Hi Ben,

> > an ioctl is not possible at that time, because we need the firmware
> > loaded before we can initialise the Bluetooth HCI device. And I don't
> > want to use the /proc for this kind of stuff. We hopefully will have a
> > unified interface for this in 2.5 with request_firmware() call and the
> > sysfs. See current discussion on LKML.
>
> Then a /proc entry or a temporary /dev entry will be the only sane
> solution for 2.4 I'm afraid...

if you don't see any other solution to work around, this device will be
not supported on the PowerPC platform.

Regards

Marcel




-------------------------------------------------------
Enterprise Linux Forum Conference & Expo, June 4-6, 2003, Santa Clara
The only event dedicated to issues related to Linux enterprise solutions
http://www.enterpriselinuxforum.com

_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users

2003-05-16 13:47:06

by Benjamin Herrenschmidt

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?


> an ioctl is not possible at that time, because we need the firmware
> loaded before we can initialise the Bluetooth HCI device. And I don't
> want to use the /proc for this kind of stuff. We hopefully will have a
> unified interface for this in 2.5 with request_firmware() call and the
> sysfs. See current discussion on LKML.

Then a /proc entry or a temporary /dev entry will be the only sane
solution for 2.4 I'm afraid...

Ben.

2003-05-16 13:39:44

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?

Hi Ben,

> > > Hrm... The problem isn't simple. You are just not supposed to tap IOs
> > > that way from userland, especially since PPC arch doesn't have anything
> > > like "PIO" instructions. The IO space of your card is actually mapped
> > > somewhere in physical memory, that "somewhere" not beeing generally
> > > available to userland.
> > >
> > > Can you tell me more about the card ? Is it a 16 bits PCMCIA device or
> > > is it a cardbus (PCI) one ? Why can't you tap the IOs solely from within
> > > a kernel driver ?
> >
> > this is a 16 Bit PCMCIA card. We need to load the firmware from
> > userspace, because we can't distribute it within the kernel driver due
> > the legal issues. At the moment we don't even distribute the firmware
> > file with our userspace firmware loader program.
>
> Can't you do some kind of ioctl or /proc entry to the card's driver
> to pass it the firmware from userland and have the actual IO code in
> the kernel ?

an ioctl is not possible at that time, because we need the firmware
loaded before we can initialise the Bluetooth HCI device. And I don't
want to use the /proc for this kind of stuff. We hopefully will have a
unified interface for this in 2.5 with request_firmware() call and the
sysfs. See current discussion on LKML.

Regards

Marcel




-------------------------------------------------------
Enterprise Linux Forum Conference & Expo, June 4-6, 2003, Santa Clara
The only event dedicated to issues related to Linux enterprise solutions
http://www.enterpriselinuxforum.com

_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users

2003-05-16 13:30:33

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?

Hi Ben,

> Hrm... The problem isn't simple. You are just not supposed to tap IOs
> that way from userland, especially since PPC arch doesn't have anything
> like "PIO" instructions. The IO space of your card is actually mapped
> somewhere in physical memory, that "somewhere" not beeing generally
> available to userland.
>
> Can you tell me more about the card ? Is it a 16 bits PCMCIA device or
> is it a cardbus (PCI) one ? Why can't you tap the IOs solely from within
> a kernel driver ?

this is a 16 Bit PCMCIA card. We need to load the firmware from
userspace, because we can't distribute it within the kernel driver due
the legal issues. At the moment we don't even distribute the firmware
file with our userspace firmware loader program.

Regards

Marcel




-------------------------------------------------------
Enterprise Linux Forum Conference & Expo, June 4-6, 2003, Santa Clara
The only event dedicated to issues related to Linux enterprise solutions
http://www.enterpriselinuxforum.com

_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users

2003-05-16 13:32:19

by Benjamin Herrenschmidt

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?

On Fri, 2003-05-16 at 15:30, Marcel Holtmann wrote:
> Hi Ben,
>
> > Hrm... The problem isn't simple. You are just not supposed to tap IOs
> > that way from userland, especially since PPC arch doesn't have anything
> > like "PIO" instructions. The IO space of your card is actually mapped
> > somewhere in physical memory, that "somewhere" not beeing generally
> > available to userland.
> >
> > Can you tell me more about the card ? Is it a 16 bits PCMCIA device or
> > is it a cardbus (PCI) one ? Why can't you tap the IOs solely from within
> > a kernel driver ?
>
> this is a 16 Bit PCMCIA card. We need to load the firmware from
> userspace, because we can't distribute it within the kernel driver due
> the legal issues. At the moment we don't even distribute the firmware
> file with our userspace firmware loader program.

Can't you do some kind of ioctl or /proc entry to the card's driver
to pass it the firmware from userland and have the actual IO code in
the kernel ?

Ben.

2003-05-16 13:24:13

by Benjamin Herrenschmidt

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?

On Fri, 2003-05-16 at 14:38, Krisztian Mark Szentes wrote:
> {hello Ben}
>
> On Friday 16 May 2003 13:04, Marcel Holtmann wrote:
> > > > > I have trouble with the 3COM Cardbus bluetooth card on a Powerbook
> > > > > Titanium (a powerpc notebook). I patched the 2.4.20 kernel with
> > > > > the mh-6 patch (and the benh patch which does not collide). I
> > > > > haven't found any hint on the list yet.
> ...
> > You're using a Powerbook and the 3Com is currently not supported on the
> > PowerPC architecture. The Kernel side of the driver should work fine
> > (not tested), but the bluefw have no code to load the firmware. Take a
> > look at the mailing list archive for this problem.
>
> .../...

Hrm... The problem isn't simple. You are just not supposed to tap IOs
that way from userland, especially since PPC arch doesn't have anything
like "PIO" instructions. The IO space of your card is actually mapped
somewhere in physical memory, that "somewhere" not beeing generally
available to userland.

Can you tell me more about the card ? Is it a 16 bits PCMCIA device or
is it a cardbus (PCI) one ? Why can't you tap the IOs solely from within
a kernel driver ?

Ben.



-------------------------------------------------------
Enterprise Linux Forum Conference & Expo, June 4-6, 2003, Santa Clara
The only event dedicated to issues related to Linux enterprise solutions
http://www.enterpriselinuxforum.com

_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users

2003-05-16 13:16:19

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?

Hi Krisztian,

> kind of astonished, I chose the 3COM card explicitly according to the BlueZ
> hardware compatibility list, I could also have chosen the Xircom or Anycom
> cards; they would probably have saved a lot of messing around.
> Perhaps you could correct
> http://www.holtmann.org/linux/bluetooth/bt3c.html
> in order to reflect the missing powerpc support.

I have added a small comment to this page.

> Furthermore, you could also enhance the hardware support page by adding
> vendor co-operation information like linuxprinting.org does. I saw Anycom
> directly links to Marcel's homepage. A simple sorting of the list
> according to driver openness etc. would just suffice

If you search through the mailing list archive, you will find a posting
from Max that suggested the same thing. I included it into the list and
removed it the at same day, because I am not the person who should
decide which company is Linux friendly and which is not. Let the list
and the driver source code talk for themself. And you mention the Anycom
driver. I have this driver already finished over half a year ago, before
I got the rights to publish it under GPL.

Regards

Marcel




-------------------------------------------------------
Enterprise Linux Forum Conference & Expo, June 4-6, 2003, Santa Clara
The only event dedicated to issues related to Linux enterprise solutions
http://www.enterpriselinuxforum.com

_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users

2003-05-16 12:38:08

by Krisztian Mark Szentes

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?

{hello Ben}

On Friday 16 May 2003 13:04, Marcel Holtmann wrote:
> > > > I have trouble with the 3COM Cardbus bluetooth card on a Powerbook
> > > > Titanium (a powerpc notebook). I patched the 2.4.20 kernel with
> > > > the mh-6 patch (and the benh patch which does not collide). I
> > > > haven't found any hint on the list yet.
...
> You're using a Powerbook and the 3Com is currently not supported on the
> PowerPC architecture. The Kernel side of the driver should work fine
> (not tested), but the bluefw have no code to load the firmware. Take a
> look at the mailing list archive for this problem.
Thanks, I found the relevant part (by Edd Dumbill):

"Second, the bad news, there's still x86-arch specific code in there, for
the bt3card stuff. At least ppc does not have sys/io.h. "

There must be some uniform way to access I/O of a Cardbus PC-Card on the
more common arch plattforms. (I did not find any - perhaps there is
none??) Ben, can you please have a look at the code? (Sent by separate
mail.)

Greets

Mark
kind of astonished, I chose the 3COM card explicitly according to the BlueZ
hardware compatibility list, I could also have chosen the Xircom or Anycom
cards; they would probably have saved a lot of messing around.
Perhaps you could correct
http://www.holtmann.org/linux/bluetooth/bt3c.html
in order to reflect the missing powerpc support.

Furthermore, you could also enhance the hardware support page by adding
vendor co-operation information like linuxprinting.org does. I saw Anycom
directly links to Marcel's homepage. A simple sorting of the list
according to driver openness etc. would just suffice


--
Krisztian Mark Szentes
produktivIT - Open-Source Solution Provider
Siebenbrunnengasse 55/7
A-1050 Wien



-------------------------------------------------------
Enterprise Linux Forum Conference & Expo, June 4-6, 2003, Santa Clara
The only event dedicated to issues related to Linux enterprise solutions
http://www.enterpriselinuxforum.com

_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users

2003-05-16 11:04:49

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?

Hi Krisztian,

> > > I have trouble with the 3COM Cardbus bluetooth card on a Powerbook
> > > Titanium (a powerpc notebook). I patched the 2.4.20 kernel with the
> > > mh-6 patch (and the benh patch which does not collide). I haven't
> > > found any hint on the list yet.
> > >
> > > With a USB bluetooth adapter (hci_usb) everything works fine. I have a
> > > wonderful RFCOMM communication to a Nokia 6310 and I can get on the
> > > internet via GPRS.
> >
> > is this a SMP enabled kernel? The driver have some problems if you run a
> > SMP kernel. Try to disable it.
> No, single processor. powerpc.
> # CONFIG_SMP is not set
>
> I hope the card itself would work all right; but as far as I can tell the
> firmware does not get loaded. I hope this is not a powerpc arch problem.

I missed something in your previous mail :(

You're using a Powerbook and the 3Com is currently not supported on the
PowerPC architecture. The Kernel side of the driver should work fine
(not tested), but the bluefw have no code to load the firmware. Take a
look at the mailing list archive for this problem.

Regards

Marcel




-------------------------------------------------------
Enterprise Linux Forum Conference & Expo, June 4-6, 2003, Santa Clara
The only event dedicated to issues related to Linux enterprise solutions
http://www.enterpriselinuxforum.com

_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users

2003-05-13 08:47:39

by Krisztian Mark Szentes

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?

Hi Marcel

On Tuesday 13 May 2003 02:17, Marcel Holtmann wrote:
> > I have trouble with the 3COM Cardbus bluetooth card on a Powerbook
> > Titanium (a powerpc notebook). I patched the 2.4.20 kernel with the
> > mh-6 patch (and the benh patch which does not collide). I haven't
> > found any hint on the list yet.
> >
> > With a USB bluetooth adapter (hci_usb) everything works fine. I have a
> > wonderful RFCOMM communication to a Nokia 6310 and I can get on the
> > internet via GPRS.
>
> is this a SMP enabled kernel? The driver have some problems if you run a
> SMP kernel. Try to disable it.
No, single processor. powerpc.
# CONFIG_SMP is not set

I hope the card itself would work all right; but as far as I can tell the
firmware does not get loaded. I hope this is not a powerpc arch problem.

Cheers

Mark
--
produktivIT - Open-Source Solution Provider
Siebenbrunnengasse 55/7
A-1050 Wien

2003-05-13 01:16:56

by Krisztian Mark Szentes

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded? - problem persists.

On Monday 12 May 2003 22:29, Max Krasnyansky wrote:
> At 06:43 AM 5/8/2003, Krisztian Mark Szentes wrote:
> >May 8 15:02:20 tomcat cardmgr[1071]: socket 0: 3Com Bluetooth PC Card
> >May 8 15:02:20 tomcat cardmgr[1071]: executing: 'modprobe bt3c_cs'
> >May 8 15:02:21 tomcat hcid[1428]: HCI dev 0 registered
> >May 8 15:02:31 tomcat hcid[1616]: Can't init device hci0. Connection
> > timed out(110)
>
> Hmm, you should see bluefw messages before HCI dev 0 registered.
> I guess you'd need to ping Marcel on that one.

I observed cardmgr to cause a line
cardmgr[xxx]: executing: 'modprobe bt3c_cs' line

I deleted the /sbin/bluefw symlink to /usr/sbin/bluefw to see if it gets
invoked, which gives:
bt3c_cs: Failed to exec "/sbin/bluefw pccard 03f8".

in /proc/ioports bt3c_cs shows up at 000003f8-000003ff

if I manually call /usb/sbin/bluefw pccard 03f8 it gives no error; but it
does not touch the /etc/bluetooth/firmware/BT3CPCC.bin file either.
I tried the bluez-bluefw both in version 1.0-1 and 0.9-2 (powerpc) and
compiled 1.0 from source, but the firmware still does not even get
touched, let alone loaded. And I get no bluefw messages in syslog.


Any hints?

Mark

P.S. The /sbin/bluefw symlink is not included in the Debian packages but
the kernel module loads this and not /usr/sbin/bluefw.
--
produktivIT - Open-Source Solution Provider
Siebenbrunnengasse 55/7
A-1050 Wien



-------------------------------------------------------
Enterprise Linux Forum Conference & Expo, June 4-6, 2003, Santa Clara
The only event dedicated to issues related to Linux enterprise solutions
http://www.enterpriselinuxforum.com

_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users

2003-05-13 00:17:01

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?

Hi Krisztian,

> I have trouble with the 3COM Cardbus bluetooth card on a Powerbook Titanium (a
> powerpc notebook). I patched the 2.4.20 kernel with the mh-6 patch (and the
> benh patch which does not collide). I haven't found any hint on the list yet.
>
> With a USB bluetooth adapter (hci_usb) everything works fine. I have a
> wonderful RFCOMM communication to a Nokia 6310 and I can get on the internet
> via GPRS.

is this a SMP enabled kernel? The driver have some problems if you run a
SMP kernel. Try to disable it.

Regards

Marcel




-------------------------------------------------------
Enterprise Linux Forum Conference & Expo, June 4-6, 2003, Santa Clara
The only event dedicated to issues related to Linux enterprise solutions
http://www.enterpriselinuxforum.com

_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users

2003-05-12 20:29:41

by Max Krasnyansky

[permalink] [raw]
Subject: Re: [Bluez-users] bt3c_cs time out - no firmware loaded?

At 06:43 AM 5/8/2003, Krisztian Mark Szentes wrote:
>May 8 15:02:20 tomcat cardmgr[1071]: socket 0: 3Com Bluetooth PC Card
>May 8 15:02:20 tomcat cardmgr[1071]: executing: 'modprobe bt3c_cs'
>May 8 15:02:21 tomcat hcid[1428]: HCI dev 0 registered
>May 8 15:02:31 tomcat hcid[1616]: Can't init device hci0. Connection timed out(110)
Hmm, you should see bluefw messages before HCI dev 0 registered.
I guess you'd need to ping Marcel on that one.

Max



-------------------------------------------------------
Enterprise Linux Forum Conference & Expo, June 4-6, 2003, Santa Clara
The only event dedicated to issues related to Linux enterprise solutions
http://www.enterpriselinuxforum.com

_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users