On Mon, Jun 04, 2007 at 09:17:12AM -0400, John W. Linville wrote: > First, the issue that lots of people are having...if you are getting > the "YOUR FIRMWARE IS TOO OLD" issue, I recommend that you follow > this procedure: > > # you need to be root > wget http://downloads.openwrt.org/sources/broadcom-wl-4.80.53.0.tar.bz2 > tar -xjvf broadcom-wl-4.80.53.0.tar.bz2 > bcm43xx-fwcutter -w /lib/firmware/ broadcom-wl-4.80.53.0/kmod/wl_apsta.o Also need to reboot or "modprobe -r bcm43xx-mac80211 ; modprobe bcm43xx-mac80211", FWIW... > That should fix things for most people. However, some people still > need/want to use the older driver even on devices that are (or should > be) supported by the newer driver. If you are in this situation, > I recommend this procedure: > > # save the file attached to this email as "bcm43xx-old-config" > # you need to be root > ./bcm43xx-old-config I now have an updated version of the bcm43xx-old-config script. Larry Finger (bcm43xx driver maintainer) and I collaborated on some minor fixes to correct problems that some have had, including the URL being too long for some versions of wget and detecting the wrong PCI ID for the wireless device on boxes that also have Broadcom ethernet hardware. This also gets the firmware from the openwrt.org site, which regrettably may ultimately prove more stable than some random URL from a hardware vendor... Updated script attached below. Again, please use this as a last resort only after trying the first block of commands above (before "That should fix things..."). Hth! John P.S. If anyone is itching to work on some sort of 'wireless troubleshooting' script/tool that would check for properly installed firmware, suggest download sites for non-distributable firmware (ralink, broadcom, others?), etc then let me know... -- John W. Linville linville@xxxxxxxxxx
#!/bin/sh BCM43XX_V3_FW="http://downloads.openwrt.org/sources/wl_apsta-3.130.20.0.o" wget $BCM43XX_V3_FW bcm43xx-fwcutter -w /lib/firmware -p .v3 wl_apsta-3.130.20.0.o echo 'blacklist bcm43xx-mac80211' >> /etc/modprobe.d/blacklist echo 'options bcm43xx fwpostfix=.v3' >> /etc/modprobe.conf modprobe -r bcm43xx-mac80211 # remove the new driver echo 'modprobe bcm43xx' >> /etc/rc.local BCM43XX_PCI_ID=`lspci -n | awk '$2 ~ "^0280" && $3 ~ "^14e4:43" { print $3 }' | sed -e 's/:/ /'` echo 'echo "'$BCM43XX_PCI_ID'" > /sys/bus/pci/drivers/bcm43xx/new_id' \ >> /etc/rc.local /etc/rc.local