# [SOLVED] BCM4322, wicd and no wlan0

## triki

Hi, I've got a BCM4322 802.11a/b/g/n wireless on a Dell vostro 1320 , it worked fine with broadcom-sta and wicd untill two or three months ago than I made 1 or 2 kernel update but I didn't used the wireless in this period. Now I need wireless again but it doesn't work. 

wicd scan (very fast) for wireless but didn't find anything (I know for sure there' one wireless ready and working)

this is my emerge --info:

```
Portage 2.1.11.31 (default/linux/amd64/10.0/desktop, gcc-4.5.4, glibc-2.15-r3, 3.6.11-gentoo-v2.3 x86_64)

=================================================================

System uname: Linux-3.6.11-gentoo-v2.3-x86_64-Intel-R-_Core-TM-2_Duo_CPU_P8600_@_2.40GHz-with-gentoo-2.1

Timestamp of tree: Mon, 07 Jan 2013 10:00:01 +0000

ld GNU ld (GNU Binutils) 2.22

ccache version 3.1.8 [enabled]

app-shells/bash:          4.2_p37

dev-java/java-config:     2.1.11-r3

dev-lang/python:          2.7.3-r2, 3.2.3

dev-util/ccache:          3.1.8

dev-util/cmake:           2.8.9

dev-util/pkgconfig:       0.27.1

sys-apps/baselayout:      2.1-r1

sys-apps/openrc:          0.11.8

sys-apps/sandbox:         2.5

sys-devel/autoconf:       2.13, 2.69

sys-devel/automake:       1.11.6

sys-devel/binutils:       2.22-r1

sys-devel/gcc:            4.5.4

sys-devel/gcc-config:     1.7.3

sys-devel/libtool:        2.4-r1

sys-devel/make:           3.82-r4

sys-kernel/linux-headers: 3.6 (virtual/os-headers)

sys-libs/glibc:           2.15-r3

Repositories: gentoo

ACCEPT_KEYWORDS="amd64"

ACCEPT_LICENSE="* -@EULA Broadcom dlj-1.1 skype-4.0.0.7-copyright skype-eula AdobeFlash-10 AdobeFlash-10.1 AdobeFlash-10.3 Oracle-BCLA-JavaSE"

CBUILD="x86_64-pc-linux-gnu"

CFLAGS="-O2 -pipe -march=nocona -fomit-frame-pointer"

CHOST="x86_64-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"

CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"

CXXFLAGS="-O2 -pipe -march=nocona -fomit-frame-pointer"

DISTDIR="/usr/portage/distfiles"

FCFLAGS="-O2 -pipe"

FEATURES="assume-digests binpkg-logs ccache config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"

FFLAGS="-O2 -pipe"

GENTOO_MIRRORS="http://distfiles.gentoo.org"

LANG="it_IT@euro"

LC_ALL="it_IT.UTF-8"

LDFLAGS="-Wl,-O1 -Wl,--as-needed"

MAKEOPTS="-j3"

PKGDIR="/usr/portage/packages"

PORTAGE_CONFIGROOT="/"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

PORTDIR_OVERLAY=""

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

USE="X a52 aac acl acpi alsa amd64 apm berkdb bluetooth branding bzip2 cairo cdda cdr cli consolekit cracklib crypt cups cxx dbus dri dts dvd dvdr emboss encode exif fam firefox flac fortran gdbm gif gpm gtk iconv ipv6 jpeg lcms ldap libnotify lm_sensors mad mmx mng modules mp3 mp4 mpeg mudflap multilib ncurses nls nptl nvidia ogg opengl openmp pam pango pcre pdf png policykit ppds pppd qt3support readline sdl session spell sse sse2 ssl ssse3 startup-notification svg tcpd tiff truetype udev udisks unicode upower usb vorbis wxwidgets x264 xcb xml xv xvid zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="it it_IT" PHP_TARGETS="php5-3" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"

Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
```

extract from lspci -v:

```
08:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03)

   Subsystem: Dell Device 02bb

   Flags: bus master, fast devsel, latency 0, IRQ 17

   I/O ports at 4000 [size=256]

   Memory at fc004000 (64-bit, prefetchable) [size=4K]

   Memory at fc000000 (64-bit, prefetchable) [size=16K]

   [virtual] Expansion ROM at fc020000 [disabled] [size=128K]

   Capabilities: [40] Power Management version 3

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

   Capabilities: [70] Express Endpoint, MSI 01

   Capabilities: [ac] MSI-X: Enable- Count=4 Masked-

   Capabilities: [cc] Vital Product Data

   Capabilities: [100] Advanced Error Reporting

   Capabilities: [140] Virtual Channel

   Capabilities: [160] Device Serial Number 5b-00-00-00-68-4c-e0-00

   Kernel driver in use: r8169

0e:00.0 Network controller: Broadcom Corporation BCM4322 802.11a/b/g/n Wireless LAN Controller (rev 01)

   Subsystem: Dell Wireless 1510 Wireless-N WLAN Mini-Card

   Flags: bus master, fast devsel, latency 0, IRQ 18

   Memory at f6000000 (64-bit, non-prefetchable) [size=16K]

   Capabilities: [40] Power Management version 3

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

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

   Capabilities: [d0] Express Endpoint, MSI 00

   Capabilities: [100] Advanced Error Reporting

   Capabilities: [13c] Virtual Channel

   Capabilities: [160] Device Serial Number 7c-40-e5-ff-ff-77-90-4c

   Capabilities: [16c] Power Budgeting <?>

   Kernel driver in use: wl

   Kernel modules: wl

```

ifconfig -a (now I'm using an internet key to connect):

```
eth0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500

        ether 00:24:e8:fa:62:75  txqueuelen 1000  (Ethernet)

        RX packets 0  bytes 0 (0.0 B)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 0  bytes 0 (0.0 B)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

        ether 90:4c:e5:77:7c:40  txqueuelen 1000  (Ethernet)

        RX packets 0  bytes 0 (0.0 B)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 0  bytes 0 (0.0 B)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

        device interrupt 18  

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 16436

        inet 127.0.0.1  netmask 255.0.0.0

        loop  txqueuelen 0  (Local Loopback)

        RX packets 1952  bytes 154856 (151.2 KiB)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 1952  bytes 154856 (151.2 KiB)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ppp0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1500

        inet 2.194.20.208  netmask 255.255.255.255  destination 10.64.64.64

        ppp  txqueuelen 3  (Point-to-Point Protocol)

        RX packets 3603  bytes 2044105 (1.9 MiB)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 3570  bytes 487991 (476.5 KiB)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

```

iwconfig

```
ppp0      no wireless extensions.

eth0      no wireless extensions.

eth1      no wireless extensions.

lo        no wireless extensions.

```

Last edited by triki on Thu Jan 10, 2013 7:30 am; edited 1 time in total

----------

## wcg

This is not a solution, but it does provide insight into the problem:

http://pof.eslack.org/2012/05/23/why-broadcom-80211-linux-sta-driver-sucks-and-how-to-fix-it/

(Ubuntu patches, and the discussion refers to wext and cfg80211 as

alternatives, while on my system the kernel has cfg80211, mac80211,

*and* wext options enabled, and wpa_supplicant uses the "-Dwext" driver

without issues with different kinds of wifi hardware drivers enabled

in the kernel. So the idea that wext and cfg80211 are different ways

of doing the same thing is perhaps obsolete. They seem to function

more as complementary parts of wifi hardware management by

the kernel on newer kernels.)

----------

## Gusar

-Dwext only works with newer drivers because cfg80211 has a wext compatibility module (CONFIG_CFG80211_WEXT). But their approach to configuring the hardware is quite different: wext uses ioctl, cfg80211 uses netlink.

BCM4322 is supported by the b43 driver. That's a much better option than the closed-source wl driver.

----------

## wcg

A question: if I disable

```

CFG80211_WEXT

```

in the kernel, will the wpa_supplicant -Dwext driver cease to work

with mac80211 kernel wifi hardware drivers?

----------

## triki

With b43 is working! I followed this howto for kernel setup:

http://www.gentoo-wiki.info/B43

Thanks a lot!

----------

## Gusar

 *wcg wrote:*   

> A question: if I disable
> 
> ```
> 
> CFG80211_WEXT
> ...

 

Yes. You'll have to use -Dnl80211 instead.

----------

## wcg

 *Quote:*   

> Yes. You'll have to use -Dnl80211 instead.

 

Ok, thanks for the info (I didn't mean to hijack the thread,

but in the interests of clarity, ....)

----------

