2008-02-24 22:03:05

by Peter Breuer

[permalink] [raw]
Subject: ADM8211


What's support like for the old broadcom pci ADM8211 card these days?

0000:00:0b.0 Network controller: Linksys ADMtek ADM8211 802.11b
Wireless Interface (rev 11)
Subsystem: Standard Microsystems Corp [SMC]: Unknown device 2602
Flags: medium devsel, IRQ 19
I/O ports at 9400 [size=256]
Memory at ed101000 (32-bit, non-prefetchable) [size=1K]
Expansion ROM at 30100000 [disabled] [size=128K]
Capabilities: [c0] Power Management version 2

This produces zilch on my 64 bit athlon running kern 2.6.22.10 in 64
bit mode with the latest wireles-compat stack:

[590632.616943] ACPI: PCI Interrupt 0000:00:0b.0[A] -> GSI 19 (level, low) -> IRQ 19
[590632.640345] 0000:00:0b.0 (adm8211): Channel range: 1 - 13
[590632.640463] 0000:00:0b.0 (adm8211): RFtype=1 BBPtype=1 Specific BBP=0 Transceiver=0
[590632.640535] WARNING: at /usr/local/src/compat-wireless-2.6/net/wireless/core.c:267 wiphy_register()
[590632.665337]
[590632.665338] Call Trace:
[590632.676634] [<ffffffff880ed566>] :cfg80211:wiphy_register+0x126/0x150
[590632.694525] [<ffffffff881d9040>] :adm8211:adm8211_eeprom_register_write+0x0/0x60
[590632.715011] [<ffffffff881a44f9>] :mac80211:ieee80211_register_hw+0x29/0x3c0
[590632.734315] [<ffffffff881dcdf9>] :adm8211:adm8211_probe+0x339/0x500
[590632.751704] [<ffffffff802d1f30>] sysfs_make_dirent+0x30/0x50
[590632.769234] [<ffffffff803245c0>] pci_call_probe+0x10/0x20
[590632.784307] [<ffffffff8032462d>] __pci_device_probe+0x5d/0x70
[590632.800321] [<ffffffff80324670>] pci_device_probe+0x30/0x60
[590632.815867] [<ffffffff8037f074>] really_probe+0x94/0x130
[590632.830710] [<ffffffff8037f17b>] driver_probe_device+0x4b/0x70
[590632.846955] [<ffffffff8037f30b>] __driver_attach+0xbb/0xf0
[590632.862266] [<ffffffff8037f250>] __driver_attach+0x0/0xf0
[590632.877319] [<ffffffff8037f250>] __driver_attach+0x0/0xf0
[590632.892400] [<ffffffff8037e0ba>] bus_for_each_dev+0x5a/0x80
[590632.907946] [<ffffffff8037e88c>] bus_add_driver+0x7c/0x120
[590632.923256] [<ffffffff80324a3d>] __pci_register_driver+0x5d/0xa0
[590632.939971] [<ffffffff8024ed26>] sys_init_module+0xf6/0x170
[590632.955491] [<ffffffff8020a0be>] system_call+0x7e/0x83
[590632.970435]
[590632.974797] 0000:00:0b.0 (adm8211): Cannot register device
[590632.990001] ACPI: PCI interrupt for device 0000:00:0b.0 disabled
[590633.006636] adm8211: probe of 0000:00:0b.0 failed with error -22
[590633.028461] usbcore: registered new interface driver zd1211rw
[590633.050754] usbcore: registered new interface driver rtl8187

The warning is

if (!have_band) {
WARN_ON(1);
return -EINVAL;
}
Which appears to come from

wiphy->bands[band] == NULL

for band = 0 to IEEE80211_NUM_BANDS - 1. I'd guess it got nothing by
reading some registers.

Any clues?

Peter



2008-02-25 10:12:36

by Johannes Berg

[permalink] [raw]
Subject: [PATCH] adm8211: fix cfg80211 band API conversion

Insert a missing band assignment.

Signed-off-by: Johannes Berg <[email protected]>
---
Please test and if it works reply with Tested-by (like my Signed-off-by)
so John can note that to merge it.

drivers/net/wireless/adm8211.c | 2 ++
1 file changed, 2 insertions(+)

--- everything.orig/drivers/net/wireless/adm8211.c 2008-02-25 11:08:45.000000000 +0100
+++ everything/drivers/net/wireless/adm8211.c 2008-02-25 11:09:53.000000000 +0100
@@ -1932,6 +1932,8 @@ static int __devinit adm8211_probe(struc

priv->channel = 1;

+ dev->wiphy->bands[IEEE80211_BAND_2GHZ] = &priv->band;
+
err = ieee80211_register_hw(dev);
if (err) {
printk(KERN_ERR "%s (adm8211): Cannot register device\n",



2008-02-25 10:07:14

by Johannes Berg

[permalink] [raw]
Subject: Re: ADM8211


On Sun, 2008-02-24 at 22:57 +0100, Peter T. Breuer wrote:
> What's support like for the old broadcom pci ADM8211 card these days?

It's supposed to work, but clearly I broke it ;)

> [590632.640345] 0000:00:0b.0 (adm8211): Channel range: 1 - 13
> [590632.640463] 0000:00:0b.0 (adm8211): RFtype=1 BBPtype=1 Specific BBP=0 Transceiver=0
> [590632.640535] WARNING: at /usr/local/src/compat-wireless-2.6/net/wireless/core.c:267 wiphy_register()

Looks like I broke the registration code.

Taking a look...

johannes


Attachments:
signature.asc (828.00 B)
This is a digitally signed message part