summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorRaimar Bühmann2017-05-03 22:15:41 +0200
committerRaimar Bühmann2017-05-03 22:16:09 +0200
commit5224162babf46b196dda42519445def0477bad55 (patch)
treef6cbe36df869f859c200a27ea8b5fe856208c33a
parentdf0f7d5200d4dea77bab1d9f0fbe4f77138b00a9 (diff)
downloadaur-5224162babf46b196dda42519445def0477bad55.tar.gz
add linux411.patch created by wichmannpas
-rw-r--r--.SRCINFO4
-rw-r--r--PKGBUILD9
-rw-r--r--linux411.patch52
3 files changed, 61 insertions, 4 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 1b34be97844b..444a6eeb12c4 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = broadcom-wl
pkgdesc = Broadcom 802.11abgn hybrid Linux networking device driver
pkgver = 6.30.223.271
- pkgrel = 4
+ pkgrel = 5
url = https://www.broadcom.com/support/802.11
install = install
arch = i686
@@ -14,11 +14,13 @@ pkgbase = broadcom-wl
source = wl_linux.c.patch
source = linux47.patch
source = linux48.patch
+ source = linux411.patch
sha256sums = b4aca51ac5ed20cb79057437be7baf3650563b7a9d5efc515f0b9b34fbb9dc32
sha256sums = 2f70be509aac743bec2cc3a19377be311a60a1c0e4a70ddd63ea89fae5df08ac
sha256sums = 583335a6edb2ed1094977c401643d3e60471c6bc5c3ea81f45910a9cccb06032
sha256sums = 30ce1d5e8bf78aee487d0f3ac76756e1060777f70ed1a9cf95215c3a52cfbe2e
sha256sums = 833af3b209d6a101d9094db16480bda2ad9a85797059b0ae0b13235ad3818e9c
+ sha256sums = 977b1663ce055860b0b60e7cf882658f507d81909f935d1a8b785896f64176e8
source_i686 = https://docs.broadcom.com/docs-and-downloads/docs/linux_sta/hybrid-v35-nodebug-pcoem-6_30_223_271.tar.gz
sha256sums_i686 = 4f8b70b293ac8cc5c70e571ad5d1878d0f29d133a46fe7869868d9c19b5058cd
source_x86_64 = https://docs.broadcom.com/docs-and-downloads/docs/linux_sta/hybrid-v35_64-nodebug-pcoem-6_30_223_271.tar.gz
diff --git a/PKGBUILD b/PKGBUILD
index 2c5bfb80b4a4..a1fc7ed834c6 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -6,7 +6,7 @@
pkgname=broadcom-wl
pkgver=6.30.223.271
-pkgrel=4
+pkgrel=5
pkgdesc='Broadcom 802.11abgn hybrid Linux networking device driver'
url='https://www.broadcom.com/support/802.11'
@@ -21,15 +21,17 @@ source=('modprobe.d'
'wl_linux.c.patch'
'linux47.patch'
'linux48.patch'
+ 'linux411.patch'
)
-
+
source_i686=("https://docs.broadcom.com/docs-and-downloads/docs/linux_sta/hybrid-v35-nodebug-pcoem-${pkgver//./_}.tar.gz")
source_x86_64=("https://docs.broadcom.com/docs-and-downloads/docs/linux_sta/hybrid-v35_64-nodebug-pcoem-${pkgver//./_}.tar.gz")
sha256sums=('b4aca51ac5ed20cb79057437be7baf3650563b7a9d5efc515f0b9b34fbb9dc32'
'2f70be509aac743bec2cc3a19377be311a60a1c0e4a70ddd63ea89fae5df08ac'
'583335a6edb2ed1094977c401643d3e60471c6bc5c3ea81f45910a9cccb06032'
'30ce1d5e8bf78aee487d0f3ac76756e1060777f70ed1a9cf95215c3a52cfbe2e'
- '833af3b209d6a101d9094db16480bda2ad9a85797059b0ae0b13235ad3818e9c')
+ '833af3b209d6a101d9094db16480bda2ad9a85797059b0ae0b13235ad3818e9c'
+ '977b1663ce055860b0b60e7cf882658f507d81909f935d1a8b785896f64176e8')
sha256sums_i686=('4f8b70b293ac8cc5c70e571ad5d1878d0f29d133a46fe7869868d9c19b5058cd')
sha256sums_x86_64=('5f79774d5beec8f7636b59c0fb07a03108eef1e3fd3245638b20858c714144be')
@@ -43,6 +45,7 @@ prepare() {
patch -p1 -i wl_linux.c.patch
patch -p1 -i linux47.patch
patch -p1 -i linux48.patch
+ patch -p1 -i linux411.patch
sed -e "/BRCM_WLAN_IFNAME/s:eth:wlan:" \
-i src/wl/sys/wl_linux.c
diff --git a/linux411.patch b/linux411.patch
new file mode 100644
index 000000000000..a779f8c84cfd
--- /dev/null
+++ b/linux411.patch
@@ -0,0 +1,52 @@
+diff --git a/src/wl/sys/wl_cfg80211_hybrid.c b/src/wl/sys/wl_cfg80211_hybrid.c
+index a9671e2..da36405 100644
+--- a/src/wl/sys/wl_cfg80211_hybrid.c
++++ b/src/wl/sys/wl_cfg80211_hybrid.c
+@@ -30,6 +30,9 @@
+ #include <linux/kthread.h>
+ #include <linux/netdevice.h>
+ #include <linux/ieee80211.h>
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0)
++#include <linux/sched/signal.h>
++#endif
+ #include <net/cfg80211.h>
+ #include <linux/nl80211.h>
+ #include <net/rtnetlink.h>
+diff --git a/src/wl/sys/wl_linux.c b/src/wl/sys/wl_linux.c
+index 489c9f5..f8278ad 100644
+--- a/src/wl/sys/wl_linux.c
++++ b/src/wl/sys/wl_linux.c
+@@ -117,6 +117,9 @@ int wl_found = 0;
+
+ typedef struct priv_link {
+ wl_if_t *wlif;
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0)
++ unsigned long last_rx;
++#endif
+ } priv_link_t;
+
+ #define WL_DEV_IF(dev) ((wl_if_t*)((priv_link_t*)DEV_PRIV(dev))->wlif)
+@@ -2450,6 +2453,9 @@ wl_monitor(wl_info_t *wl, wl_rxsts_t *rxsts, void *p)
+ {
+ struct sk_buff *oskb = (struct sk_buff *)p;
+ struct sk_buff *skb;
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0)
++ priv_link_t *priv_link;
++#endif
+ uchar *pdata;
+ uint len;
+
+@@ -2916,7 +2922,13 @@ wl_monitor(wl_info_t *wl, wl_rxsts_t *rxsts, void *p)
+ if (skb == NULL) return;
+
+ skb->dev = wl->monitor_dev;
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0)
++ priv_link = MALLOC(wl->osh, sizeof(priv_link_t));
++ priv_link = netdev_priv(skb->dev);
++ priv_link->last_rx = jiffies;
++#else
+ skb->dev->last_rx = jiffies;
++#endif
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
+ skb_reset_mac_header(skb);
+ #else