You are not logged in.
Hello!
I'm using BCM43142 with the broadcom-wl-dkms drivers from the AUR. They worked just fine before, but after a pacman -Syu, it stopped working, giving a "ERROR @wl_cfg80211_scan : WLC_SCAN error (-22)" when I try "sudo wifi-menu"
I've googled, but to no avail.
Does anyone know what's going wrong, or where I should look to figure out what's going wrong?
Last edited by wesleyac (2014-02-14 07:36:59)
Offline

Did you rebuild the module? I believe the dkms package puts it is the extramodules directory so after a kernel update, the new kernel will still have access to it. This can be a good thing since it means that you don't have to rebuild it everytime no matter what. But when there is a binary breaker release or a minor kernel version bump (ie. from 3.11 to 3.12) you will need to rebuild.
Offline
Same error after:
dkms remove broadcom-wl/6.30.223.141 --all
dkms add broadcom-wl/6.30.223.141
dkms build broadcom-wl/6.30.223.141
dkms install broadcom-wl/6.30.223.141
modprobe wlOffline
Quick update:
After reinstalling broadcom-wl-dkms with yaourt, 'ip link' shows my wifi card as "eth0"
Does anyone know WTF is going on?  I thought that Arch didn't use wlanX or ethX anymore,and even so, it's a wifi card, not a wired card.
It still fails with the same error.
Last edited by wesleyac (2014-01-14 21:21:42)
Offline
Looking at the AUR comments have you tried
dkms add -m broadcom-wl -v 6.30.223.141
systemctl restart dkms.serviceOffline

The broadcom wl module uses the eth* namespace, though I'm not entirely sure why. Even with udev's persistent naming, it is first given a name from the kernel namespace, and then the 80-net-name-slot.rules gives it the name according to physical location.
If you want to change it so that it uses the wlan* namespace, this can be patched pretty easily in the wl_linux.c source file. Just grep from 'eth' and you should be able to find it. It is the same file to which the license.patch is applied. But ideally, if you are using persistent naming, this shouldn't occur anyway. Though I do experience the rename failure from time to time.
Offline
Looking at the AUR comments have you tried
dkms add -m broadcom-wl -v 6.30.223.141 systemctl restart dkms.service
Same result 
Offline
The broadcom wl module uses the eth* namespace, though I'm not entirely sure why. Even with udev's persistent naming, it is first given a name from the kernel namespace, and then the 80-net-name-slot.rules gives it the name according to physical location.
If you want to change it so that it uses the wlan* namespace, this can be patched pretty easily in the wl_linux.c source file. Just grep from 'eth' and you should be able to find it. It is the same file to which the license.patch is applied. But ideally, if you are using persistent naming, this shouldn't occur anyway. Though I do experience the rename failure from time to time.
Good to know, but that still doesn't explain the error -22 that I'm getting.
Offline
I'm using BCM4313 with broadcom-wl and i have same problem.
dmesg:
sty 15 20:43:55 Free93 kernel: INFO @wl_cfg80211_attach : Registered CFG80211 phy
sty 15 20:43:55 Free93 kernel: eth0: Broadcom BCM4727 802.11 Hybrid Wireless Controller 6.30.223.141 (r415941)
sty 15 20:43:55 Free93 systemd-udevd[25330]: renamed network interface eth0 to wlp4s0
sty 15 20:43:55 Free93 kernel: ERROR @wl_cfg80211_scan : WLC_SCAN error (-22)Offline
I'm using BCM4313 with broadcom-wl and i have same problem.
dmesg:
sty 15 20:43:55 Free93 kernel: INFO @wl_cfg80211_attach : Registered CFG80211 phy sty 15 20:43:55 Free93 kernel: eth0: Broadcom BCM4727 802.11 Hybrid Wireless Controller 6.30.223.141 (r415941) sty 15 20:43:55 Free93 systemd-udevd[25330]: renamed network interface eth0 to wlp4s0 sty 15 20:43:55 Free93 kernel: ERROR @wl_cfg80211_scan : WLC_SCAN error (-22)
Did this happen after a kernal update, or was it always like this?
Offline
stachuuu93 wrote:I'm using BCM4313 with broadcom-wl and i have same problem.
dmesg:
sty 15 20:43:55 Free93 kernel: INFO @wl_cfg80211_attach : Registered CFG80211 phy sty 15 20:43:55 Free93 kernel: eth0: Broadcom BCM4727 802.11 Hybrid Wireless Controller 6.30.223.141 (r415941) sty 15 20:43:55 Free93 systemd-udevd[25330]: renamed network interface eth0 to wlp4s0 sty 15 20:43:55 Free93 kernel: ERROR @wl_cfg80211_scan : WLC_SCAN error (-22)Did this happen after a kernal update, or was it always like this?
after update
Offline
Would anything bad happen if I deleted "/lib/modules/3.12.7-2-ARCH"?
I think that the issue could be that it is attempting to use an older version.
Offline
I would move instead of deleting. Have any of you tried the broadcom-wl-no-dkms to see if same error exists?
Also, just an observation:
Same error after:
dkms remove broadcom-wl/6.30.223.141 --all dkms add broadcom-wl/6.30.223.141 dkms build broadcom-wl/6.30.223.141 dkms install broadcom-wl/6.30.223.141 modprobe wl
How about:
dkms remove broadcom-wl -v 6.30.223.141 --allDig through and make sure it is uninstalled
Then:
dkms build -m broadcom-wl -v 6.30.223.141 -k 3.12.7.2-ARCH
dkms install -m broadcom-wl -v 6.30.223.141 -k 3.12.7-2-ARCH
dkms add -m broadcom-wl -v 6.30.223.141Just thought we would force it to build upon the *-2 kernel just in case. Restart dkms.service after and check wifi?
Edit: Read the DKMS manpage to see if anything there will help.
Last edited by frank604 (2014-01-15 22:25:48)
Offline

