### How to make the wifi module of Lenovo B590 work with Linux ###
       
       
       This is actually pretty trivial, but I struggled with this for a few hours, so I though that creating a short note about this is probably a good idea, so I don't waste time if the problem happens again in the futur...
       
       On this Lenovo B590 laptop, it appears that the wifi chipset is a 'Broadcom BCM4313' model. At least that's what suggests lspci:
       
         02:00.0 Network controller: Broadcom Corporation BCM4313 802.11b/g/n Wireless LAN Controller (rev 01)
       
       By default, OpenSUSE 12.2 and 12.3 are both using the opensource B43 driver for it. On OpenSUSE 12.3, I noticed there are packages 'b43', 'b43-legacy' and 'b43-fwcutter'. I am not sure of the difference, but tried every one of them, and the behavior was always the same: wifi somewhat works, but it's *really* weak. Detects only the very nearest APs, with a weak signal (even at 1 meter of the AP device). It takes a long time to connect (if at all), and stops working after a few minutes anyway.
       
       The solution to this problem is simple: forget the open-source B43 driver. Broadcom provides a proprietary blob named 'broadcom-wl' (also called 'Linux STA driver'), and it works just great (at least with my laptop/wifi chipset - but YMMV). Yes, it's contrary to the 'freedom/libre' principles, but... well, it works, while the opensource drivers just don't.
       
       How to use the broadcom proprietary driver on OpenSUSE?
       
       First I took care to remove all packages related to b43, to be sure that the kernel won't be tempted to use it.
       Then, I installed following packages:
       
         broadcom-wl
         broadcom-wl-kmp-desktop
       
       Finally, I rebooted. And since then, the wifi connectivity is working flawlessly. Note: the broadcom-wl driver appears in the lsmod output simply as 'wl'.