# [SOLVED] Broadcom B43* Kernel conf problem

## sidaphextwin

Hello,

I'm trying to install the proprietary wl driver because my wireless card is not compatible with the B43 drivers.

When I run:

emerge-av net-wireless/broadcom-sta

I get this message:

* CONFIG_SSB: should not be set. But it is.

In the kernel configuration I can see this:

{M} Sonics Silicon Backplane support

   │ │ - * - Support for SSB on PCI-bus host

   │ │ [] Support for SSB on PCMCIA-bus host

   │ │ [] Support for SSB on SDIO-bus host

   │ │ [] SSB debugging

   │ │ - * - SSB PCI core driver

That presumably is what I have to disable. The fact is that I can not turn it off, I can only add Sonics Silicon Backplane support as a module or enabled, but not disable it ...

Any idea?Last edited by sidaphextwin on Sat Jun 15, 2013 11:06 pm; edited 1 time in total

----------

## DONAHUE

if you look at  the help for  Sonics Silicon Backplane support  in menuconfig, you will see something like:  *Quote:*   

> Selected by: B44 [=n] && NETDEVICES [=y] && ETHERNET [=y] && NET_VENDOR_BROADCOM [=y] && SSB_POSSIBLE [=y] && HAS_DMA [=y] ||  b43 [=n] && NETDEVICES [=y] && WLAN [=y] && SSB_POSSIBLE [=y] && MAC80211 [=m] && HAS_DMA [=y] ||  B43LEGACY [=n] && NETDEVICES [=y] && WLAN [=y] && SSB_POSSIBLE [=y] && MAC80211 [=m] && HAS_DMA [=y]

  however in one or more places, where I have [=n] you will have [=m] or [=y] . this or these item(s) being enabled forces ssb to be enabled. Hunt them down and disable them. I have had occasions where enabling or disabling an automatic choice required exiting menuconfig saving and restarting menuconfig before I could see the change.

----------

## Mac Tzu

Hey Guys, 

So Sid, 

I understand your issue I'm using gentoo-sources 3.9.3 and I couldn't find how to turn the option off.  I should noted that my .config didn't have ssb (m) everything I could see was switched off in menuconfig.  I even tried manually editing the .config (which doesn't work because the .config is refreshed when u call make) 

My solution was to blacklist the module in .etc/modprode.d/blacklist.conf with the following :

```

blacklist SSB

```

let me know how you go or if there better solution

----------

## sidaphextwin

Hello,

finally thanks to the commentary of DONAHUE I could disable SSB  from the kernel configuration. I disabled B44 support to remove Sonics Silicon Backplane.

Thanks for your help Mac Tzu.

Now my kernel configuration is correct but I still have problems compiling broadcom-sta-5.100.82.112-r2.

Here I post the output of emerge:

 *Quote:*   

> >>> Emerging (1 of 1) net-wireless/broadcom-sta-5.100.82.112-r2
> 
>  * hybrid-portsrc_x86_32-v5_100_82_112.tar.gz SHA256 size  ...             [ ok ]
> 
>  * Determining the location of the kernel source code
> ...

 

Any idea?

Thanks!

----------

## DONAHUE

I was able to duplicate the compile problem you see.

Using a newer version of broadcom-sta allowed compilation to succeed.

add net-wireless/broadcom-sta ~amd64 to /etc/portage/package.keywords and try emerge broadcom-sta again

I don't have your NIC so can't test whether it works, but the new version at least will compile against a 3.9.5 kernel and hopefully a 3.8.13

----------

## sidaphextwin

Compiled without error and my wireless card works perfectly.

Thanks DONAHUE!

----------

## tomas.almeida

Hi All,

I followed DONAHUE's instruction, but I still facing the same problem. Could you please help me on this case.

Some further information

```
cat /etc/portage/package.keywords

net-wireless/broadcom-sta ~amd64
```

```
>>> Emerging (2 of 2) net-wireless/broadcom-sta-5.100.82.112-r2

 * hybrid-portsrc_x86_64-v5_100_82_112.tar.gz SHA256 SHA512 WHIRLPOOL size ;-) ...                           [ ok ]

 * Determining the location of the kernel source code

 * Found kernel source directory:

 *     /usr/src/linux

 * Found kernel object directory:

 *     /lib/modules/3.8.13-gentoo/build

 * Found sources for kernel version:

 *     3.8.13-gentoo

 * Checking for suitable kernel configuration options...                                                     [ ok ]

>>> Unpacking source...

>>> Unpacking hybrid-portsrc_x86_64-v5_100_82_112.tar.gz to /var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work

>>> Source unpacked in /var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work

>>> Preparing source in /var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work ...

 * Applying broadcom-sta-5.10.91.9-license.patch ...                                                         [ ok ]

 * Applying broadcom-sta-5.100.82.38-gcc.patch ...                                                           [ ok ]

 * Applying broadcom-sta-5.100.82.111-linux-3.0.patch ...                                                    [ ok ]

 * Applying broadcom-sta-5.100.82.112-linux-2.6.39.patch ...                                                 [ ok ]

 * Applying broadcom-sta-5.100.82.112-linux-3.2.patch ...                                                    [ ok ]

>>> Source prepared.

>>> Configuring source in /var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work ...

>>> Source configured.

>>> Compiling source in /var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work ...

ln: failed to create symbolic link 'Module.symvers': File exists

 * Preparing wl module

make -j5 HOSTCC=x86_64-pc-linux-gnu-gcc CROSS_COMPILE=x86_64-pc-linux-gnu- 'LDFLAGS=-m elf_x86_64' -C /usr/src/linux M=/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work wl.ko

make: Entering directory `/usr/src/linux-3.8.13-gentoo'

CFG80211 API is prefered for this kernel version

Using CFG80211 API

  CC [M]  /var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/shared/linux_osl.o

  CC [M]  /var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/wl/sys/wl_linux.o

  CC [M]  /var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/wl/sys/wl_iw.o

  CC [M]  /var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/wl/sys/wl_cfg80211.o

/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/wl/sys/wl_cfg80211.c: In function 'wl_cfg80211_join_ibss':

/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/wl/sys/wl_cfg80211.c:745:26: error: 'struct cfg80211_ibss_params' has no member named 'channel'

/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/wl/sys/wl_linux.c:1736:1: warning: 'wl_set_multicast_list' defined but not used [-Wunused-function]

/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/wl/sys/wl_cfg80211.c: At top level:

/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/wl/sys/wl_cfg80211.c:1644:2: warning: initialization from incompatible pointer type [enabled by default]

/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/wl/sys/wl_cfg80211.c:1644:2: warning: (near initialization for 'wl_cfg80211_ops.scan') [enabled by default]

/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/wl/sys/wl_cfg80211.c:1649:2: warning: initialization from incompatible pointer type [enabled by default]

/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/wl/sys/wl_cfg80211.c:1649:2: warning: (near initialization for 'wl_cfg80211_ops.set_tx_power') [enabled by default]

/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/wl/sys/wl_cfg80211.c:1650:2: warning: initialization from incompatible pointer type [enabled by default]

/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/wl/sys/wl_cfg80211.c:1650:2: warning: (near initialization for 'wl_cfg80211_ops.get_tx_power') [enabled by default]

/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/wl/sys/wl_cfg80211.c: In function 'wl_update_bss_info':

/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/wl/sys/wl_cfg80211.c:2077:11: error: 'struct cfg80211_bss' has no member named 'information_elements'

/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/wl/sys/wl_cfg80211.c:2078:15: error: 'struct cfg80211_bss' has no member named 'len_information_elements'

make[1]: *** [/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work/src/wl/sys/wl_cfg80211.o] Error 1

make[1]: *** Waiting for unfinished jobs....

make: *** [wl.ko] Error 2

