Jump to content

Ubuntu and bcm43xx


Recommended Posts

I have a Motorola WN825G pcmcia card and had no problems with it under Mandriva, but I installed Ubuntu recently and now the interface doesn't get an ip at boot. If I click the wireless applet in Gnome, it says that eth1 is active, but it has no ip and iwconfig shows the AP as Invalid. If I then click Configure, highlight eth1, select properties and then uncheck 'enable this device', click 'ok', highlight eth1, select properties, check 'enable this device', it takes a second or two and gets associated with the AP with an IP. Trying one step less and 'Deactivate', then 'Activate' doesn't work...it takes about a minute to try to associate, the link light on the card never lights or flashes and it eventually just closes the 'Activating...' window and doesn't get an IP.

 

root@omar-laptop:/home/ohms# uname -a
Linux omar-laptop 2.6.15-27-386 #1 PREEMPT Sat Sep 16 01:51:59 UTC 2006 i686 GNU/Linux
root@omar-laptop:/home/ohms# cat /etc/network/interfaces 
auto lo
iface lo inet loopback

auto eth1
iface eth1 inet dhcp
wireless-essid <<my essid>>
wireless-key <<my key>>

 

Any ideas?

Edited by Steve Scrimpshire
Link to comment
Share on other sites

I don't have what-so-ever any experience with pcmcia cards but you might check this and see if it helps: http://ubuntuforums.org/showthread.php?t=247170

Edited by Artificial Intelligence
Link to comment
Share on other sites

Two questions, is the bcm43xx modules loaded (lsmod | grep bcm43xx)?

 

And ... did the card work correctly with ndiswrapper?

 

 

 

I had a similar problem with the bcm43xx driver in the new ubuntu. I have a Broadcom chipset for my laptop's wireless and I had a devil of a time getting it to work with the bcm43xx driver. I had to install fw-cutter and cut the firmware from the windows drivers, which I screwed up, and then resorted to installing a package with all the known firmwares in it. Once I did get the thing working, it was only able to connect at 11 Mbps ... v e r y s l o w.

 

So I decided to dump the bcm43xx and stick with the ndiswrapper. If you decide to do that, here's how.

 

1) unload the bcm43xx module;

sudo rmmod bcm43xx

2) add it to modprobe.d's blacklist to ensure that it is never loaded again, even by accident.

sudo gedit /etc/modprobe.d/blacklist

add a line at the bottom that reads "blacklist bcm43xx"

3) install the ndiswrapper-utils package

sudo apt-get install ndiswrapper-utils

4) change the ID for your wireless nic to wlan0 instead of the default eth1

sudo gedit /etc/iftab

change "eth1" to "wlan0" and then run

sudo /etc/init.d/networking restart

5) after that it's a pretty much standard ndiswrapper setup, which you can find countless tutorials here and on other sites.

 

I found that ndiswrapper worked MUCH better for my card, and until they work some more of the kinks out of the bcm43xx driver, I am gonna stick with it.

 

Good Luck!

Nate

Link to comment
Share on other sites

I may wind up going back to ndiswrapper. This card was working great with Mandriva and the bcm43xx module, though. Here's more info:

 

 

tail -v -f /var/log/messages:

 

Click on “Configure” and highlight eth1, Select “Properties” and uncheck “Enable” and click “Ok”:

The bar in systray that was two orange bars is now fully green, but there is no IP:

 

Oct 19 22:12:47 localhost kernel: [17179787.872000] SoftMAC: Open Authentication completed with 00:13:10:2d:8b:68
Oct 19 22:14:09 localhost kernel: [17179870.000000] NETDEV WATCHDOG: eth1: transmit timed out
Oct 19 22:14:09 localhost kernel: [17179870.000000] ACPI: PCI interrupt for device 0000:06:00.0 disabled

 

Select Properties and recheck “Enable” and Click “Ok”:

Bar goes back to two orange bars for a few seconds and then becomes all green again and now there is an IP:

 

Oct 19 22:14:09 localhost kernel: [17179870.000000] ACPI: PCI Interrupt 0000:06:00.0[A] -> Link [LNKA] -> GSI 11 (level, low) -> IRQ 11
Oct 19 22:14:09 localhost kernel: [17179870.288000] bcm43xx: Controller restarted
Oct 19 22:14:10 localhost kernel: [17179870.372000] SoftMAC: Open Authentication completed with 00:13:10:2d:8b:68

 

 

 

 

/var/log/messages on boot:

