Package Details: broadcom-wl

Git Clone URL: (read-only)
Package Base: broadcom-wl
Description: Broadcom 802.11abgn hybrid Linux networking device driver
Upstream URL:
Keywords: network wireless
Licenses: custom
Submitter: kyrias
Maintainer: None
Last Packager: MR-2
Votes: 65
Popularity: 0.083889
First Submitted: 2015-08-10 02:51
Last Updated: 2018-02-07 17:14

Latest Comments

MR-2 commented on 2018-02-07 17:22

Just updated package with kernel 4.15 patch... But won't maintain package anymore...

Raimar commented on 2017-11-19 20:23

Now I do not use my laptop with this device anymore and gave up this packet.

Feel free to use the official DKMS package instead, which is build automatically after a kernel update:

severoraz commented on 2017-10-09 04:59

I have updated to linux kernel 4.13.4-1 and have been getting kernel panics seemingly after the following message is logged in dmesg: <wifi interface> Scan_results error (-22)

thatlittlegit commented on 2017-09-17 22:40

From 'iwconfig', I get

enp9s0 no wireless extensions

lo no wireless extensions

No sign of any wireless.

EDIT: Just installed Manjaro and not having this problem anymore. I think it was related to other stuff on that computer. Thanks for spending time to help me.

Raimar commented on 2017-09-17 21:24

@thatlittlegit May be iwconfig shows more (here is my output):
$ iwconfig
enp1s0 no wireless extensions.

lo no wireless extensions.

wlp2s0 IEEE 802.11 ESSID:off/any
Mode:Managed Access Point: Not-Associated
Retry short limit:7 RTS thr:off Fragment thr:off
Power Management:off

thatlittlegit commented on 2017-09-17 15:53

When I did the command in the wiki, I got:

0b:00.0 Network Controller [0280]: Broadcom Limited BCM4311 802.11a/b/g [14e4:4312] (rev 01)
(stuff that I'm assuming is unnecessary)
Kernel modules: ssb, wl

I'm assuming it's supported. However, 'ip a' gives my ethernet (enp9s0) and loopback. Do you have any advice?

Raimar commented on 2017-09-05 23:27

@thatlittlegit Please find out, if your chip set is supported by this driver. A good starting point is

cl4r1ty7072 commented on 2017-09-05 22:08

Hello, this question is why this driver does not support the monitor mode (Broadcom Limited BCM43142 802.11b / g / n) and how to solve this problem ???

thatlittlegit commented on 2017-09-04 22:06


I'm new to Arch and I have a Dell Inspiron 1525, with a BCM94311MCAG. I need Wi-Fi, and I have Yaourt for installing this. However, even when I 'modprobe wl' NetworkManager can't find it. Can someone please give me some pointers?

[sorry if this isn't the right place to put this]

Raimar commented on 2017-08-23 21:26

I was not able to reproduce this error with kernel 4.12.8-2 and this package.

A reason could be a difference in the default compiler settings causing some warnings as errors.

Are you sure you have installed the same version of linux and linxu-headers? It seams, that you use broadcom-wl-lts (flagged orphaned) instead of this package. The easiest way is to install broadcom-wl-dkms, which also works well on my machine.

Here is my compiler output:
make: Verzeichnis „/usr/lib/modules/4.12.8-2-ARCH/build“ wird betreten
CFG80211 API is prefered for this kernel version
Using CFG80211 API
LD /tmp/yaourt-tmp-X/aur-broadcom-wl/src/built-in.o
CC [M] /tmp/yaourt-tmp-X/aur-broadcom-wl/src/src/shared/linux_osl.o
CC [M] /tmp/yaourt-tmp-X/aur-broadcom-wl/src/src/wl/sys/wl_linux.o
/tmp/yaourt-tmp-X/aur-broadcom-wl/src/src/wl/sys/wl_linux.c: In Funktion »wl_pci_probe«:
/tmp/yaourt-tmp-X/aur-broadcom-wl/src/src/wl/sys/wl_linux.c:776:2: Warnung: diese »if«-Klausel beschützt nicht … [-Wmisleading-indentation]
if ((val & 0x0000ff00) != 0)
/tmp/yaourt-tmp-X/aur-broadcom-wl/src/src/wl/sys/wl_linux.c:778:3: Anmerkung: … diese Anweisung, aber letztere ist verwirrend eingerückt, als wäre sie abhängig von »if«
bar1_size = pci_resource_len(pdev, 2);
CC [M] /tmp/yaourt-tmp-X/aur-broadcom-wl/src/src/wl/sys/wl_iw.o
CC [M] /tmp/yaourt-tmp-X/aur-broadcom-wl/src/src/wl/sys/wl_cfg80211_hybrid.o
/tmp/yaourt-tmp-X/aur-broadcom-wl/src/src/wl/sys/wl_cfg80211_hybrid.c: In Funktion »wl_bss_roaming_done«:
/tmp/yaourt-tmp-X/aur-broadcom-wl/src/src/wl/sys/wl_cfg80211_hybrid.c:2378:2: Warnung: ISO-C90 verbietet gemischte Deklarationen und Code [-Wdeclaration-after-statement]
struct cfg80211_roam_info roam_info = {
LD [M] /tmp/yaourt-tmp-X/aur-broadcom-wl/src/wl.o
Building modules, stage 2.
CFG80211 API is prefered for this kernel version
Using CFG80211 API
MODPOST 1 modules
CC /tmp/yaourt-tmp-X/aur-broadcom-wl/src/wl.mod.o
LD [M] /tmp/yaourt-tmp-X/aur-broadcom-wl/src/wl.ko
make: Verzeichnis „/usr/lib/modules/4.12.8-2-ARCH/build“ wird verlassen

bavramor commented on 2017-08-23 20:27

Doesn't build after update:

(1/1) Prüfe auf Dateikonflikte [####################################################] 100%
(1/1) Überprüfe verfügbaren Festplattenspeicher [####################################################] 100%
:: Starte pre-transaction hooks...
(1/1) Remove DKMS modules
==> dkms remove broadcom-wl/ -k 4.9.44-1-lts
==> dkms remove broadcom-wl/ -k 4.12.8-2-ARCH
Error! There are no instances of module: broadcom-wl located in the DKMS tree.
:: Verarbeite Paketänderungen...
(1/1) Installiere broadcom-wl [####################################################] 100%
:: Starte post-transaction hooks...
(1/2) Install DKMS modules
==> dkms install broadcom-wl/ -k 4.9.44-1-lts
==> dkms install broadcom-wl/ -k 4.12.8-2-ARCH
Error! Bad return status for module build on kernel: 4.12.8-2-ARCH (x86_64)
Consult /var/lib/dkms/broadcom-wl/ for more information.
(2/2) Arming ConditionNeedsUpdate...

DKMS make.log for broadcom-wl- for kernel 4.12.8-2-ARCH (x86_64)
Mi 23. Aug 22:24:46 CEST 2017
make: Verzeichnis „/usr/lib/modules/4.12.8-2-ARCH/build“ wird betreten
CFG80211 API is prefered for this kernel version
Using CFG80211 API
LD /var/lib/dkms/broadcom-wl/
CC [M] /var/lib/dkms/broadcom-wl/
CC [M] /var/lib/dkms/broadcom-wl/
CC [M] /var/lib/dkms/broadcom-wl/
CC [M] /var/lib/dkms/broadcom-wl/
/var/lib/dkms/broadcom-wl/ In Funktion »wl_pci_probe«:
/var/lib/dkms/broadcom-wl/ Warnung: diese »if«-Klausel beschützt nicht … [-Wmisleading-indentation]
if ((val & 0x0000ff00) != 0)
/var/lib/dkms/broadcom-wl/ Anmerkung: … diese Anweisung, aber letztere ist verwirrend eingerückt, als wäre sie abhängig von »if«
bar1_size = pci_resource_len(pdev, 2);
/var/lib/dkms/broadcom-wl/ Fehler: Initialisierung von inkompatiblem Zeigertyp [-Werror=incompatible-pointer-types]
.change_virtual_intf = wl_cfg80211_change_iface,
/var/lib/dkms/broadcom-wl/ Anmerkung: (nahe der Initialisierung für »wl_cfg80211_ops.change_virtual_intf«)
/var/lib/dkms/broadcom-wl/ In Funktion »wl_bss_roaming_done«:
/var/lib/dkms/broadcom-wl/ Fehler: Übergabe des Arguments 2 von »cfg80211_roamed« von inkompatiblem Zeigertyp [-Werror=incompatible-pointer-types]
In file included from /var/lib/dkms/broadcom-wl/
./include/net/cfg80211.h:5435:6: Anmerkung: »struct cfg80211_roam_info *« erwartet, aber Argument hat Typ »struct ieee80211_channel *«
void cfg80211_roamed(struct net_device *dev, struct cfg80211_roam_info *info,
/var/lib/dkms/broadcom-wl/ Warnung: Übergabe des Arguments 3 von »cfg80211_roamed« erzeugt Ganzzahl von Zeiger ohne Typkonvertierung [-Wint-conversion]
(u8 *)&wl->bssid,
In file included from /var/lib/dkms/broadcom-wl/
./include/net/cfg80211.h:5435:6: Anmerkung: »gfp_t {alias unsigned int}« erwartet, aber Argument hat Typ »u8 * {alias unsigned char *}«
void cfg80211_roamed(struct net_device *dev, struct cfg80211_roam_info *info,
/var/lib/dkms/broadcom-wl/ Fehler: zu viele Argumente für Funktion »cfg80211_roamed«
In file included from /var/lib/dkms/broadcom-wl/
./include/net/cfg80211.h:5435:6: Anmerkung: hier deklariert
void cfg80211_roamed(struct net_device *dev, struct cfg80211_roam_info *info,
cc1: Einige Warnungen werden als Fehler behandelt
make[1]: *** [scripts/ /var/lib/dkms/broadcom-wl/] Fehler 1
make[1]: *** Es wird auf noch nicht beendete Prozesse gewartet....
make: *** [Makefile:1515: _module_/var/lib/dkms/broadcom-wl/] Fehler 2
make: Verzeichnis „/usr/lib/modules/4.12.8-2-ARCH/build“ wird verlassen

Raimar commented on 2017-06-29 22:27

@dome22xl Yes, you are right. Now the update has been pushed.

dome22xl commented on 2017-06-28 19:45

Hi Raimar i can't see the linux412.patch in the sources ?

Raimar commented on 2017-06-23 21:26

Added linux412.patch from wichmannpas to be compatible with kernel >= 4.12.0.

wichmannpas commented on 2017-06-20 12:13

I have created a patch for the broadcom-wl module to work with kernel version 4.12:

Since Linux 4.12, the signature of cfg80211_roamed takes
struct cfg80211_roam_info as parameter.
u32 *flags has been removed from the signature of wl_cfg80211_change_iface.


Signed-off-by: Pascal Wichmann <pascal.wichmann at>

diff --git a/src/wl/sys/wl_cfg80211_hybrid.c b/src/wl/sys/wl_cfg80211_hybrid.c
index 1d8ad8e..6ec791a 100644
--- a/src/wl/sys/wl_cfg80211_hybrid.c
+++ b/src/wl/sys/wl_cfg80211_hybrid.c
@@ -50,8 +50,13 @@ u32 wl_dbg_level = WL_DBG_ERR | WL_DBG_INFO;
u32 wl_dbg_level = WL_DBG_ERR;

+static s32 wl_cfg80211_change_iface(struct wiphy *wiphy, struct net_device *ndev,
+ enum nl80211_iftype type, struct vif_params *params);
static s32 wl_cfg80211_change_iface(struct wiphy *wiphy, struct net_device *ndev,
enum nl80211_iftype type, u32 *flags, struct vif_params *params);
static s32
wl_cfg80211_scan(struct wiphy *wiphy,
@@ -462,10 +467,17 @@ wl_dev_ioctl(struct net_device *dev, u32 cmd, void *arg, u32 len)
return err;

+static s32
+wl_cfg80211_change_iface(struct wiphy *wiphy, struct net_device *ndev,
+ enum nl80211_iftype type,
+ struct vif_params *params)
static s32
wl_cfg80211_change_iface(struct wiphy *wiphy, struct net_device *ndev,
enum nl80211_iftype type, u32 *flags,
struct vif_params *params)
struct wl_cfg80211_priv *wl = wiphy_to_wl(wiphy);
struct wireless_dev *wdev;
@@ -2359,19 +2371,37 @@ wl_bss_roaming_done(struct wl_cfg80211_priv *wl, struct net_device *ndev,
const wl_event_msg_t *e, void *data)
struct wl_cfg80211_connect_info *conn_info = wl_to_conn(wl);
+ struct cfg80211_bss *bss;
+ struct wlc_ssid *ssid;
+ ssid = &wl->profile->ssid;
+ bss = cfg80211_get_bss(wl_to_wiphy(wl), NULL, (s8 *)&wl->bssid,
+ struct cfg80211_roam_info roam_info = {
+ .bss = bss,
+ .req_ie = conn_info->req_ie,
+ .req_ie_len = conn_info->req_ie_len,
+ .resp_ie = conn_info->resp_ie,
+ .resp_ie_len = conn_info->resp_ie_len,
+ };
s32 err = 0;

memcpy(wl->profile->bssid, &e->addr, ETHER_ADDR_LEN);
memcpy(&wl->bssid, &e->addr, ETHER_ADDR_LEN);
+#endif /* LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 39) */
(u8 *)&wl->bssid,
conn_info->req_ie, conn_info->req_ie_len,
conn_info->resp_ie, conn_info->resp_ie_len, GFP_KERNEL);
+ cfg80211_roamed(ndev, &roam_info, GFP_KERNEL);
+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(4, 12, 0) */
WL_DBG(("Report roaming result\n"));

set_bit(WL_STATUS_CONNECTED, &wl->status);

Raimar commented on 2017-05-03 20:18

Added linux411.patch from wichmannpas to be compatible with kernel >= 4.11.0.

wichmannpas commented on 2017-05-02 12:20

I have created a patch for the broadcom-wl module to build with kernel version 4.11 (which can be used for broadcom-wl-dkms[0] as well).

As send_sig and allow_signal now need an include of linux/sched/signal.h, the patch does not build with older kernel versions (where this include does not exist).

$ cat linux411.patch
--- srca/src/wl/sys/wl_cfg80211_hybrid.c 2017-05-02 12:27:40.253557540 +0200
+++ srcg/src/wl/sys/wl_cfg80211_hybrid.c 2017-05-02 13:41:58.252225082 +0200
@@ -30,6 +30,7 @@
#include <linux/kthread.h>
#include <linux/netdevice.h>
#include <linux/ieee80211.h>
+#include <linux/sched/signal.h>
#include <net/cfg80211.h>
#include <linux/nl80211.h>
#include <net/rtnetlink.h>
--- srca/src/wl/sys/wl_linux.c 2017-05-02 12:57:48.890791119 +0200
+++ srcg/src/wl/sys/wl_linux.c 2017-05-02 13:41:53.655498874 +0200
@@ -117,6 +117,7 @@

typedef struct priv_link {
wl_if_t *wlif;
+ unsigned long last_rx;
} priv_link_t;

#define WL_DEV_IF(dev) ((wl_if_t*)((priv_link_t*)DEV_PRIV(dev))->wlif)
@@ -2450,6 +2451,7 @@
struct sk_buff *oskb = (struct sk_buff *)p;
struct sk_buff *skb;
+ priv_link_t *priv_link;
uchar *pdata;
uint len;

@@ -2916,7 +2918,11 @@
if (skb == NULL) return;

skb->dev = wl->monitor_dev;
- skb->dev->last_rx = jiffies;
+ priv_link = MALLOC(wl->osh, sizeof(priv_link_t));
+ priv_link = netdev_priv(skb->dev);
+ priv_link->last_rx = jiffies;


jmartl109 commented on 2017-04-17 23:09

Doesn't build on 4.11 (I tried with 4.11-rc2 but assume later rc's don't help):

./arch/x86/include/asm/compat.h: In function ‘arch_compat_alloc_user_space’:
./include/linux/thread_info.h:75:22: warning: passing argument 1 of ‘test_ti_thread_flag’ makes pointer from integer without a cast [-Wint-conversion]
test_ti_thread_flag(current_thread_info(), flag)
./arch/x86/include/asm/compat.h:309:6: note: in expansion of macro ‘test_thread_flag’
if (test_thread_flag(TIF_IA32)) {
./include/linux/thread_info.h:61:19: note: expected ‘struct thread_info *’ but argument is of type ‘int’
static inline int test_ti_thread_flag(struct thread_info *ti, int flag)
cc1: some warnings being treated as errors
make[2]: *** [scripts/ <broadcom-wl dir>/src/src/shared/linux_osl.o] Error 1
make[1]: *** [Makefile:1492: _module_<broadcom-wl dir>/src] Error 2
make[1]: Leaving directory '<kernel source dir>'
make: *** [Makefile:159: all] Error 2

Does anyone know who to contact about getting this patched for the new kernel?

Raimar commented on 2017-04-01 20:55

@MrR060t_104: Currently kernel 4.10.6 works. Try to rebuild this package. As mentioned below using brodcom-wl-dkms is an alternative for an automatic rebuild process.

Raimar commented on 2017-04-01 20:15

@hobarrera: Technically it should be possible to rebuild this package automatically, after the linux kernel has been installed or updated.
In more detail: A solution using the current pacman hook can call a script to build this AUR package, This should look like the example shown at
To be independend from the concrete used AUR helper tool the PKGBUILD file could be downloaded with wget, build with makepkg and installed with pacman. I wonder, if there is a more elegant way to avoid calling pacman from pacman.

MrR060t_104 commented on 2017-04-01 14:33

Your package seems broken under linux-4.10.

==> Starting prepare()...
patching file src/wl/sys/wl_linux.c
Hunk #1 succeeded at 207 (offset 2 lines).
patching file src/wl/sys/wl_linux.c
patching file src/wl/sys/wl_cfg80211_hybrid.c
patching file src/wl/sys/wl_cfg80211_hybrid.c
==> Starting build()...
make: Entering directory '/usr/lib/modules/4.10.1-1-ARCH/build'
make: *** No targets specified and no makefile found. Stop.
make: Leaving directory '/usr/lib/modules/4.10.1-1-ARCH/build'
==> ERROR: A failure occurred in build().
==> ERROR: Makepkg was unable to build broadcom-wl.

Raimar commented on 2017-02-19 14:47

Flag "out of date" removed, because everything works with kernel 4.9.8. If not, remember to rebuild package.

alex.shpilkin commented on 2017-02-01 13:29

@whereiswaldon @hobarrera Note that it is possible to have modules rebuild automatically on kernel upgrade using DKMS. It looks like the broadcom-wl-dkms package is maintained independently from this one, though.

whereswaldon commented on 2017-02-01 04:21

@hobarrera @graysky
Thanks! I rebuilt and everything worked wonderfully. I'm new to manual package management. My previous distro's package managers did literally everything for me. Sorry for my ignorance!

WhyNotHugo commented on 2017-01-31 23:11

You need to rebuild it after every kernel upgrade. As an alternative, you can use broadcom-wl.

Can't we use the new pacman hooks to rebuild this on kernel upgrade?

graysky commented on 2017-01-31 22:12

You need to rebuild modules against the installed kernel; depending on the code changes upstream, rebuilding on each update is possible. Certainly from 4.8.x to 4.9.x. This is true for any distro.

whereswaldon commented on 2017-01-31 21:19

I updated to linux-4.9.6-1 and this package stopped working. I rolled back to linux-4.8.13-1 and all is well. I'm new to arch, but does something need to be changed in packages to support new kernels?

mollitz commented on 2017-01-21 12:48

@lordvampire @ali.molaei same problem here with a Macbook Pro (late 2013). It used to work actually but since I reinstalled Arch I've got these hickups you described

lordvampire commented on 2017-01-13 13:00

like ali.molalei i am having also strange problems with broadcom-wl and also with broadcom.wl.dkms ...

module bcm4322 loses internet (not connection) after some time (10 minutes). in NetworkManager everything looks fine, but I cannot even ping the router anymore.

ali.molaei commented on 2017-01-05 14:51

I have a strange problem with my wifi connection

If I leave laptop connected to my home wifi for about 2 or 3 hours without activity, when I come back, it is connected to wifi but i dont have internet, even disconnecting and reconnecting to wifi is not solving the problem

The stranger thing is that if I connect to another wifi, then I have internet, and then if I connect to my wifi again I have no Internet neutral

The only solution I found is:

sudo modprobe -r wl
sudo modprobe wl
sudo systemctl restart connman.service

There is no problem by D-LINK external modem.

Raimar commented on 2016-12-05 20:44

@rbaj Thank your for mentioning the issue.

After Broadcom changed the URLs, I have updated them for the new location.

rbaj commented on 2016-12-04 20:49

FYI the broadcom source links are broken, but you can still find the file via the upstream url.

The x86_64 link seems to be

Raimar commented on 2016-10-12 20:16

@jlanzobr The linux48.patch from broadcom-wl-dkms has been added.

jlanzobr commented on 2016-08-10 00:21

Does not work on Linux 4.8rc1 from linux-mainline AUR package.

fincan commented on 2016-07-19 22:50

@Raimar I found the problem, if I use the notebook without battery while plugged a/c, the connection issue will exist.

Raimar commented on 2016-06-17 20:58

The pending orphan request is invalid.

Raimar commented on 2016-06-13 19:09

@USA-RedDragon Thank you for making this patch. It has been added.

USA-RedDragon commented on 2016-06-13 17:34

Hey there, I forked your package and updated it to work on future Linux kernel versions while maintaining compatibility. If you would please look at it and possibly merge the commit I will link below.

Thank you,
Jacob (USA-RedDragon)

fincan commented on 2016-06-09 21:05

@Raimar I see connection problem while playing hearthstone on wine. At other use(web surfing, chating, video,...) there is no problem because I cannot feel lag or connection drops. But in the game game tries to reconnects.

BTW there are some other users who have the same issue at other dist. like Ubuntu. Fu cking blodware :/

stolve commented on 2016-06-09 18:52

I downloaded a fresh copy of this and built it and still had the same issue, but using broadcom-wl-dkms worked great.

Raimar commented on 2016-06-09 15:37

@fincan: The chipset seams to be the same on my computer, because "sudo lspci -v -nn" says:
02:00.0 Network controller [0280]: Broadcom Corporation BCM43142 802.11b/g/n [14e4:4365] (rev 01)
Subsystem: Lenovo Device [17aa:0621]
Flags: bus master, fast devsel, latency 0, IRQ 17
Memory at d0400000 (64-bit, non-prefetchable) [size=32K]
Capabilities: [40] Power Management version 3
Capabilities: [58] Vendor Specific Information: Len=78 <?>
Capabilities: [48] 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 00-00-b6-ff-ff-c6-48-5a
Capabilities: [16c] Power Budgeting <?>
Kernel driver in use: wl
Kernel modules: wl

Raimar commented on 2016-06-09 15:08

@stolve: Most likely you must only rebuild this package, i.e. every time you installed a new version of the package linux / linux-headers. This behaviour is expected and works for me.

As hobarrera mentioned, the other package broadcom-wl-dkms can be used for more convenience.

stolve commented on 2016-06-09 13:50

After updating to arch 4.6.1-2, my wireless card is no longer being recognized.

When I try to run "modprobe wl lib80211_crype_tkip" I get:
modprobe: FATAL: Module wl not found in directory /lib/modules/4.6.1-2-ARCH

I ran "uname -r" with a response of:

I ran "pacman -Q linux" with a response of:
linux 4.6.1-2

And finally ran "pacman -Ql broadcom-wl" with a response of:

broadcom-wl /usr/
broadcom-wl /usr/lib/
broadcom-wl /usr/lib/modprobe.d/
broadcom-wl /usr/lib/modprobe.d/broadcom-wl.conf
broadcom-wl /usr/lib/modules/
broadcom-wl /usr/lib/modules/extramodules-4.5-ARCH/
broadcom-wl /usr/lib/modules/extramodules-4.5-ARCH/wl.ko.gz
broadcom-wl /usr/share/
broadcom-wl /usr/share/licenses/
broadcom-wl /usr/share/licenses/broadcom-wl/
broadcom-wl /usr/share/licenses/broadcom-wl/LICENSE

fincan commented on 2016-06-08 12:19

I use channel 12 and there is no1 that use this channel.I have 2 router and tried both too. Same issue.

08:00.0 Network controller: Broadcom Corporation BCM43142 802.11b/g/n (rev 01)

Raimar commented on 2016-06-08 08:36

@fincan My WLAN router shows me an overview of used frequencies. E.g. try out

fincan commented on 2016-06-08 08:15

@raimar how I can do that?

Raimar commented on 2016-06-07 22:19

Please verify, that you can exclude a physical reason caused by to much other access points using the same range of frequency.

fincan commented on 2016-06-07 21:40

I have connection stability problem here is the log.

00:37:42 kernel: ---[ end trace c03f9055661bd6ff ]---
00:37:42 kernel: [<ffffffff81097120>] ? kthread_worker_fn+0x170/0x170
00:37:42 kernel: [<ffffffff815b59ff>] ret_from_fork+0x3f/0x70
00:37:42 kernel: [<ffffffff81097120>] ? kthread_worker_fn+0x170/0x170
00:37:42 kernel: [<ffffffff810971f8>] kthread+0xd8/0xf0
00:37:42 kernel: [<ffffffffa092beb0>] ? wl_deinit_priv_mem+0xa0/0xa0 [wl]
00:37:42 kernel: [<ffffffffa092bf2c>] wl_event_handler+0x7c/0x1e0 [wl]
00:37:42 kernel: [<ffffffffa092f505>] wl_notify_roaming_status+0xc5/0x140 [wl]
00:37:42 kernel: [<ffffffffa057dee6>] cfg80211_roamed+0x86/0xa0 [cfg80211]
00:37:42 kernel: [<ffffffff8107918a>] warn_slowpath_null+0x1a/0x20
00:37:42 kernel: [<ffffffff81079042>] warn_slowpath_common+0x82/0xc0
00:37:42 kernel: [<ffffffff812dd982>] dump_stack+0x63/0x81
00:37:42 kernel: Call Trace:
00:37:42 kernel: ffff880253af9000 ffff88021af50600 000000000000007c ffff88017801d240
00:37:42 kernel: 0000000000000000 ffffffffa05a230b ffff8802544c3df0 ffffffff81079042
00:37:42 kernel: 0000000000000286 000000003ffe4cdb ffff8802544c3db8 ffffffff812dd982
00:37:42 kernel: Hardware name: Hewlett-Packard HP Pavilion 15 Notebook PC /2281, BIOS F.36 02/02/2015
00:37:42 kernel: CPU: 1 PID: 373 Comm: wl_event_handle Tainted: P U W O 4.5.4-1-ARCH #1
00:37:42 kernel: drm
00:37:42 kernel: glue_helper ablk_helper cryptd rfkill input_leds mii serio_raw led_class thermal snd_timer wmi snd battery xt_limit soundcore mei_me mei evdev ac mac_hid lpc_ich xt_tcpudp lis3lv02d input_polldev hp_wireless tpm_tis tpm fjes i2c_i801 shpchp processor xt_addrtype nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack ip6table_filter ip6_tables nf_conntrack_netbios_ns nf_conntrack_broadcast nf_nat_ftp nf_nat nf_conntrack_ftp nf_conntrack iptable_filter sch_fq_codel coretemp msr ip_tables x_tables ext4 crc16 mbcache jbd2 hid_logitech_hidpp hid_logitech_dj hid_generic usbhid hid sr_mod cdrom sd_mod atkbd libps2 xhci_pci xhci_hcd ahci libahci libata ehci_pci ehci_hcd scsi_mod usbcore usb_common i8042 serio i915 video button intel_gtt i2c_algo_bit drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops
00:37:42 kernel: Modules linked in: cmac ecb nvidia_modeset(PO) nvidia(PO) fuse rfcomm bbswitch(O) bnep nls_iso8859_1 nls_cp437 vfat fat ip6t_REJECT uvcvideo videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_core btusb videodev btrtl btbcm btintel bluetooth media nf_reject_ipv6 nf_log_ipv6 xt_hl nvram ip6t_rt nf_conntrack_ipv6 nf_defrag_ipv6 ipt_REJECT nf_reject_ipv4 snd_hda_codec_realtek mousedev snd_hda_codec_hdmi snd_hda_codec_generic joydev hp_wmi sparse_keymap nf_log_ipv4 nf_log_common wl(PO) snd_hda_intel iTCO_wdt snd_hda_codec iTCO_vendor_support xt_LOG snd_hda_core intel_rapl psmouse snd_hwdep hp_accel r8169 pcspkr x86_pkg_temp_thermal intel_powerclamp kvm_intel kvm irqbypass crct10dif_pclmul crc32_pclmul crc32c_intel ghash_clmulni_intel aesni_intel aes_x86_64 lrw snd_pcm gf128mul cfg80211
00:37:42 kernel: WARNING: CPU: 1 PID: 373 at net/wireless/sme.c:850 cfg80211_roamed+0x86/0xa0 [cfg80211]()
00:37:42 kernel: ------------[ cut here ]------------

Raimar commented on 2016-02-17 20:33

@waldman There are different ways to work with your mentioned warning:
1. No changes, because crda is already an optional dependency inherited by package linux. See also
2. Add crda as an optional dependency.
3. Add crda and hostadp as optional dependencies, see

Currently I do not know, what the best solution is. May be the 3rd one.

waldman commented on 2016-02-17 13:51


Can you please add the package crda as a dependency?

It's installation will fix the message bellow on dmesg:
[11711.824792] cfg80211: Calling CRDA to update world regulatory domain
[11714.976073] cfg80211: Exceeded CRDA call max attempts. Not calling CRDA

Thanks! :)

cancerberosgx commented on 2016-01-19 23:14

thanks guys, very appreciated, sorry for the newbie / OT question

WhyNotHugo commented on 2016-01-17 15:34

@cancerberosgx: As mentioned; broadcom-wl-dkms already includes the mentioned patch, so you might want to just use that instead.

cancerberosgx commented on 2016-01-17 15:29

Sorry, I'm new in arch and I don't want to edit my drivers source code even if I'm capable of. I'm having the same problem described by billbrown and I would like to know what is the expectation in these cases. *** I would expect that the author of this package (broadcom-wl) to fix the problem ? Is that right ? *** or should I perform the change manually? The problem is not serious for me since my devices seems to be working fine regardless this error, so I can wait.

Thanks in advanced to anyone that can explain this conceptual problem to me.

doxval commented on 2016-01-06 21:52

good time,
thank you, had the same problem as at billbrown.
now everything is OK.

Raimar commented on 2016-01-06 20:36

@billbrown: Please verify, that package linux-headers is installed with version 4.3.3-2, too. For me its:
$ pacman -Q linux linux-headers
linux 4.3.3-2
linux-headers 4.3.3-2

spidernet commented on 2016-01-06 20:14

@billbrown: since Linux 4.3, rdtscl() is no longer available and native_read_tsc() is renamed to rdtsc(). Move the macro contents in-line and call the new function. References:

A patch is available in the dkms version of broadcom-wl driver:

billbrown commented on 2016-01-04 14:59


I'm building with this kernel and still get a build error

Linux arch 4.3.3-2-ARCH #1 SMP PREEMPT Wed Dec 23 20:25:12 CET 2015 i686 GNU/Linux

Error ...

-> Extracting hybrid-v35-nodebug-pcoem-6_30_223_271.tar.gz with bsdtar
==> Starting prepare()...
patching file src/wl/sys/wl_linux.c
Hunk #1 succeeded at 207 (offset 2 lines).
patching file src/wl/sys/wl_linux.c
==> Starting build()...
make: Entering directory '/usr/lib/modules/4.3.3-2-ARCH/build'
CFG80211 API is prefered for this kernel version
Using CFG80211 API
LD /tmp/pacaurtmp-bill/broadcom-wl/src/built-in.o
CC [M] /tmp/pacaurtmp-bill/broadcom-wl/src/src/shared/linux_osl.o
/tmp/pacaurtmp-bill/broadcom-wl/src/src/shared/linux_osl.c: In function ‘osl_getcycles’:
/tmp/pacaurtmp-bill/broadcom-wl/src/src/shared/linux_osl.c:935:2: error: implicit declaration of function ‘rdtscl’ [-Werror=implicit-function-declaration]
/tmp/pacaurtmp-bill/broadcom-wl/src/src/shared/linux_osl.c:935:2: warning: ‘cycles’ is used uninitialized in this function [-Wuninitialized]
cc1: some warnings being treated as errors
scripts/ recipe for target '/tmp/pacaurtmp-bill/broadcom-wl/src/src/shared/linux_osl.o' failed
make[1]: *** [/tmp/pacaurtmp-bill/broadcom-wl/src/src/shared/linux_osl.o] Error 1
Makefile:1378: recipe for target '_module_/tmp/pacaurtmp-bill/broadcom-wl/src' failed
make: *** [_module_/tmp/pacaurtmp-bill/broadcom-wl/src] Error 2
make: Leaving directory '/usr/lib/modules/4.3.3-2-ARCH/build'
==> ERROR: A failure occurred in build().
:: Installing broadcom-wl package(s)...
:: failed to build broadcom-wl package(s)

I'm not sure how to fix that. Do you know how to fix that one?

ggppdd commented on 2016-01-01 00:44

Package is ok, just rebuild it with new kernel.

jumperpunk commented on 2015-10-29 14:38

I think I forgot to remove the package from my cache, so I rebuilt the package, then re-installed the package built against the old kernel (thinking I installed the rebuilt package). After upgrading the kernel to 4.2.5 and rebuilding/reinstalling the package the right way, it worked.

WhyNotHugo commented on 2015-10-28 15:41

... Or if you'd rather not have to manually rebuild, broadcom-wl-dkms will do it for you 're using stock kernel and have the proper depends.

Binero commented on 2015-10-28 15:35

@jumperpunk Just re-install the package. You'll have to do this every time 'linux' updates.

jumperpunk commented on 2015-10-28 15:18

Current version of this package ( doesn't seem to work with the latest kernel (4.2.4-1). `# modprobe wl` says "ERROR: could not insert 'wl': Exec format error".

Raimar commented on 2015-10-26 17:51

@paleRider67 Thank you for your offer. By the way, creating PKGBUILD files makes fun:

paleRider67 commented on 2015-10-26 02:39

@Raimar: thanks for that. If this changes one day, let me know if you can teach me how to do it and i'll take care of it.

Cheers :)

Raimar commented on 2015-10-18 12:32

@djhaines: You are welcome.
As long as I am using my BCM43142, I will support this package.

dhaines commented on 2015-10-18 12:17

@Raimar: thanks for taking over the reins.

Raimar commented on 2015-10-17 21:31

@galaux: Thanks
updated to version -271

galaux commented on 2015-10-17 21:14


YaourtYogurt commented on 2015-10-17 19:41

It's been over 2 weeks since that oldest orphan request. Shouldn't this package be disowned by now?

WhyNotHugo commented on 2015-10-17 14:03

It takes at least 2 weeks (the time given for the maintainer to reappear). Once that period has passed, it's a matter of a TU disowning it, which should be quite fast.

This seems to be the oldest request:

So hopefully, soon.

neosilky commented on 2015-10-17 12:03

@galaux: It seems there are 4 pending requests for this package. How long does an orphan request take to fulfill and how is the new maintainer decided?

galaux commented on 2015-10-17 12:00

@neosilky: there is an orphaning request pending for this package so once it is fulfilled we should have an active maintainer.

neosilky commented on 2015-10-17 11:41

Hey guys, I made a GitHub repo [1] with the updated PKGBUILD and patch I posted. It seems this package isn't being updated and I have a Broadcom card so I thought I'd keep care of it until something is done.

Instructions are in the README.


nolby commented on 2015-10-17 08:13

Version 271 + works also for me, strong and stable signal.
Does not wakeup after resume from sleep, but can be resolved using pm-utils.
Also bluetooth is working.

Raimar commented on 2015-10-11 17:26

@neosilky Thanks, only your mentioned patch [1] for -271 is needed with my BCM43142, too.

neosilky commented on 2015-10-11 10:09

This patch[0] fixes the issue in -271 for me. It was added to the -dkms version of the broadcom-wl driver.


mchladek commented on 2015-10-11 02:11 working OK for me. Used this packages's PKGBUILD, install, and modprobe.d files but removed all *.patch files.

Kernel: 4.2.2-1-ARCH
Broadcom Device: BCM4360 (14e4:43a0)

sikmir commented on 2015-10-10 20:54

Version without any patch do not work for me too - lead to crash.
(Broadcom Corporation BCM4352 802.11ac Wireless Network Adapter [14e4:43b1] (rev 03))

galaux commented on 2015-10-09 07:51

❯ lspci -vnn -d 14e4:
06:00.0 Network controller [0280]: Broadcom Corporation BCM4352 802.11ac Wireless Network Adapter [14e4:43b1] (rev 03)
Subsystem: Dell Device [1028:0019]
Flags: bus master, fast devsel, latency 0, IRQ 18
Memory at f7a00000 (64-bit, non-prefetchable) [size=32K]
Memory at f7800000 (64-bit, non-prefetchable) [size=2M]
Capabilities: <access denied>
Kernel driver in use: wl
Kernel modules: bcma, wl

❯ uname -r

Raimar commented on 2015-10-08 19:36

Version without any patch do not work with BCM43142 802.11b/g/n (rev 01). Only works for me.

WhyNotHugo commented on 2015-10-08 18:09

@saexan @galaux: Can you let us know on what hardware and kernel this is? :)

salexan commented on 2015-10-08 08:42

Version without any patch worked for me as well.

galaux commented on 2015-10-06 12:02

FYI, built this package with latest without any patch and no crash.

nolby commented on 2015-10-06 11:50

Thanks, the snapshot from works.
I apologize for not reading the 3d from the beginning, you where gentle, RTFM never hurts :-)

bocadillodeatun commented on 2015-10-05 20:50

For those not reading the comments from the beginning: In order to build against the latest kernel (4.2+), download the snapshot from here:

For some reason this AUR PKGBUILD has not been updated with the needed patch and is not working.

By the way, the only thing that needs to be updated is file "linux-recent.patch" (see comment by prpb 5 comments below this one)

Binero commented on 2015-10-05 20:48

I was able to just change the package version to 271, remove all the integrity keys, remove all the patches and remove modprobe.d. That compiled fine and I can once again use my wireless card on the newest kernel.

nolby commented on 2015-10-05 19:24

Today switched to kernel 4.2.2-1 (x86_64) and rebuilding wl with yaourt gives an error:
==> Starting build()...
make: Entering directory '/usr/lib/modules/4.2.2-1-ARCH/build'
CFG80211 API is prefered for this kernel version
Using CFG80211 API
LD /tmp/yaourt-tmp-nolby/aur-broadcom-wl/src/built-in.o
CC [M] /tmp/yaourt-tmp-nolby/aur-broadcom-wl/src/src/shared/linux_osl.o
CC [M] /tmp/yaourt-tmp-nolby/aur-broadcom-wl/src/src/wl/sys/wl_linux.o
CC [M] /tmp/yaourt-tmp-nolby/aur-broadcom-wl/src/src/wl/sys/wl_iw.o
CC [M] /tmp/yaourt-tmp-nolby/aur-broadcom-wl/src/src/wl/sys/wl_cfg80211_hybrid.o
/tmp/yaourt-tmp-nolby/aur-broadcom-wl/src/src/wl/sys/wl_cfg80211_hybrid.c: In function ‘wl_notify_connect_status’:
/tmp/yaourt-tmp-nolby/aur-broadcom-wl/src/src/wl/sys/wl_cfg80211_hybrid.c:2075:4: error: too few arguments to function ‘cfg80211_disconnected’
cfg80211_disconnected(ndev, 0, NULL, 0, GFP_KERNEL);
In file included from /tmp/yaourt-tmp-nolby/aur-broadcom-wl/src/src/wl/sys/wl_cfg80211_hybrid.c:33:0:
include/net/cfg80211.h:4584:6: note: declared here
void cfg80211_disconnected(struct net_device *dev, u16 reason,
scripts/ recipe for target '/tmp/yaourt-tmp-nolby/aur-broadcom-wl/src/src/wl/sys/wl_cfg80211_hybrid.o' failed
make[1]: *** [/tmp/yaourt-tmp-nolby/aur-broadcom-wl/src/src/wl/sys/wl_cfg80211_hybrid.o] Error 1
Makefile:1386: recipe for target '_module_/tmp/yaourt-tmp-nolby/aur-broadcom-wl/src' failed
make: *** [_module_/tmp/yaourt-tmp-nolby/aur-broadcom-wl/src] Error 2
make: Leaving directory '/usr/lib/modules/4.2.2-1-ARCH/build'
==> ERROR: A failure occurred in build().

Some ideas?


neosilky commented on 2015-10-05 15:42

So I switched over to 4.2.2 and i_magnific0's addition to -248 still works fine. I removed all the patches, compiled -271 but when I use it I get a similar issue to dwysocki.

I am currently back on -248 until it is fixed.

dwysocki commented on 2015-10-03 18:46

It seems I spoke too soon. With iwlwifi I'm not seeing my wireless card when I run `ip addr`. I'm not sure what I could have done to mess that up.

dwysocki commented on 2015-10-03 16:37

I did as you said, galux, and everything appeared to install correctly. I modprobed wl, and rebooted. I could successfully ping, but as soon as I opened a browser or tried to pacman -Syu, my computer would completely freeze and the caps lock light would blink on and off. Presumably this was due to some network protocol giving it trouble.

Turns out this was caused by the wl module. I switched it for iwlwifi, and now everything works.

This has been a learning experience, but I've finally caved and ordered an Intel wireless card, so I never have to deal with this kind of thing again :)

prpb commented on 2015-10-03 16:30

--- a/src/src/wl/sys/wl_cfg80211_hybrid.c 2015-10-03 17:27:33.865678631 +0200
+++ b/src/src/wl/sys/wl_cfg80211_hybrid.c 2015-10-03 17:29:04.236127783 +0200
@@ -2072,7 +2072,7 @@ wl_notify_connect_status(struct wl_cfg80
else if ((event == WLC_E_LINK && ~(flags & WLC_EVENT_MSG_LINK)) ||
event == WLC_E_DEAUTH_IND || event == WLC_E_DISASSOC_IND) {
- cfg80211_disconnected(ndev, 0, NULL, 0, GFP_KERNEL);
+ cfg80211_disconnected(ndev, 0, NULL, 0, false, GFP_KERNEL);
clear_bit(WL_STATUS_CONNECTED, &wl->status);

sikmir commented on 2015-10-03 13:43

/tmp/yaourt-tmp-sikmir/aur-broadcom-wl/src/src/wl/sys/wl_cfg80211_hybrid.c: In function ‘wl_notify_connect_status’:
/tmp/yaourt-tmp-sikmir/aur-broadcom-wl/src/src/wl/sys/wl_cfg80211_hybrid.c:2075:4: error: too few arguments to function ‘cfg80211_disconnected’
cfg80211_disconnected(ndev, 0, NULL, 0, GFP_KERNEL);
In file included from /tmp/yaourt-tmp-sikmir/aur-broadcom-wl/src/src/wl/sys/wl_cfg80211_hybrid.c:33:0:
include/net/cfg80211.h:4584:6: note: declared here
void cfg80211_disconnected(struct net_device *dev, u16 reason,
scripts/ recipe for target '/tmp/yaourt-tmp-sikmir/aur-broadcom-wl/src/src/wl/sys/wl_cfg80211_hybrid.o' failed
make[1]: *** [/tmp/yaourt-tmp-sikmir/aur-broadcom-wl/src/src/wl/sys/wl_cfg80211_hybrid.o] Error 1
Makefile:1386: recipe for target '_module_/tmp/yaourt-tmp-sikmir/aur-broadcom-wl/src' failed
make: *** [_module_/tmp/yaourt-tmp-sikmir/aur-broadcom-wl/src] Error 2
make: Leaving directory '/usr/lib/modules/4.2.2-1-ARCH/build'
==> ERROR: A failure occurred in build().
==> ERROR: Makepkg was unable to build broadcom-wl.

galaux commented on 2015-10-03 09:42

Latest version builds fine without any of the 3 patches (`linux-recent.patch` and `gcc.patch` seem to have been merged upstream – as for `license.patch` … well I don't really get what it brings anyway).
I would say: remove all 3 patches, update version and SHA and we should be good to go!

dwysocki commented on 2015-10-02 23:28

I changed the pkgver to, and updated the sha256sums_x86_64 variable to the actual SHA, but now I'm getting this error during compilation.

==> Starting prepare()...
patching file src/wl/sys/wl_cfg80211_hybrid.c
Hunk #1 FAILED at 63.
Hunk #2 FAILED at 1387.
Hunk #3 FAILED at 1421.
Hunk #4 FAILED at 1441.
Hunk #5 FAILED at 1454.
Hunk #6 FAILED at 2010.
Hunk #7 FAILED at 2071.
Hunk #8 FAILED at 2629.
8 out of 8 hunks FAILED -- saving rejects to file src/wl/sys/wl_cfg80211_hybrid.c.rej
patching file src/wl/sys/wl_dbg.h
patching file src/wl/sys/wl_linux.c
Reversed (or previously applied) patch detected! Assume -R? [n]

botto commented on 2015-10-02 23:01

The latest driver from broadcom compiles now, just need the package version to be updated.

dwysocki commented on 2015-10-02 22:27

Upgraded to Linux 4.2 without realizing this was an issue. Now I don't have this driver installed anymore (foolishly tried to uninstall/reinstall), and now I get a compilation error even with Linux 4.1.6. Any advice while I wait for the package to get patched? I'm currently stuck on ethernet :(

Here's the error I'm getting when trying to install:

==> Starting build()...
make: Entering directory '/usr/lib/modules/4.1.6-1-ARCH/build'
make: *** No targets specified and no makefile found. Stop.
make: Leaving directory '/usr/lib/modules/4.1.6-1-ARCH/build'
==> ERROR: A failure occurred in build().
The build failed.

CjK commented on 2015-10-02 10:57

Both kernel-related patches should no longer be necessary with the new driver release (v271) from Broadcom.

dhaines commented on 2015-10-01 00:14

Has the maintainer disappeared or something?

cschwarz commented on 2015-09-30 23:20

Can confirm the patch by i_magnific0 worked.

fosskers commented on 2015-09-30 20:25

Thanks for the patch, i_magnific0.

andrewboktor commented on 2015-09-30 04:17

I should read the comments here before writing my own patch.

saultdon commented on 2015-09-28 15:40


I was able to get it compiled using the PKGBUILD ( from

See i_magnific0 comment below.

fincan commented on 2015-09-28 13:21

linux 4.2.1 is here, but I could not install this package with the kernel.

i_magnific0 commented on 2015-09-11 06:59

EpLightning, thank you for providing the patch. I have added this to the package source and changed the PKGBUILD file. They are online here:

I tried push the changes to the AUR git system, but this didn't work.

EpLightning commented on 2015-09-08 12:54

Patch for building against 4.2 kernel: