wireless not working on 13" Macbook Pro

Getting your soundcard to work, using Debian on non-i386 hardware, etc

wireless not working on 13" Macbook Pro

Postby robertb » 2012-04-01 21:48

I run Linux Mint Gnome 64-bit 201109 (LMDE). I was unable to get the wireless working on the vanilla 2.6 kernel. After reading a bit, it looks like even the 3.0 kernel wouldn't work.

So, I downloaded the latest 3.2 kernel, configured it, and compiled it. See below for the details. Note that I enabled BCMA and turned on b43 as a module.

Note (see below) that I downloaded the firmware from Broadcom. I also included below a detailed list of all the firmware files, in case there is some obvious differences with someone's working configuration (e.g., the file sizes may differ).

Below, during kernel boot, you can see that the driver gets loaded, but gets the dreaded "b43-phy0 ERROR: FOUND UNSUPPORTED PHY".

Below is also a pared-down version of the output of "lshw". As you can see, it's using the "bcma-pci-bridge" driver. That's probably right because the b43 is attempting to be loaded.

Anybody have any idea what I could be doing wrong? I don't see any errors from b43 about missing firmware files, but that doesn't necessarily mean it's picking up the right ones.

Thanks for any help!

Downloading and compiling
Code: Select all
Linux springtime 3.2.13 #2 SMP Tue Mar 27 20:08:14 PDT 2012 x86_64 GNU/Linux
 # aptitude purge firmware-b43-installer b43-fwcutter
 # aptitude install build-essential
 # cd /usr/src
 # wget http://bu3sch.de/b43/fwcutter/b43-fwcutter-015.tar.bz2
 # tar xjf b43-fwcutter-015.tar.bz2
 # cd b43-fwcutter-015/
 # make
 # make install
 # cd ..
 # wget http://www.lwfinger.com/b43-firmware/broadcom-wl-5.100.138.tar.bz2
 # ls -lsdt broadcom-wl-5.100.138.tar.bz2
 # export FIRMWARE_INSTALL_DIR="/lib/firmware"
 # tar xjf broadcom-wl-5.100.138.tar.bz2
 # b43-fwcutter -w "$FIRMWARE_INSTALL_DIR" broadcom-wl-5.100.138/linux/wl_apsta.o
 # reboot
 # cd /usr/src
 # wget http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.2.13.tar.bz2
 # tar xvjf linux-3.2.13.tar.bz2
 # cd linux-3.2.13/
 # make-kpkg --initrd kernel_image
 # aptitude install ncurses-devel
 # aptitude install ncurses-dev
 # make menuconfig
 # cd /usr/src/linux-3.2.13/
 # make-kpkg --initrd kernel_image
 # dpkg -i ../linux-image-3.2.13_3.2.13-10.00.Custom_amd64.deb
 # reboot
