# [solved] Linux 3.2 & bcm4331: still no go?

## avx

So, I thought I'd be a happy camper now that 3.2 is released and brings official support for bcm4331, but I'm not.

Downloaded and built gentoo-sources-3.2, enabled all options (all that I think I need for this), merged b43-fwcutter, whipped up an ebuild for b43-firmware-5.x (see here: https://bugs.gentoo.org/attachment.cgi?id=298007), which emerged fine and put files into /lib64/firmware/b43.

Rebooted, `modprobe b43`, `dmesg` gives 

```
Broadcom 43xx driver loaded [ Features: PNLS ]
```

, but iwconfig/wpa_supplicant still can't find an eth1/wlan0 and `lspci -k` shows no module in use.

Now I'm a little puzzled, have I missed something(long time no wlan, last was an ipw2200...)?

System is a Macbook 8,1 (13", early 2011), lscpi for the card is 

```
lspci  -s 03:00.0 -vv

03:00.0 Network controller: Broadcom Corporation BCM4331 802.11a/b/g/n (rev 02)

   Subsystem: Apple Computer Inc. AirPort Extreme

   Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-

   Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-

   Latency: 0, Cache Line Size: 256 bytes

   Interrupt: pin A routed to IRQ 11

   Region 0: Memory at a0600000 (64-bit, non-prefetchable) [size=16K]

   Capabilities: [40] Power Management version 3

      Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)

      Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=2 PME-

   Capabilities: [58] Vendor Specific Information: Len=78 <?>

   Capabilities: [48] MSI: Enable- Count=1/1 Maskable- 64bit+

      Address: 0000000000000000  Data: 0000

   Capabilities: [d0] Express (v1) Endpoint, MSI 00

      DevCap:   MaxPayload 128 bytes, PhantFunc 0, Latency L0s <4us, L1 unlimited

         ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset-

      DevCtl:   Report errors: Correctable- Non-Fatal- Fatal- Unsupported-

         RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-

         MaxPayload 128 bytes, MaxReadReq 512 bytes

      DevSta:   CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr+ TransPend-

      LnkCap:   Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Latency L0 <4us, L1 <64us

         ClockPM+ Surprise- LLActRep+ BwNot-

      LnkCtl:   ASPM L0s L1 Enabled; RCB 64 bytes Disabled- Retrain- CommClk+

         ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt-

      LnkSta:   Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive+ BWMgmt- ABWMgmt-

   Capabilities: [100 v1] Advanced Error Reporting

      UESta:   DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-

      UEMsk:   DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-

      UESvrt:   DLP+ SDES- TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-

      CESta:   RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+

      CEMsk:   RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+

      AERCap:   First Error Pointer: 14, GenCap+ CGenEn- ChkCap+ ChkEn-

   Capabilities: [13c v1] Virtual Channel

      Caps:   LPEVC=0 RefClk=100ns PATEntryBits=1

      Arb:   Fixed- WRR32- WRR64- WRR128-

      Ctrl:   ArbSelect=Fixed

      Status:   InProgress-

      VC0:   Caps:   PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-

         Arb:   Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-

         Ctrl:   Enable+ ID=0 ArbSelect=Fixed TC/VC=ff

         Status:   NegoPending- InProgress-

   Capabilities: [160 v1] Device Serial Number 26-94-47-ff-ff-0a-e0-f8

   Capabilities: [16c v1] Power Budgeting <?>
```

Kernel config is here: http://pastebin.ca/2099641

thanks.

----------

## Gusar

You're missing bcma support in your kernel.

----------

## avx

Thanks, your right.

But, before the module loaded without complaints - granted, it did nothing - but now I get 

```
modprobe b43

FATAL: Error inserting b43 (/lib/modules/3.2.0-gentoo/kernel/drivers/net/wireless/b43/b43.ko): Unknown symbol in module, or unknown parameter (see dmesg)
```

dmesg

```
...

b43: Unknown symbol bcma_core_disable (err 0)

b43: Unknown symbol bcma_core_pll_ctl (err 0)

b43: Unknown symbol bcma_driver_unregister (err 0)

b43: Unknown symbol bcma_core_enable (err 0)

b43: Unknown symbol bcma_core_is_enabled (err 0)

b43: Unknown symbol bcma_chipco_gpio_control (err 0)

b43: Unknown symbol __bcma_driver_register (err 0)

b43: Unknown symbol bcma_core_set_clockmode (err 0)

b43: Unknown symbol bcma_core_dma_translation (err 0)

b43: Unknown symbol bcma_core_pci_irq_ctl (err 0)

b43: Unknown symbol bcma_core_disable (err 0)

b43: Unknown symbol bcma_core_pll_ctl (err 0)

b43: Unknown symbol bcma_driver_unregister (err 0)

b43: Unknown symbol bcma_core_enable (err 0)

b43: Unknown symbol bcma_core_is_enabled (err 0)

b43: Unknown symbol bcma_chipco_gpio_control (err 0)

b43: Unknown symbol __bcma_driver_register (err 0)

b43: Unknown symbol bcma_core_set_clockmode (err 0)

b43: Unknown symbol bcma_core_dma_translation (err 0)

b43: Unknown symbol bcma_core_pci_irq_ctl (err 0)
```

----------

## Gusar

I'm just guessing here but... Start from scratch. Remove the modules, clean the kernel source, compile and install again.

----------

## avx

Ah, damn   :Twisted Evil: 

Built the kernel without mounting /boot again. Working now, thank you  :Smile: 

----------

## Gusar

 *avx wrote:*   

> Ah, damn  
> 
> Built the kernel without mounting /boot again. Working now, thank you 

 

If I had a dollar for every time someone makes this mistake...   :Very Happy: 

It seems the same thing is the issue in this thread: https://forums.gentoo.org/viewtopic-p-6920550.html#6920550

----------

## avx

Sweet   :Razz: 

Someone should add `mount /boot 2&>/dev/null` to the install-target...

----------

