Broadcom BCM4312 for Lenovo S12 in openSUSE 11.4

Broadcom is the finicky mistress of Linux. Sometimes she’ll greet you with a smile with little effort and work perfectly, and sometimes she’ll spurn your most tried and trusted approaches.

Users with 4313, 43224, and 43225 will be happy to note the inclusion of open Broadom wireless drivers with the 2.6.36 kernel; however, for those of us who have to woo our Broadcom wireless, there’s a little bit extra work that needs to happen.

This is one of those unfortunate cases where you have to be online to get online.

First, find out what flavor of the kernel you’re running by opening a terminal and and running the command:

uname -r

Add the Essential Packman repository (if not already added):

sudo zypper ar -n packman-essentials packman-essentials

Then, install broadcom-wl, broadcom-wl-kmp-(uname -r), and rfkill*

Next, sudo into your favorite text editor. Kwrite is used in this example, but gedit, mousepad, or any text editor will do:

sudo kwrite /etc/modprobe.d/50-blacklist.conf

and add the following lines at the end of /etc/modprobe.d/50-blacklist.conf:

blacklist ssb

blacklist b43

blacklist acer-wmi

*Note: while not essential, I’ve found that including these allows automatic connection after boot and hibernation/standby on the S12–especially the acer-wmi kernel module.

You should be able to configure your wireless in YaST and connect after a reboot.