Boot log
Code: Select all
[    0.000000] Linux version 3.2.13 (root@springtime) (gcc version 4.6.1 (Debian 4.6.1-4) ) #2 SMP Tue Mar 27 20:08:14 PDT 2012
[    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-3.2.13 root=/dev/sda4 ro quiet
[    0.000000] DMI 2.4 present.
[    0.000000] DMI: Apple Inc. MacBookPro8,1/Mac-94245B3640C91C81, BIOS    MBP81.88Z.0047.B22.1109281426 09/28/11
[    0.000000] No AGP bridge found
[    4.713163] bcma-pci-bridge 0000:03:00.0: Signaling PME through PCIe PME interrupt
[   11.304666] bcma: Switched to core: 0x812
[   11.305076] b43-phy0 ERROR: FOUND UNSUPPORTED PHY (Analog 9, Type 7, Revision 1)
[   11.305151] b43: probe of bcma0:0 failed with error -95
[   11.305172] Broadcom 43xx driver loaded [ Features: PMNLS ]
[   11.474189] usb 1-1.1.2: USB disconnect, device number 7
lshw output
Code: Select all
03:00.0 Network controller [0280]: Broadcom Corporation BCM4331 802.11a/b/g/n [14e4:4331] (rev 02)
   Subsystem: Apple Computer Inc. AirPort Extreme [106b:00d6]
   Flags: bus master, fast devsel, latency 0, IRQ 17
   Memory at a0600000 (64-bit, non-prefetchable) [size=16K]
   Capabilities: <access denied>
   Kernel driver in use: bcma-pci-bridge
firmware files
Code: Select all
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/a0g0bsinitvals5.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/a0g0bsinitvals9.fw
-rw-r--r-- 1 root root  1836 Mar 26 23:33 /lib/firmware/b43/a0g0initvals5.fw
-rw-r--r-- 1 root root  1992 Mar 26 23:33 /lib/firmware/b43/a0g0initvals9.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/a0g1bsinitvals13.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/a0g1bsinitvals5.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/a0g1bsinitvals9.fw
-rw-r--r-- 1 root root  2126 Mar 26 23:33 /lib/firmware/b43/a0g1initvals13.fw
-rw-r--r-- 1 root root  1836 Mar 26 23:33 /lib/firmware/b43/a0g1initvals5.fw
-rw-r--r-- 1 root root  1992 Mar 26 23:33 /lib/firmware/b43/a0g1initvals9.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/b0g0bsinitvals13.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/b0g0bsinitvals5.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/b0g0bsinitvals9.fw
-rw-r--r-- 1 root root  2126 Mar 26 23:33 /lib/firmware/b43/b0g0initvals13.fw
-rw-r--r-- 1 root root  1836 Mar 26 23:33 /lib/firmware/b43/b0g0initvals5.fw
-rw-r--r-- 1 root root  1992 Mar 26 23:33 /lib/firmware/b43/b0g0initvals9.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/ht0bsinitvals26.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/ht0bsinitvals29.fw
-rw-r--r-- 1 root root  2678 Mar 26 23:33 /lib/firmware/b43/ht0initvals26.fw
-rw-r--r-- 1 root root  2720 Mar 26 23:33 /lib/firmware/b43/ht0initvals29.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/lcn0bsinitvals24.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/lcn0bsinitvals25.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/lcn0bsinitvals26.fw
-rw-r--r-- 1 root root  2976 Mar 26 23:33 /lib/firmware/b43/lcn0initvals24.fw
-rw-r--r-- 1 root root  2958 Mar 26 23:33 /lib/firmware/b43/lcn0initvals25.fw
-rw-r--r-- 1 root root  2678 Mar 26 23:33 /lib/firmware/b43/lcn0initvals26.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/lcn1bsinitvals24.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/lcn1bsinitvals25.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/lcn1bsinitvals26.fw
-rw-r--r-- 1 root root  2976 Mar 26 23:33 /lib/firmware/b43/lcn1initvals24.fw
-rw-r--r-- 1 root root  2958 Mar 26 23:33 /lib/firmware/b43/lcn1initvals25.fw
-rw-r--r-- 1 root root  2678 Mar 26 23:33 /lib/firmware/b43/lcn1initvals26.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/lcn2bsinitvals24.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/lcn2bsinitvals25.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/lcn2bsinitvals26.fw
-rw-r--r-- 1 root root  2976 Mar 26 23:33 /lib/firmware/b43/lcn2initvals24.fw
-rw-r--r-- 1 root root  2958 Mar 26 23:33 /lib/firmware/b43/lcn2initvals25.fw
-rw-r--r-- 1 root root  2678 Mar 26 23:33 /lib/firmware/b43/lcn2initvals26.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/lcn400bsinitvals33.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/lcn400initvals33.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/lp0bsinitvals13.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/lp0bsinitvals14.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/lp0bsinitvals15.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/lp0bsinitvals16.fw
-rw-r--r-- 1 root root  3664 Mar 26 23:33 /lib/firmware/b43/lp0initvals13.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/lp0initvals14.fw
-rw-r--r-- 1 root root  2598 Mar 26 23:33 /lib/firmware/b43/lp0initvals15.fw
-rw-r--r-- 1 root root  2738 Mar 26 23:33 /lib/firmware/b43/lp0initvals16.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/lp1bsinitvals20.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/lp1bsinitvals22.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/lp1initvals20.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/lp1initvals22.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/lp2bsinitvals19.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/lp2initvals19.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/n0absinitvals11.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/n0bsinitvals11.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/n0bsinitvals16.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/n0bsinitvals17.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/n0bsinitvals22.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/n0bsinitvals24.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/n0bsinitvals25.fw
-rw-r--r-- 1 root root  2152 Mar 26 23:33 /lib/firmware/b43/n0initvals11.fw
-rw-r--r-- 1 root root  2738 Mar 26 23:33 /lib/firmware/b43/n0initvals16.fw
-rw-r--r-- 1 root root  2408 Mar 26 23:33 /lib/firmware/b43/n0initvals17.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/n0initvals22.fw
-rw-r--r-- 1 root root  2976 Mar 26 23:33 /lib/firmware/b43/n0initvals24.fw
-rw-r--r-- 1 root root  2958 Mar 26 23:33 /lib/firmware/b43/n0initvals25.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/n16bsinitvals30.fw
-rw-r--r-- 1 root root  2634 Mar 26 23:33 /lib/firmware/b43/n16initvals30.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/n18bsinitvals32.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/n18initvals32.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/n1bsinitvals20.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/n1initvals20.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/n2bsinitvals19.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/n2initvals19.fw
-rw-r--r-- 1 root root  1320 Mar 26 23:33 /lib/firmware/b43/pcm5.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/sslpn0bsinitvals16.fw
-rw-r--r-- 1 root root  2738 Mar 26 23:33 /lib/firmware/b43/sslpn0initvals16.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/sslpn1bsinitvals20.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/sslpn1bsinitvals27.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/sslpn1initvals20.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/sslpn1initvals27.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/sslpn2bsinitvals19.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/sslpn2initvals19.fw
-rw-r--r-- 1 root root   178 Mar 26 23:33 /lib/firmware/b43/sslpn3bsinitvals21.fw
-rw-r--r-- 1 root root  2552 Mar 26 23:33 /lib/firmware/b43/sslpn3initvals21.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/sslpn4bsinitvals22.fw
-rw-r--r-- 1 root root     8 Mar 26 23:33 /lib/firmware/b43/sslpn4initvals22.fw
-rw-r--r-- 1 root root 31176 Mar 26 23:33 /lib/firmware/b43/ucode11.fw
-rw-r--r-- 1 root root 28216 Mar 26 23:33 /lib/firmware/b43/ucode13.fw
-rw-r--r-- 1 root root    12 Mar 26 23:33 /lib/firmware/b43/ucode14.fw
-rw-r--r-- 1 root root 35512 Mar 26 23:33 /lib/firmware/b43/ucode15.fw
-rw-r--r-- 1 root root 33712 Mar 26 23:33 /lib/firmware/b43/ucode16_lp.fw
-rw-r--r-- 1 root root 39296 Mar 26 23:33 /lib/firmware/b43/ucode16_mimo.fw
-rw-r--r-- 1 root root 34448 Mar 26 23:33 /lib/firmware/b43/ucode16_sslpn.fw
-rw-r--r-- 1 root root 28589 Mar 26 23:33 /lib/firmware/b43/ucode16_sslpn_nobt.fw
-rw-r--r-- 1 root root 36216 Mar 26 23:33 /lib/firmware/b43/ucode17_mimo.fw
-rw-r--r-- 1 root root     9 Mar 26 23:33 /lib/firmware/b43/ucode19_sslpn.fw
-rw-r--r-- 1 root root     9 Mar 26 23:33 /lib/firmware/b43/ucode19_sslpn_nobt.fw
-rw-r--r-- 1 root root     9 Mar 26 23:33 /lib/firmware/b43/ucode20_sslpn.fw
-rw-r--r-- 1 root root     9 Mar 26 23:33 /lib/firmware/b43/ucode20_sslpn_nobt.fw
-rw-r--r-- 1 root root 34735 Mar 26 23:33 /lib/firmware/b43/ucode21_sslpn.fw
-rw-r--r-- 1 root root 28988 Mar 26 23:33 /lib/firmware/b43/ucode21_sslpn_nobt.fw
-rw-r--r-- 1 root root    12 Mar 26 23:33 /lib/firmware/b43/ucode22_mimo.fw
-rw-r--r-- 1 root root     9 Mar 26 23:33 /lib/firmware/b43/ucode22_sslpn.fw
-rw-r--r-- 1 root root 35267 Mar 26 23:33 /lib/firmware/b43/ucode24_lcn.fw
-rw-r--r-- 1 root root 39760 Mar 26 23:33 /lib/firmware/b43/ucode24_mimo.fw
-rw-r--r-- 1 root root 34847 Mar 26 23:33 /lib/firmware/b43/ucode25_lcn.fw
-rw-r--r-- 1 root root 39128 Mar 26 23:33 /lib/firmware/b43/ucode25_mimo.fw
-rw-r--r-- 1 root root 39728 Mar 26 23:33 /lib/firmware/b43/ucode26_mimo.fw
-rw-r--r-- 1 root root     9 Mar 26 23:33 /lib/firmware/b43/ucode27_sslpn.fw
-rw-r--r-- 1 root root 39760 Mar 26 23:33 /lib/firmware/b43/ucode29_mimo.fw
-rw-r--r-- 1 root root 39632 Mar 26 23:33 /lib/firmware/b43/ucode30_mimo.fw
-rw-r--r-- 1 root root    12 Mar 26 23:33 /lib/firmware/b43/ucode32_mimo.fw
-rw-r--r-- 1 root root     9 Mar 26 23:33 /lib/firmware/b43/ucode33_lcn40.fw
-rw-r--r-- 1 root root 21328 Mar 26 23:33 /lib/firmware/b43/ucode5.fw
-rw-r--r-- 1 root root 23256 Mar 26 23:33 /lib/firmware/b43/ucode9.fw
robertb
 
Posts: 17
Joined: 2007-01-05 19:57

Re: wireless not working on 13" Macbook Pro

Postby emariz » 2012-04-02 01:57

Read http://wiki.debian.org/bcm43xx and http://wireless.kernel.org/en/users/Drivers/b43 According to the second link, that device is supported by kernels newer than 3.2-rc3+. The current version in Backports is 3.2.12-1~bpo60+1.
emariz
 
Posts: 2638
Joined: 2008-10-17 07:59

Re: wireless not working on 13" Macbook Pro

Postby robertb » 2012-04-05 03:20

emariz wrote:Read http://wiki.debian.org/bcm43xx and http://wireless.kernel.org/en/users/Drivers/b43 According to the second link, that device is supported by kernels newer than 3.2-rc3+. The current version in Backports is 3.2.12-1~bpo60+1.
The version I downloaded and compiled was 3.2.13 (see the first post on this thread). I assume that that is later than 3.2-rc3+ .

Are you suggesting that I may have better luck with 3.2.12-1 for getting this device working? I assume that I would use the same /lib/firmware/b43 that I originally downloaded, regardless.

Thanks.
robertb
 
Posts: 17
Joined: 2007-01-05 19:57

[SOLVED] wireless not working on 13" Macbook Pro

Postby robertb » 2012-04-09 16:00

Never mind -- things are now working with the Linux kernel 3.2.0 that was installed with the latest upgrade of Linux Mint. (Note that I still have the firmware files that I installed by hand.)
robertb
 
Posts: 17
Joined: 2007-01-05 19:57


Return to Hardware

Who is online

Users browsing this forum: khosrow and 10 guests

fashionable