Oct 19 22:09:53 localhost kernel: [17179601.936000] Yenta: CardBus bridge found at 0000:00:10.0 [12a3:ab01]
Oct 19 22:09:53 localhost kernel: [17179601.936000] Yenta: Enabling burst memory read transactions
Oct 19 22:09:53 localhost kernel: [17179601.936000] Yenta: Using CSCINT to route CSC interrupts to PCI
Oct 19 22:09:53 localhost kernel: [17179601.936000] Yenta: Routing CardBus interrupts to PCI
Oct 19 22:09:53 localhost kernel: [17179601.936000] Yenta TI: socket 0000:00:10.0, mfunc 0x01000002, devctl 0x60
Oct 19 22:09:53 localhost kernel: [17179602.168000] Yenta: ISA IRQ mask 0x0000, PCI irq 11
Oct 19 22:09:53 localhost kernel: [17179602.168000] Socket status: 30000010
Oct 19 22:09:53 localhost kernel: [17179602.168000] ACPI: PCI Interrupt 0000:00:11.0[A] -> Link [LNKA] -> GSI 11 (level, low) -> IRQ 11
Oct 19 22:09:53 localhost kernel: [17179602.168000] Yenta: CardBus bridge found at 0000:00:11.0 [1179:0001]
Oct 19 22:09:53 localhost kernel: [17179602.296000] Yenta: ISA IRQ mask 0x0438, PCI irq 11
Oct 19 22:09:53 localhost kernel: [17179602.296000] Socket status: 30000020
Oct 19 22:09:53 localhost kernel: [17179602.804000] pccard: PCMCIA card inserted into slot 0
Oct 19 22:09:53 localhost kernel: [17179602.944000] pccard: CardBus card inserted into slot 1
Oct 19 22:09:53 localhost kernel: [17179603.036000] ieee80211: 802.11 data/management/control stack, git-1.1.7
Oct 19 22:09:53 localhost kernel: [17179603.036000] ieee80211: Copyright (C) 2004-2005 Intel Corporation <jketreno@linux.intel.com>
Oct 19 22:09:53 localhost kernel: [17179603.080000] bcm43xx driver
Oct 19 22:09:53 localhost kernel: [17179603.080000] PCI: Enabling device 0000:06:00.0 (0000 -> 0002)
Oct 19 22:09:53 localhost kernel: [17179603.080000] ACPI: PCI Interrupt 0000:06:00.0[A] -> Link [LNKA] -> GSI 11 (level, low) -> IRQ 11
Oct 19 22:09:53 localhost kernel: [17179603.188000] cs: IO port probe 0x100-0x3af: excluding 0x1e0-0x1e7 0x200-0x207 0x220-0x22f 0x330-0x337 0x388-0x38f
Oct 19 22:09:53 localhost kernel: [17179603.192000] cs: IO port probe 0x3e0-0x4ff: excluding 0x408-0x40f 0x480-0x48f 0x4d0-0x4d7
Oct 19 22:09:53 localhost kernel: [17179603.192000] cs: IO port probe 0x820-0x8ff: clean.
Oct 19 22:09:53 localhost kernel: [17179603.192000] cs: IO port probe 0xc00-0xcf7: clean.
Oct 19 22:09:53 localhost kernel: [17179603.196000] cs: IO port probe 0xa00-0xaff: clean.
Oct 19 22:09:53 localhost kernel: [17179603.196000] cs: IO port probe 0x100-0x3af: excluding 0x1e0-0x1e7 0x200-0x207 0x220-0x22f 0x330-0x337 0x388-0x38f
Oct 19 22:09:53 localhost kernel: [17179603.200000] cs: IO port probe 0x3e0-0x4ff: excluding 0x408-0x40f 0x480-0x48f 0x4d0-0x4d7
Oct 19 22:09:53 localhost kernel: [17179603.200000] cs: IO port probe 0x820-0x8ff: clean.
Oct 19 22:09:53 localhost kernel: [17179603.200000] cs: IO port probe 0xc00-0xcf7: clean.
Oct 19 22:09:53 localhost kernel: [17179603.200000] cs: IO port probe 0xa00-0xaff: clean.
Oct 19 22:09:53 localhost kernel: [17179603.200000] cs: memory probe 0xa0000000-0xa0ffffff: clean.
Oct 19 22:09:53 localhost kernel: [17179603.212000] pcmcia: registering new device pcmcia0.0
Oct 19 22:09:53 localhost kernel: [17179603.524000] hostap_cs: 0.4.4-kernel (Jouni Malinen <jkmaline@cc.hut.fi>)

 

