Broadcom BCM4306 Wireless Issues

Hello,

I’ve recently installed openSUSE 11.

I’m using KDE4 with a Broadcom BCM4306 PCI Wireless Card built into a Compaq Presario R4025.

I’ve downloaded the B43 firmware for the device and have installed successfully.

After installing the software and rebooting, the device came up correctly and powered on.

Unfortunately, I was unable to detect any wireless networks with KNetworkManager.

I used the KNetworkManager to specify the ESSID of my network and was able to connect without seeing the network on my scan.

Shortly after, I decided to go outside for a few minutes.

When I came back in, my computer had entered standby.

When I pulled the computer out of standby, the wireless stopped working.

The device is still powered and I can attempt to connect to networks, but the network never seems to connect.

The blue icon in my system tray will show that the computer is attempting to establish a connection, then wait between 30 - 45 seconds, then go back to the normal blue icon.

I can’t seem to figure out the problem.

I will post below with the specifics of my card.

-JWhee016

Wireless Card Specifics:

03:02.0 Network controller: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller (rev 03)

03:02.0 0280: 14e4:4320 (rev 03)

No errors in the log.

The results of iwconfig:

wlan0 IEEE 802.11g ESSID:""
Mode:Managed Frequency:2.447 GHz Access Point: Not-Associated
Tx-Power=27 dBm
Retry min limit:7 RTS thr:off Fragment thr=2352 B
Encryption key:off
Link Quality:0 Signal level:0 Noise level:0
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0

The results of the iwlist.scan:

wlan0 No scan results

JWhee016 wrote:
> Wireless Card Specifics:
>
> 03:02.0 Network controller: Broadcom Corporation BCM4306 802.11b/g
> Wireless LAN Controller (rev 03)
>
> 03:02.0 0280: 14e4:4320 (rev 03)

A number of the PCI versions of the BCM4306 have an SPROM programming
error that prevent the radio from working. To determine if yours is
one of them, please run the command ‘/sbin/lspci -nnv’ and post the
first two lines for buss 03:02.2. The second line contains the vendor
information, which is not usually important, but it is here.

Larry

03:02.0 Network controller [0280]: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller [14e4:4320] (rev 03)
Subsystem: Hewlett-Packard Company Device [103c:12f8]
Flags: bus master, fast devsel, latency 64, IRQ 21

JWhee016 wrote:
> 03:02.0 Network controller [0280]: Broadcom Corporation BCM4306
> 802.11b/g Wireless LAN Controller [14e4:4320] (rev 03)
> Subsystem: Hewlett-Packard Company Device [103c:12f8]
> Flags: bus master, fast devsel, latency 64, IRQ 21

Yours is not one we know about, although I did have an unconfirmed
report of problems with an HP card.

To fix it for you, we will need to correct the SPROM programming
error. The first step is to execute the following commands and post
the results:

SPROM=$(find /sys -name ssb_sprom)
echo $SPROM
sudo cat $SPROM

I will take that output, run it through the SPROM edit program and
return it to you as a file. For that, I will need your email address.
If you don’t mind publishing it on the forum, include it in the next
posting, otherwise send it to me in a PM.

Larry

frog-linux:~ # SPROM=$(find /sys -name ssb_sprom)
frog-linux:~ # echo $SPROM
/sys/devices/pci0000:00/0000:00:14.4/0000:03:02.0/ssb_sprom
frog-linux:~ # sudo cat $SPROM
01400000F8123C1020430080020002000010001800000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0000FFFFFFFFFFFFFFFFFFFFFFFFFFFF9000A84B88D5FFFFFFFFFFFFFFFFFFFFFFFFFFFF3130AA14C8FA9FFEFFFFFFFF4C00FFFFFFFFFFFF3E00493A02FF535510FFFFFFFFFF0204

I’ll PM you with my e-mail address.

Thank you.

To complete this thread, after the SPROM was rewritten with the Bluetooth Coexistence bit cleared in the low-order board flags, the card started working.

This particular fix is needed for the following cards that we know about:

BCM4306 cards with the following subsystem codes:
Dell - 1028:0003
HP - 103c:12f8
Linksys - 1737:0013, 1737:0014, 1737:0015
Motorola - 1057:7010

BCM4318 cards with the following subsystem codes:
Asus - 1043:100f

Larry

LwFinger , thank you for that information. It turns out that I also have the Dell 1028:0003 .

Is there an available program that I can use to fix my SPROM bit ?

Twellons wrote:
> LwFinger , thank you for that information. It turns out that I also
> have the Dell 1028:0003 .
>
> Is there an available program that I can use to fix my SPROM bit ?

Yes - You need to get the ssb-sprom tool from
http://linuxwireless.org/en/users/Drivers/b43.

Larry

Thanks Larry , I’ve been trying to respond and post the results of the Sprom display but Firefox is acting up on some sites. This being one of them.