Deleting all your modules is a bad bad bad bad bad idea. The wl module lives in /usr/lib/modules/$(uname -r)/extramodules-3.12-ARCH. So if anything you could manually delete just the wl module from there. But frank604's advice to use dkms to remove it is probably a better idea since dkms should be tracking that particular file in the first place.
Offline
Deleting all your modules is a bad bad bad bad bad idea.
oops.
It's ok though, I fixed it.
Isn't learning fun?
Last edited by wesleyac (2014-01-16 04:00:47)
Offline
What was the fix? Maybe it will help others in the same pickle as you?
Offline
What was the fix? Maybe it will help others in the same pickle as you?
Boot into live medium.
mount linux partition on /mnt.
pacman -Syu
cp -R /lib/modules/[kernal version goes here] /mnt/lib/modules/[kernal version goes here]
cp -R /lib/modules/extramodules-[kernal version goes here] /mnt/lib/modules/extramodules-[kernal version goes here]
Or just restore from one of the multiple backups you have.
Offline

That is also not the best idea either. Kernel modules are compiled for a given kernel version. In your case it worked because you had downgraded to the same version as the January live media. But don't expect a module to able to load for a conflicting kernel version.
To correctly fix things if you accidentally delete or otherwise screw up your modules, would be to either arch-chroot into your system and then reinstall the linux package. Or use pacstrap from the live media to reinstall linux (or 'pacman -S --root /mnt linux').
Offline
but if I update the live media (the pacman -Syu), then it should be fine, shoudn't it?
Offline

but if I update the live media (the pacman -Syu), then it should be fine, shoudn't it?
Yes, it is ok, but "arch-chroot" followed with "pacman -Syu linux" would be cleaner and saves s lot of downloaded data and time, especially if your live cd is old.
Last edited by progandy (2014-01-16 06:20:26)
| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |
Offline
Ok, so I unborked my system and now when I rebuild BCM43142 it says that the linux headers could not be found and aborts.
$ sudo dkms build -m broadcom-wl -v 6.30.223.141 -k 3.12.7.2-ARCH
[sudo] password for wesley: 
Error! echo
Your kernel headers for kernel 3.12.7.2-ARCH cannot be found at
/usr/lib/modules/3.12.7.2-ARCH/build or /usr/lib/modules/3.12.7.2-ARCH/source.
$even after a pacman -S linux-headers
Offline
The same problem with broadcom-wl-dkms here, but I get it working... Here is what I did.
  419  sudo pacman -Qs broadcom
  420  yaourt broadcom
  421  sudo pacman -Rs broadcom-wl
  422  yaourt broadcom-wl
  423  pacman -S dkms
  424  sudo pacman -S dkms
  425  sudo pacman -Ss headers
  426  sudo pacman -Syyu
  427  yaourt headers
  428  yaourt kernel-headers
  429  yaourt linux-headers
  430  sudo pacman -S  linux-headers
  431  yaourt broadcom-wl
  432  uname -r
  433  depmod 3.12.6-1-ARCH
  434  sudo depmod 3.12.6-1-ARCH
  435  dkms add -m broadcom-wl -v 6.30.223.141
  436  systemctl restart dkms.service
  437  sudo dkms add -m broadcom-wl -v 6.30.223.141
  438  sudo systemctl restart dkms.service
  439  sudo systemctl restart dkms.service
  440  depmod 3.12.6-1-ARCH
  441  reboot
  442  reboot
  443  sudo iwlan
  444  sudo iwconfig 
  445  yaourt broadcom-wl
  446  sudo dkms add -m broadcom-wl -v 6.30.223.141
  447  sudo systemctl restart dkms.service
  448  ip link
  449  reboot
  450  ip linkOffline