Modify

Opened 10 years ago

Closed 7 years ago

#2677 closed enhancement (fixed)

[PATCH] Working b43 WiFi driver for brcm47xx (2.6) target

Reported by: biblbroks@… Owned by: noz
Priority: normal Milestone:
Component: base system Version: Trunk
Keywords: b43 Cc:

Description

Attached is a patch that:

  • Fixes broken initialization sequence in b43 PCI-SSB bridge (reason why b43xx was not visible on SSB bus)
  • Merges latest b43 patches from 2.6.24-rc2
  • Adds firmware download/installation to Makefile
  • Adds Broadcom BCM43XX WiFi profile (you may wish to change the name to something more appropriate)
  • Removes @BROKEN dependency from b43 package, restores module autoloading

Driver has been tested to work on ASUS WL-500gP in STA mode with WPA encryption.
AP mode still doesn't work beacuse of the broken hostapd devicescape driver.

Attachments (1)

b43-2.6.patch (18.5 KB) - added by biblbroks@… 10 years ago.

Download all attachments as: .zip

Change History (15)

Changed 10 years ago by biblbroks@…

comment:1 Changed 10 years ago by nbd

  • Resolution set to fixed
  • Status changed from new to closed

added in [9535], thanks!

comment:2 follow-up: Changed 10 years ago by vdanjean.ml@…

Just for the record, I also get a working WEP managed wifi connection on a linksys WRT53G router with this b53 driver. I hope hostapd devicescape driver will be soon fixed

comment:3 in reply to: ↑ 2 Changed 10 years ago by anonymous

Replying to vdanjean.ml@free.fr:

Just for the record, I also get a working WEP managed wifi connection on a linksys WRT53G router with this b53 driver. I hope hostapd devicescape driver will be soon fixed

s/WRT53G/WRT54G/

comment:4 Changed 10 years ago by mangoo

Umm, doesn't work for me on ASUS WL-500gP (SVN revision 10422 from 2008-Feb-08):

# modprobe b43
# dmesg -c
PCI: Fixing up device 0000:00:02.0
ssb: Core 0 found: ChipCommon (cc 0x800, rev 0x0D, vendor 0x4243)
ssb: Core 1 found: IEEE 802.11 (cc 0x812, rev 0x09, vendor 0x4243)
ssb: Core 2 found: PCI (cc 0x804, rev 0x0C, vendor 0x4243)
ssb: Core 3 found: PCMCIA (cc 0x80D, rev 0x07, vendor 0x4243)
ssb: Sonics Silicon Backplane found on PCI device 0000:00:02.0
b43-phy1: Broadcom 4318 WLAN found
phy1: Selected rate control algorithm 'simple'
phy1: Failed to initialize wep
b43: probe of ssb2:0 failed with error -12

# iwconfig
lo no wireless extensions.

eth0 no wireless extensions.

eth1 no wireless extensions.

comment:5 follow-up: Changed 10 years ago by mangoo

  • Resolution fixed deleted
  • Status changed from closed to reopened

Reopening.

At least two reports that it doesn't work in the newest SVN revision:

http://forum.openwrt.org/viewtopic.php?id=13644

comment:6 in reply to: ↑ 5 Changed 10 years ago by lars@…

I'm running trunk (10444) on a WRT54GS v4. The b43 driver loads and activates the wireless interface...

  b43-phy0: Broadcom 5352 WLAN found

...but wlan0 ends up with no MAC address:

  wlan0     Link encap:Ethernet  HWaddr 00:00:00:00:00:00  
            UP BROADCAST MULTICAST  MTU:1500  Metric:1
            RX packets:0 errors:0 dropped:0 overruns:0 frame:0
            TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:1000 
            RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

Attempting to add this to a bridge yields an "invalid argument" error:

  root@OpenWrt:/etc/config# brctl addif br-lan wlan0
  can't add wlan0 to bridge br-lan: Invalid argument