Reading through that link , it makes me a bit nervous…

Any tips or advice ? lol

When attempting to use the GIT command , I cannot seem to get the tools to modify the Sprom.

All other instructions up to making the copy seemed to have been working. I may be too big a noob. I’m researching the GIT now.

Twellons wrote:
> When attempting to use the GIT command , I cannot seem to get the tools
> to modify the Sprom.
>
> All other instructions up to making the copy seemed to have been
> working. I may be too big a noob. I’m researching the GIT now.

As long as the git package is installed, you should be able to copy and paste
from the web site should just plain work. What error message do you get?

Larry

Well , I found the Git command and installed it , I was then able to copy from the site and was able to download the B43-tools to the desktop.

But when I attempted to run :

ssb-sprom -i ssb_sprom_copy -P

It tells me that ssb-sprom command not found.

Am I missing something ?

Twellons wrote:
> Well , I found the Git command and installed it , I was then able to
> copy from the site and was able to download the B43-tools to the
> desktop.
>
>
> But when I attempted to run :
>
>
> ssb-sprom -i ssb_sprom_copy -P
>
>
> It tells me that ssb-sprom command not found.
>
> Am I missing something ?

Yes. For security reasons, the current directory is NEVER included in the
path. For an executable in the current directory, you need to preface it with
“./”. You will find that ‘./ssb-sprom -i ssb_sprom_copy -P’ will do what you
want. This behavior is general and is not limited to openSUSE.

Larry

Ok , yes I thought that perhaps that was the case , but I had previously only encountered the ./ requirement with “Install” scripts. Or I would see the files listed as a script.

Thank you , I will give this another shot.

Twellons wrote:
> Ok , yes I thought that perhaps that was the case , but I had previously
> only encountered the ./ requirement with “Install” scripts. Or I would
> see the files listed as a script.

It is the same for any executable, whether script or program.

Larry

Larry , thanks again for the feedback , but I am not seeing the script in my download.

**linux-zspi:/home/twellons/Desktop/b43-tools # ls -l
total 28
drwxr-xr-x 2 root root 4096 2008-11-25 20:12 assembler
drwxr-xr-x 2 root root 4096 2008-11-25 20:12 debug
drwxr-xr-x 2 root root 4096 2008-11-25 20:12 disassembler
drwxr-xr-x 2 root root 4096 2008-11-25 20:12 fwcutter
drwxr-xr-x 8 root root 4096 2008-11-25 20:12 .git
-rw-r–r-- 1 root root 186 2008-11-25 20:12 .gitignore
drwxr-xr-x 2 root root 4096 2008-11-25 20:12 ssb_sprom
linux-zspi:/home/twellons/Desktop/b43-tools # cd ssb_sprom
linux-zspi:/home/twellons/Desktop/b43-tools/ssb_sprom # ls -l
total 84
-rw-r–r-- 1 root root 18011 2008-11-25 20:12 COPYING
-rw-r–r-- 1 root root 414 2008-11-25 20:12 Makefile
-rw-r–r-- 1 root root 4226 2008-11-25 20:12 README
-rw-r–r-- 1 root root 39335 2008-11-25 20:12 ssb_sprom.c
-rw-r–r-- 1 root root 3433 2008-11-25 20:12 ssb_sprom.h
-rw-r–r-- 1 root root 3668 2008-11-25 20:12 utils.c
-rw-r–r-- 1 root root 981 2008-11-25 20:12 utils.h
linux-zspi:/home/twellons/Desktop/b43-tools/ssb_sprom # ./ssb_sprom -i ssb_sprom_copy -P
bash: ./ssb_sprom: No such file or directory
linux-zspi:/home/twellons/Desktop/b43-tools/ssb_sprom # ./ssb-sprom -i ssb_sprom_copy -P
bash: ./ssb-sprom: No such file or directory
linux-zspi:/home/twellons/Desktop/b43-tools/ssb_sprom # **

So what else am I missing here ?

The Readme is identical to the website instructions, and I’m copying and pasting the commands and all of them have worked well up to this point.

Twellons wrote:
> Larry , thanks again for the feedback , but I am not seeing the script
> in my download.

You missed the “make” step. What you will be executing is the program ssb_sprom,
not a scrupt.

Larry

Actually , I attempted the Make step … And yes the Make program is installed , but I was recieving an error ( same error on the Fwcutter make )

Either way though , that issue with the wireless seemed to resolve itself. After following the rest of the steps up to that point.

So I guess on to the Make issue , and the Touch pad issue.

Thank you for the tips and advice !!

Twellons wrote:
> Actually , I attempted the Make step … And yes the Make program is
> installed , but I was recieving an error ( same error on the Fwcutter
> make )

Would it be too much to ask for you to actually list the error? With such little
information, how are we supposed to help you.