Socket 0 is builtin WLAN, which I don't use because it is only 11M

Socket 1 is addon card (Motorola WN825G):

 

root@omar-laptop:/home/ohms# cardctl ident
Socket 0:
 product info: "TOSHIBA", "Wireless LAN Card", "Version 01.01", ""
 manfid: 0x0156, 0x0002
 function: 6 (network)
Socket 1:
 product info: "Broadcom", "802.11b CardBus", "8.0"
 manfid: 0x02d0, 0x0406
 function: 6 (network)

root@omar-laptop:/home/ohms# cat /proc/interrupts 
	   CPU0	   
 0:	 289182		  XT-PIC  timer
 1:	   2234		  XT-PIC  i8042
 2:		  0		  XT-PIC  cascade
 7:		  4		  XT-PIC  parport0
 8:		  3		  XT-PIC  rtc
 9:		 75		  XT-PIC  acpi
11:	  62046		  XT-PIC  ohci_hcd:usb1, ohci_hcd:usb2, ehci_hcd:usb3, ALI 5451, yenta, yenta, pcmcia0.0, bcm43xx
12:		107		  XT-PIC  i8042
14:	  23404		  XT-PIC  ide0
15:	  18848		  XT-PIC  ide1
NMI:		  0 
LOC:		  0 
ERR:		  0
MIS:		  0

 

Why can I not see 3-6 or 13? Even after card is successfully started. From the looks of the messages when it starts it is trying to use IRQ 6, but that becomes disabled and it switches to IRQ 11. Am I reading that right?

 

root@omar-laptop:/proc/irq/11/pcmcia0.0# cat /proc/ioports | grep pcm && cat /proc/ioports | grep PCI
0100-013f : pcmcia_socket0
0cf8-0cff : PCI conf1
1000-10ff : PCI CardBus #02
1400-14ff : PCI CardBus #02
1800-18ff : PCI CardBus #06
1c00-1cff : PCI CardBus #06

root@omar-laptop:/proc/irq/11/pcmcia0.0# cat /proc/iomem | grep pcm && cat /proc/ioports | grep PC
a0000000-a0000fff : pcmcia_socket0
0cf8-0cff : PCI conf1
1000-10ff : PCI CardBus #02
1400-14ff : PCI CardBus #02
1800-18ff : PCI CardBus #06
1c00-1cff : PCI CardBus #06

 

I've tried an append in grub.conf of pci=routeirq but that did no good.

 

I've got PnP OS “No” set in the BIOS.

Link to comment
Share on other sites

Steve,

 

A lot of people are having trouble with bcm43xx on Mandriva. I'm runninf 2007 official and I finally gave up and went back to ndiswrapper, which is working beautifully, and without the speed limitation.

 

An lsmod revealed several additional files associatd with fwcutter and bcm43xx which I had to stop from loading in order to make ndiswrapper boot. I added the following to /etc/modprobe.conf:

 

blacklist bcm43xx

blacklist ieee80211

blacklist ieee80211softmac

blacklist ieee80211_crypt

 

Then, for good measure, I added "ndiswrapper" (without the quotes) to /etc/modprobe.preload and /etc/modules. I configured my linksys wireless card. which has the broadcom chip, on eth1, managed mode, open wep, and it's running at 54 Mbit

 

Hope this points you in theright direction

Link to comment
Share on other sites

Still have the exact same problem with ndiswrapper.

 

Edit: Ok, not the exact same problem. On boot, it sits at 'Configuring network interface' for over a minute and then finishes booting, whereupon I have to do the same trick as with bcm43xx to get an ip. I guess I am stuck with the pain.

 

Edit Part II - The Two Towers: With bcm43xx, I've narrowed it down to exactly what I have to do manually. I look at iwconfig and it shows the correct essid and enc key, but the AP shows as "Invalid". I have to do:

 

iwconfig eth1 key <<my key>>

iwconfig eth1 essid <<my essid>>

 

Whereupon it now sees the AP, but I still have to do:

ifdown eth1

ifup eth1

 

To get an IP. I've tried to add those steps to /etc/rc.local...no luck

Tried creating a cronjob to run as root on boot...no luck

Tried creating a new service to run at S99 for all runlevels...no luck.

Tried creating a script to run suid root in my Gnome session...no luck...still gives me "Permission denied" for each command.

 

I'm at a loss.

 

Edit Part III - The Return of the King: I have to perform this same trick even after the laptop comes out of suspend.

Edited by Steve Scrimpshire
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...