summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--package/kernel/broadcom-wl/Makefile4
-rw-r--r--package/kernel/broadcom-wl/patches/012-compat-3.10.patch47
2 files changed, 49 insertions, 2 deletions
diff --git a/package/kernel/broadcom-wl/Makefile b/package/kernel/broadcom-wl/Makefile
index 8171014a7f..1a7da0f89d 100644
--- a/package/kernel/broadcom-wl/Makefile
+++ b/package/kernel/broadcom-wl/Makefile
@@ -24,7 +24,7 @@ include $(INCLUDE_DIR)/package.mk
define Package/broadcom-wl/Default
SECTION:=kernel
CATEGORY:=Kernel modules
- DEPENDS:=@PACKAGE_kmod-brcm-wl||PACKAGE_kmod-brcm-wl-mini @!LINUX_3_10
+ DEPENDS:=@PACKAGE_kmod-brcm-wl||PACKAGE_kmod-brcm-wl-mini
SUBMENU:=Proprietary BCM43xx WiFi driver
SUBMENUDEP:=@TARGET_brcm47xx||TARGET_brcm63xx
endef
@@ -32,7 +32,7 @@ endef
define KernelPackage/brcm-wl/Default
$(call Package/broadcom-wl/Default)
SECTION:=kernel
- DEPENDS:=@TARGET_brcm47xx||TARGET_brcm63xx +wireless-tools @!LINUX_3_10
+ DEPENDS:=@TARGET_brcm47xx||TARGET_brcm63xx +wireless-tools
TITLE:=Kernel driver for BCM43xx chipsets
FILES:=$(PKG_BUILD_DIR)/driver$(1)/wl.ko $(PKG_BUILD_DIR)/glue/wl_glue.ko
AUTOLOAD:=$(call AutoLoad,30,wl_glue wl)
diff --git a/package/kernel/broadcom-wl/patches/012-compat-3.10.patch b/package/kernel/broadcom-wl/patches/012-compat-3.10.patch
new file mode 100644
index 0000000000..0e0415f9cd
--- /dev/null
+++ b/package/kernel/broadcom-wl/patches/012-compat-3.10.patch
@@ -0,0 +1,47 @@
+--- a/driver/wl_linux.c
++++ b/driver/wl_linux.c
+@@ -349,7 +349,7 @@ static void wl_mic_error(wl_info_t *wl,
+ defined(WL_MONITOR)
+ static int wl_schedule_task(wl_info_t *wl, void (*fn)(struct wl_task *), void *context);
+ #endif
+-#if defined(CONFIG_PROC_FS)
++#if defined(CONFIG_PROC_FS) && (LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0))
+ static int wl_read_proc(char *buffer, char **start, off_t offset, int length, int *eof, void *data);
+ #endif /* defined(CONFIG_PROC_FS) */
+ #ifdef BCMDBG
+@@ -516,7 +516,7 @@ wl_attach(uint16 vendor, uint16 device,
+ struct net_device *dev;
+ wl_if_t *wlif;
+ wl_info_t *wl;
+-#if defined(CONFIG_PROC_FS)
++#if defined(CONFIG_PROC_FS) && (LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0))
+ char tmp[128];
+ #endif
+ osl_t *osh;
+@@ -660,7 +660,7 @@ wl_attach(uint16 vendor, uint16 device,
+ WL_ERROR(("wl%d: Error setting MPC variable to 0\n", unit));
+ }
+ }
+-#if defined(CONFIG_PROC_FS)
++#if defined(CONFIG_PROC_FS) && (LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0))
+ /* create /proc/net/wl<unit> */
+ sprintf(tmp, "net/wl%d", wl->pub->unit);
+ create_proc_read_entry(tmp, 0, 0, wl_read_proc, (void*)wl);
+@@ -806,7 +806,7 @@ wl_dbus_disconnect_cb(void *arg)
+ }
+ #endif /* BCMDBUS */
+
+-#if defined(CONFIG_PROC_FS)
++#if defined(CONFIG_PROC_FS) && (LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0))
+ static int
+ wl_read_proc(char *buffer, char **start, off_t offset, int length, int *eof, void *data)
+ {
+@@ -1137,7 +1137,7 @@ wl_free(wl_info_t *wl)
+
+ /* free common resources */
+ if (wl->wlc) {
+-#if defined(CONFIG_PROC_FS)
++#if defined(CONFIG_PROC_FS) && (LINUX_VERSION_CODE < KERNEL_VERSION(3,10,0))
+ char tmp[128];
+ /* remove /proc/net/wl<unit> */
+ sprintf(tmp, "net/wl%d", wl->pub->unit);