Status of Broadcom BCM43XX wireless cards under OpenSUSE Leap 15.2

Hi,

I have an infamous Broadcom wireless card on my old MacBook Pro running OpenSUSE Leap.

[root@macbook:~] # lspci | grep -i wireless
03:00.0 Network controller: Broadcom Inc. and subsidiaries BCM4322 802.11a/b/g/n Wireless LAN Controller (rev 01)

Under Leap 15.1 this card worked in the sense that chickens fly and horses swim, with random connectivity and access points disappearing erratically.

What’s the status of these cards under OpenSUSE Leap 15.2, what with a whole new 5.x kernel? I thought I’d ask here, since the problem is not missing documentation. It’s that there’s such a wealth of outdated, contradictory, obscure and/or or downright wrong information about Broadcom cards out there that configuring one of these cards turns into an ordeal.

Any suggestions ?

Install broadcom-wl from the packman repo - It seems to work for the few broadcom wifi I have installed on Opensuse laptops.

I just tried that. Installed broadcom-wl, and I get the same erratic behaviour I got under Leap 15.1. Connects to some access points but not to others, APs randomly disappear and reappear. Hmmm.

Post:

/sbin/lspci -nnk | grep -iA3 net
uname -a
zypper se -si broadc kernel

On the few bad Broadcom WiFi adapters I found - this is my $2.49 fix. I keep 5 or 6 in my possession all the time - I find a few laptops with bad WiFi cards and this is a cheap fix if you have a free USB 2.0/3.0 port. I use these also on desktops that need WiFi connections.

https://www.ebay.com/itm/MediaTEK-Mini-USB-Wireless-802-11B-G-N-LAN-Card-WiFi-Adapter-Nano-Wlan-Dongle/264392067593?epid=19021720295&hash=item3d8efeca09:g:S-oAAOSwKoRZaAsu

Mine is not working either, will using that packman repo fix it?

/sbin/lspci -nnk | grep -iA3 net
00:19.0 Ethernet controller [0200]: Intel Corporation Ethernet Connection (2) I218-V [8086:15a1] (rev 05)
        DeviceName:  Onboard LAN
        Subsystem: ASUSTeK Computer Inc. Device [1043:85c4]
        Kernel driver in use: e1000e
--
05:00.0 Network controller [0280]: Broadcom Inc. and subsidiaries BCM4352 802.11ac Wireless Network Adapter [14e4:43b1] (rev 03)
        Subsystem: ASUSTeK Computer Inc. Device [1043:855c]
        Kernel driver in use: bcma-pci-bridge
        Kernel modules: bcma

uname -a
Linux install 5.7.11-1-default #1 SMP Wed Jul 29 09:32:21 UTC 2020 (5015994) x86_64 x86_64 x86_64 GNU/Linux
zypper se -si broadc kernel
Loading repository data...
Reading installed packages...

S  | Name                        | Type    | Version      | Arch   | Repository
---+-----------------------------+---------+--------------+--------+----------------------
i+ | kernel-default              | package | 5.7.11-1.2   | x86_64 | Main Repository (OSS)
i  | kernel-default-devel        | package | 5.7.11-1.2   | x86_64 | Main Repository (OSS)
i  | kernel-devel                | package | 5.7.11-1.2   | noarch | Main Repository (OSS)
i  | kernel-firmware-all         | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-amdgpu      | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-ath10k      | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-atheros     | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-bluetooth   | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-bnx2        | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-brcm        | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-chelsio     | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-dpaa2       | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-i915        | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-intel       | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-iwlwifi     | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-liquidio    | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-marvell     | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-media       | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-mediatek    | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-mellanox    | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-mwifiex     | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-network     | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-nfp         | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-nvidia      | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-platform    | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-qlogic      | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-radeon      | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-realtek     | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-serial      | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-sound       | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-ti          | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-ueagle      | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-firmware-usb-network | package | 20200716-1.1 | noarch | Main Repository (OSS)
i  | kernel-macros               | package | 5.7.11-1.2   | noarch | Main Repository (OSS)
i  | kernel-syms                 | package | 5.7.11-1.2   | x86_64 | Main Repository (OSS)
i  | purge-kernels-service       | package | 0-7.1        | noarch | Main Repository (OSS)

@TriMoon:
Same her:

/sbin/lspci -nnk | grep -iA3 net
04:00.0 Network controller [0280]: Broadcom Inc. and subsidiaries BCM4352 802.11ac Wireless Network Adapter [14e4:43b1] (rev 03)
        Subsystem: ASUSTeK Computer Inc. Device [1043:85ba]
        Kernel driver in use: wl
        Kernel modules: bcma, wl

Working with broadcom-wl but from my home:Repo, not Packman.

So if Packman ones does not work, you can use the one from my Repo.

Hi
There are reasons is not built on OBS :wink:

It would appear @TriMoon that the broadcom-wl from packman isn’t installed? In my use case I just rebuild the src rpm locally to keep up with kernel changes, but also may need to run mkinitrd to ensure the bcma* modules are blacklisted and excluded.

For my onboard Wifi of my “ASUS X99-PRO USB/3.1” i currently installed the bcm20702a1-firmware from the suse repo and packman version of broadcom-wl .
It looks like the wlan is being initialized and gets an IP from DHCP, im not actively using the wlan at moment because im directly wired to the ISP modem using ethernet (UTP).
What’s the diff from the packman version you guys use? (Does it add AP mode?)

Anyway im still strugling with re-installs of suse and have gotten the Leap and Tumbleweed versions installed side-by-side, i will post about a recomendation to change the grub-efi install to allow for easier side-by-side installs of these two later.
(Because it is a nightmare if one wants to use both at same time at moment)

Hi
AFAIK, nothing… The real issue is rebuild times when a new kernel is released, the third party build service is not the beast that the openSUSE service is (as in build power…). This can lead to delays for rebuilding all the kmp’s (even perhaps failing and need fixing) and other packages. So you update for example Tumbleweed and packman has not finished rebuilding when you zypper dup, in my case I rebuild the src rpm locally against the new running kernel and deploy locally…

Hmmm that’s very interesting, i would be interested in doing a local build from source also indeed…
Could you provide more info on what steps i need to take to do that?
I have not worked with RPM since RedHat went so commercial. (Yes it was still free opensource back then)
Do we need anything beside the usual build-tools ?

Hi
Using the rpmbuild process is fairly simple :wink: It’s all done as your user… not root except install! Just need to make sure you boot to the kernel your wanting it built for 9as in running kernel)

Install as root user;


su -
zypper in kernel-default-devel libelf-devel make gcc patch rpm-build
exit

Grab the src rpm;


cd
wget http://packman.inode.at/suse/openSUSE_Leap_15.2/Essentials/src/broadcom-wl-6.30.223.271-pm152.12.47.src.rpm
rpmbuild --rebuild broadcom-wl-6.30.223.271-pm152.12.47.src.rpm

In your home directory a ‘rpmbuild’ directory is created by above, then once completed (as in no build errors) you will see a line about it writing the files into the RPMS/x86_64 directory. Unless the major version has changed, you only need to install the kmp file but will need to use the -f option since it will look to rpm as a downgrade;


su -
zypper in -f <full path and name to rpm>
modinfo wl | grep "filename:"
zypper al broadcom-wl-kmp-default
exit

The above should show the wl module is not in weak-updates and matches the running kernel.

I would only use the above if really stuck, and once packnam has updated, then let it install by removing the lock.