make: Leaving directory `/usr/src/linux-3.8.13-gentoo'

 * ERROR: net-wireless/broadcom-sta-5.100.82.112-r2 failed (compile phase):

 *   emake failed

 *

 * If you need support, post the output of `emerge --info '=net-wireless/broadcom-sta-5.100.82.112-r2'`,

 * the complete build log and the output of `emerge -pqv '=net-wireless/broadcom-sta-5.100.82.112-r2'`.

 * The complete build log is located at '/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/temp/environment'.

 * Working directory: '/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work'

 * S: '/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work'

>>> Failed to emerge net-wireless/broadcom-sta-5.100.82.112-r2, Log file:

>>>  '/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/temp/build.log'

 * Messages for package net-wireless/broadcom-sta-5.100.82.112-r2:

 * ERROR: net-wireless/broadcom-sta-5.100.82.112-r2 failed (compile phase):

 *   emake failed

 *

 * If you need support, post the output of `emerge --info '=net-wireless/broadcom-sta-5.100.82.112-r2'`,

 * the complete build log and the output of `emerge -pqv '=net-wireless/broadcom-sta-5.100.82.112-r2'`.

 * The complete build log is located at '/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/temp/environment'.

 * Working directory: '/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work'

 * S: '/var/tmp/portage/net-wireless/broadcom-sta-5.100.82.112-r2/work'

```

I have a Dell Vostro 3500. 

Thank you so much.

Tomás

----------

## DONAHUE

 *Quote:*   

> emerge -s broadcom-sta
> 
> Searching...    
> 
> [ Results for search key : broadcom-sta ]
> ...

  So you want  net-wireless/broadcom-sta- 6.30.223.30-r1 but you are getting  net-wireless/broadcom-sta- 5.100.82.112-r2 which means there is a problem with /etc/portage/package.keywords 

net-wireless/broadcom-sta ~amd64 . Your portage data may be out of date. Try 

```
emerge --sync

emerge =net-wireless/broadcom-sta- 6.30.223.30-r1
```

 If  emerge fails please post every word of the response..

----------

## tomas.almeida

Hi DONAHUE,

Thank you for your quick reply... I did the sync and it worked...

```

emerge -s broadcom-sta

Searching...

[ Results for search key : broadcom-sta ]

[ Applications found : 1 ]

*  net-wireless/broadcom-sta

      Latest version available: 6.30.223.30-r1

      Latest version installed: 6.30.223.30-r1

      Size of files: 1,737 kB

      Homepage:      https://launchpad.net/ubuntu/+source/bcmwl http://www.broadcom.com/support/802.11/linux_sta.php

      Description:   Broadcom's IEEE 802.11a/b/g/n hybrid Linux device driver.

      License:       Broadcom

```

Should I update my mirrors? I have this make.conf

```
 

cat /etc/portage/make.conf

# These settings were set by the catalyst build script that automatically

# built this stage.

# Please consult /usr/share/portage/config/make.conf.example for a more

# detailed example.

CFLAGS="-O2 -pipe -march=native"

CXXFLAGS="${CFLAGS}"

# WARNING: Changing your CHOST is not something that should be done lightly.

# Please consult http://www.gentoo.org/doc/en/change-chost.xml before changing.

CHOST="x86_64-pc-linux-gnu"

# These are the USE flags that were used in addition to what is provided by the

# profile used for building.

USE="bindist bzip2 alsa dvd dvdr cdr gif jpeg mp3 mp4 mpeg ogg opengl pdf png qt3support qt4 sound truetype usb X x264 xml xv xvid"

MAKEOPTS="-j5"

GENTOO_MIRRORS="rsync://gentoo.c3sl.ufpr.br/gentoo/ http://gentoo.c3sl.ufpr.br/ ftp://gentoo.c3sl.ufpr.br/gentoo/ http://www.las.ic.unicamp.br/pub/gentoo/ ftp://ftp.las.ic.unicamp.br/pub/gentoo/ http://ftp.rnl.ist.utl.pt/pub/gentoo/gentoo-distfiles/ rsync://ftp.rnl.ist.utl.pt/pub/gentoo/gentoo-distfiles/ ftp://ftp.rnl.ist.utl.pt/pub/gentoo/gentoo-distfiles/ http://gentoo-euetib.upc.es/mirror/gentoo/"

SYNC="rsync://rsync1.br.gentoo.org/gentoo-portage"

```

Thanks a bunch!

----------

## DONAHUE

I don't use the GENTOO_MIRRORS=" at all and I use SYNC=" only to point at another machine on my lan. As best I can tell gentoo has an excellent load sharing setup without my help.  :Smile: 

----------

