aboutsummaryrefslogtreecommitdiffstats
path: root/package/acx-mac80211/patches
diff options
context:
space:
mode:
Diffstat (limited to 'package/acx-mac80211/patches')
-rw-r--r--package/acx-mac80211/patches/001-make-compatible-with-recent-mac80211.patch43
-rw-r--r--package/acx-mac80211/patches/004-ratelimit_compile_fix.patch10
-rw-r--r--package/acx-mac80211/patches/100-hw-queue-check-fix.patch42
3 files changed, 95 insertions, 0 deletions
diff --git a/package/acx-mac80211/patches/001-make-compatible-with-recent-mac80211.patch b/package/acx-mac80211/patches/001-make-compatible-with-recent-mac80211.patch
new file mode 100644
index 000000000..34ecf6d4a
--- /dev/null
+++ b/package/acx-mac80211/patches/001-make-compatible-with-recent-mac80211.patch
@@ -0,0 +1,43 @@
+--- a/acx_func.h
++++ b/acx_func.h
+@@ -335,8 +335,11 @@ void acx_process_rxbuf(acx_device_t *ade
+ */
+ #if CONFIG_ACX_MAC80211_VERSION < KERNEL_VERSION(2, 6, 39)
+ int acx_op_tx(struct ieee80211_hw *hw, struct sk_buff *skb);
+-#else
++#elif CONFIG_ACX_MAC80211_VERSION < KERNEL_VERSION(3, 7, 0)
+ void acx_op_tx(struct ieee80211_hw *hw, struct sk_buff *skb);
++#else
++void acx_op_tx(struct ieee80211_hw *hw, struct ieee80211_tx_control *control,
++ struct sk_buff *skb);
+ #endif
+
+ void acx_tx_work(struct work_struct *work);
+--- a/common.c
++++ b/common.c
+@@ -232,8 +232,11 @@ static void acx_rx(acx_device_t *adev, r
+ /* Tx Path */
+ #if CONFIG_ACX_MAC80211_VERSION < KERNEL_VERSION(2, 6, 39)
+ int acx_op_tx(struct ieee80211_hw *hw, struct sk_buff *skb);
+-#else
++#elif CONFIG_ACX_MAC80211_VERSION < KERNEL_VERSION(3, 7, 0)
+ void acx_op_tx(struct ieee80211_hw *hw, struct sk_buff *skb);
++#else
++void acx_op_tx(struct ieee80211_hw *hw, struct ieee80211_tx_control *control,
++ struct sk_buff *skb);
+ #endif
+
+ //-void acx_tx_work(struct work_struct *work);
+@@ -5183,7 +5186,12 @@ out:
+ * acx_compat, and hiding this #if/else. OTOH, inclusion doesnt care
+ * about old kernels
+ */
++#if CONFIG_ACX_MAC80211_VERSION < KERNEL_VERSION(3, 7, 0)
+ OP_TX_RET_TYPE acx_op_tx(struct ieee80211_hw *hw, struct sk_buff *skb)
++#else
++void acx_op_tx(struct ieee80211_hw *hw, struct ieee80211_tx_control *control,
++ struct sk_buff *skb)
++#endif
+ {
+ acx_device_t *adev = ieee2adev(hw);
+
diff --git a/package/acx-mac80211/patches/004-ratelimit_compile_fix.patch b/package/acx-mac80211/patches/004-ratelimit_compile_fix.patch
new file mode 100644
index 000000000..56110eab0
--- /dev/null
+++ b/package/acx-mac80211/patches/004-ratelimit_compile_fix.patch
@@ -0,0 +1,10 @@
+--- a/common.c
++++ b/common.c
+@@ -34,6 +34,7 @@
+ #include <linux/pci.h>
+ #include <linux/nl80211.h>
+ #include <linux/ieee80211.h>
++#include <linux/ratelimit.h>
+
+ #include <net/mac80211.h>
+
diff --git a/package/acx-mac80211/patches/100-hw-queue-check-fix.patch b/package/acx-mac80211/patches/100-hw-queue-check-fix.patch
new file mode 100644
index 000000000..62f2998e8
--- /dev/null
+++ b/package/acx-mac80211/patches/100-hw-queue-check-fix.patch
@@ -0,0 +1,42 @@
+--- a/mem.c
++++ b/mem.c
+@@ -2026,7 +2026,7 @@ static int __devinit acxmem_probe(struct
+ */
+ ieee->wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION)
+ | BIT(NL80211_IFTYPE_ADHOC);
+- ieee->queues = 1;
++ ieee->queues = 4;
+ /* OW TODO Check if RTS/CTS threshold can be included here */
+
+ /* TODO: although in the original driver the maximum value was
+--- a/pci.c
++++ b/pci.c
+@@ -1010,7 +1010,7 @@ static int __devinit acxpci_probe(struct
+ BIT(NL80211_IFTYPE_STATION) |
+ BIT(NL80211_IFTYPE_ADHOC) |
+ BIT(NL80211_IFTYPE_AP);
+- ieee->queues = 1;
++ ieee->queues = 4;
+ /* OW TODO Check if RTS/CTS threshold can be included here */
+
+ /* TODO: although in the original driver the maximum value was
+@@ -1682,7 +1682,7 @@ static __devinit int vlynq_probe(struct
+ BIT(NL80211_IFTYPE_STATION) |
+ BIT(NL80211_IFTYPE_ADHOC) |
+ BIT(NL80211_IFTYPE_AP);
+- ieee->queues = 1;
++ ieee->queues = 4;
+
+ /* We base signal quality on winlevel approach of previous driver
+ * TODO OW 20100615 This should into a common init code
+--- a/usb.c
++++ b/usb.c
+@@ -1627,7 +1627,7 @@ acxusb_probe(struct usb_interface *intf,
+ */
+ ieee->wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION)
+ | BIT(NL80211_IFTYPE_ADHOC);
+- ieee->queues = 1;
++ ieee->queues = 4;
+ // OW TODO Check if RTS/CTS threshold can be included here
+
+ // We base signal quality on winlevel approach of previous driver