If I manually assign a MAC address it works great:

  root@OpenWrt:/etc/config# ifconfig wlan0 down
  root@OpenWrt:/etc/config# ifconfig wlan0 hw ether c0:ff:ee:12:34:56
  root@OpenWrt:/etc/config# ifconfig wlan0 up
  root@OpenWrt:/etc/config# brctl addif br-lan wlan0
  root@OpenWrt:/etc/config# brctl show
  bridge name     bridge id               STP enabled     interfaces
  br-lan          8000.0014bf2231fe       no              eth0.0
                                                          wlan0

comment:7 Changed 10 years ago by agb

  • Resolution set to fixed
  • Status changed from reopened to closed

The purpose of the ticket (to add the patch) was completed previously. Commits [10466] through [10479] updated to a newer version of mac80211 and b43. Please test the latest trunk rev, if b43 still does not work open a new ticket.

comment:8 Changed 10 years ago by lmelzer

  • Resolution fixed deleted
  • Status changed from closed to reopened

Does not work with the trunk version 10713, reverting to version 10465 (Seems like it's an issue with the latest module version of the b43)

b43-phy0 ERROR: Firmware file "b43/ucode5.fw" not found or load failed.
b43-phy0 ERROR: You must go to http://linuxwireless.org/en/users/Drivers/b43#devicefirmware and download the latest firmware (version 4).

The mentioned file is present in /lib/firmware

comment:9 Changed 10 years ago by noz

  • Owner changed from developers to noz
  • Status changed from reopened to new

Is this "failure to load firmware" error only on boot, or on every load of the module?

comment:10 Changed 10 years ago by noz

  • Status changed from new to assigned

comment:11 Changed 10 years ago by noz

  • Resolution set to fixed
  • Status changed from assigned to closed

Not seeing this anymore on WRTSL54GS, with r11754, so closing the issue.
Raise a *separate* issue (and review #3510 first) for any further b43 problems. (I do not want this issue to become a "catch-all")

comment:12 follow-up: Changed 8 years ago by Gele

The driver compiles and is working O.K. (tested on kernel 2.6.34, OpenWrt bleeding-edge/backfire, Asus WL500GP V2).

To set up access point from the installed wlan card, you need the hostapd
daemon installed. Verify you have it:
hostapd
make simple config file to check if it works:
save to /etc/hostapd.conf:

#change wlan0 to your wireless device
interface=wlan0
driver=nl80211
ssid=MyOpenWrtTest
channel=1

Then run the daemon:

hostapd -ddBK /etc/hostapd.conf

and read the messages.
Now you can manually bridge the wlan0 card with OpenWRT`s default ethernet bridge (br-lan):

brctl addif br-lan wlan0

Try to connect – it should work

comment:13 in reply to: ↑ 12 Changed 7 years ago by javahelpers@…

  • Resolution fixed deleted
  • Status changed from closed to reopened

Replying to Gele:

The driver compiles and is working O.K. (tested on kernel 2.6.34, OpenWrt bleeding-edge/backfire, Asus WL500GP V2).

To set up access point from the installed wlan card, you need the hostapd
daemon installed. Verify you have it:
hostapd
make simple config file to check if it works:
save to /etc/hostapd.conf:

#change wlan0 to your wireless device
interface=wlan0
driver=nl80211
ssid=MyOpenWrtTest
channel=1

Then run the daemon:

hostapd -ddBK /etc/hostapd.conf

and read the messages.
Now you can manually bridge the wlan0 card with OpenWRT`s default ethernet bridge (br-lan):

brctl addif br-lan wlan0

Try to connect – it should work

did it work on wl500gpv2 2.6 kernel with hostapd
can u post some e.g ifconfig or dmesg on boot up
and did the drivers uses b43 stable

comment:14 Changed 7 years ago by nbd

  • Resolution set to fixed
  • Status changed from reopened to closed
  • Version set to Trunk

Please don't abuse the bug tracker for support questions. Reopening bugs for no reason is bad, hmmkay?

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.