aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/broadcom-wl/patches
diff options
context:
space:
mode:
authorAdrian Schmutzler <freifunk@adrianschmutzler.de>2020-04-03 17:16:35 +0200
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>2020-04-12 12:41:12 +0200
commit23d3fafd87f9040a9b90873d81ab52539470649e (patch)
tree76b8c1c22edec496916fd991f890744e05a1769d /package/kernel/broadcom-wl/patches
parent6c521f6828833d911c8a3dabc6849f3045bcc5ac (diff)
downloadupstream-23d3fafd87f9040a9b90873d81ab52539470649e.tar.gz
upstream-23d3fafd87f9040a9b90873d81ab52539470649e.tar.bz2
upstream-23d3fafd87f9040a9b90873d81ab52539470649e.zip
broadcom-wl: fix compilation with kernel 5.4
This adds two fixes for compilation with kernel 5.4: 1. dev_open from include/linux/netdevice.h needs a second parameter since kernel 5.0: 00f54e68924e ("net: core: dev: Add extack argument to dev_open()") 2. get_ds() macro definition has been dropped since kernel 5.1: 736706bee329 ("get rid of legacy 'get_ds()' function") Since get_ds() has been just a macro before, replace it in the driver instead of creating a version switch. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Diffstat (limited to 'package/kernel/broadcom-wl/patches')
-rw-r--r--package/kernel/broadcom-wl/patches/916-fix-compilation-for-5_4.patch18
1 files changed, 18 insertions, 0 deletions
diff --git a/package/kernel/broadcom-wl/patches/916-fix-compilation-for-5_4.patch b/package/kernel/broadcom-wl/patches/916-fix-compilation-for-5_4.patch
new file mode 100644
index 0000000000..bc7b63df08
--- /dev/null
+++ b/package/kernel/broadcom-wl/patches/916-fix-compilation-for-5_4.patch
@@ -0,0 +1,18 @@
+--- a/driver/wl_iw.c
++++ b/driver/wl_iw.c
+@@ -112,10 +112,14 @@
+ ifr.ifr_data = (caddr_t) &ioc;
+
+ /* Must be up for virtually all useful ioctls */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 0, 0)
++ dev_open(dev, NULL);
++#else
+ dev_open(dev);
++#endif
+
+ fs = get_fs();
+- set_fs(get_ds());
++ set_fs(KERNEL_DS);
+ ret = dev->netdev_ops->ndo_do_ioctl(dev, &ifr, SIOCDEVPRIVATE);
+ set_fs(fs);
+