aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2015-06-21 17:52:12 +0000
committerFelix Fietkau <nbd@openwrt.org>2015-06-21 17:52:12 +0000
commit20b3f6683de9fef52610c15ca3035c61960d537c (patch)
tree634110701c586db09f00c3d79d3921950344bfd5 /package/kernel
parent3a237d638e3be6b5614ca2a9f713c6b2fc247070 (diff)
downloadupstream-20b3f6683de9fef52610c15ca3035c61960d537c.tar.gz
upstream-20b3f6683de9fef52610c15ca3035c61960d537c.tar.bz2
upstream-20b3f6683de9fef52610c15ca3035c61960d537c.zip
ath9k: fix ar956x device detection
Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 46090
Diffstat (limited to 'package/kernel')
-rw-r--r--package/kernel/mac80211/patches/385-ath9k_hw-fix-device-ID-check-for-AR956x.patch20
-rw-r--r--package/kernel/mac80211/patches/510-ath9k_intr_mitigation_tweak.patch2
-rw-r--r--package/kernel/mac80211/patches/513-ath9k_add_pci_ids.patch2
-rw-r--r--package/kernel/mac80211/patches/542-ath9k_debugfs_diag.patch4
-rw-r--r--package/kernel/mac80211/patches/544-ath9k-ar933x-usb-hang-workaround.patch8
5 files changed, 28 insertions, 8 deletions
diff --git a/package/kernel/mac80211/patches/385-ath9k_hw-fix-device-ID-check-for-AR956x.patch b/package/kernel/mac80211/patches/385-ath9k_hw-fix-device-ID-check-for-AR956x.patch
new file mode 100644
index 0000000000..2674efb91f
--- /dev/null
+++ b/package/kernel/mac80211/patches/385-ath9k_hw-fix-device-ID-check-for-AR956x.patch
@@ -0,0 +1,20 @@
+From: Felix Fietkau <nbd@openwrt.org>
+Date: Sun, 21 Jun 2015 19:45:59 +0200
+Subject: [PATCH] ath9k_hw: fix device ID check for AR956x
+
+Because of the missing return, the macVersion value was being
+overwritten with an invalid register read
+
+Signed-off-by: Felix Fietkau <nbd@openwrt.org>
+---
+
+--- a/drivers/net/wireless/ath/ath9k/hw.c
++++ b/drivers/net/wireless/ath/ath9k/hw.c
+@@ -278,6 +278,7 @@ static void ath9k_hw_read_revisions(stru
+ return;
+ case AR9300_DEVID_QCA956X:
+ ah->hw_version.macVersion = AR_SREV_VERSION_9561;
++ return;
+ }
+
+ val = REG_READ(ah, AR_SREV) & AR_SREV_ID;
diff --git a/package/kernel/mac80211/patches/510-ath9k_intr_mitigation_tweak.patch b/package/kernel/mac80211/patches/510-ath9k_intr_mitigation_tweak.patch
index c18fd9b834..ed2cfee72c 100644
--- a/package/kernel/mac80211/patches/510-ath9k_intr_mitigation_tweak.patch
+++ b/package/kernel/mac80211/patches/510-ath9k_intr_mitigation_tweak.patch
@@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c
-@@ -388,13 +388,8 @@ static void ath9k_hw_init_config(struct
+@@ -389,13 +389,8 @@ static void ath9k_hw_init_config(struct
ah->config.rx_intr_mitigation = true;
diff --git a/package/kernel/mac80211/patches/513-ath9k_add_pci_ids.patch b/package/kernel/mac80211/patches/513-ath9k_add_pci_ids.patch
index 2f552100fc..40b5c81b80 100644
--- a/package/kernel/mac80211/patches/513-ath9k_add_pci_ids.patch
+++ b/package/kernel/mac80211/patches/513-ath9k_add_pci_ids.patch
@@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c
-@@ -646,6 +646,7 @@ int ath9k_hw_init(struct ath_hw *ah)
+@@ -647,6 +647,7 @@ int ath9k_hw_init(struct ath_hw *ah)
/* These are all the AR5008/AR9001/AR9002/AR9003 hardware family of chipsets */
switch (ah->hw_version.devid) {
diff --git a/package/kernel/mac80211/patches/542-ath9k_debugfs_diag.patch b/package/kernel/mac80211/patches/542-ath9k_debugfs_diag.patch
index 2803af49f3..631a692dd4 100644
--- a/package/kernel/mac80211/patches/542-ath9k_debugfs_diag.patch
+++ b/package/kernel/mac80211/patches/542-ath9k_debugfs_diag.patch
@@ -94,7 +94,7 @@
struct ath_gen_timer *ath_gen_timer_alloc(struct ath_hw *ah,
--- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c
-@@ -1803,6 +1803,20 @@ u32 ath9k_hw_get_tsf_offset(struct times
+@@ -1804,6 +1804,20 @@ u32 ath9k_hw_get_tsf_offset(struct times
}
EXPORT_SYMBOL(ath9k_hw_get_tsf_offset);
@@ -115,7 +115,7 @@
int ath9k_hw_reset(struct ath_hw *ah, struct ath9k_channel *chan,
struct ath9k_hw_cal_data *caldata, bool fastcc)
{
-@@ -2011,6 +2025,7 @@ int ath9k_hw_reset(struct ath_hw *ah, st
+@@ -2012,6 +2026,7 @@ int ath9k_hw_reset(struct ath_hw *ah, st
ar9003_hw_disable_phy_restart(ah);
ath9k_hw_apply_gpio_override(ah);
diff --git a/package/kernel/mac80211/patches/544-ath9k-ar933x-usb-hang-workaround.patch b/package/kernel/mac80211/patches/544-ath9k-ar933x-usb-hang-workaround.patch
index 9b00135d2a..240b898c0d 100644
--- a/package/kernel/mac80211/patches/544-ath9k-ar933x-usb-hang-workaround.patch
+++ b/package/kernel/mac80211/patches/544-ath9k-ar933x-usb-hang-workaround.patch
@@ -20,7 +20,7 @@
/******************/
/* Chip Revisions */
/******************/
-@@ -1381,6 +1394,9 @@ static bool ath9k_hw_set_reset(struct at
+@@ -1382,6 +1395,9 @@ static bool ath9k_hw_set_reset(struct at
if (AR_SREV_9100(ah))
udelay(50);
@@ -30,7 +30,7 @@
return true;
}
-@@ -1480,6 +1496,9 @@ static bool ath9k_hw_chip_reset(struct a
+@@ -1481,6 +1497,9 @@ static bool ath9k_hw_chip_reset(struct a
ar9003_hw_internal_regulator_apply(ah);
ath9k_hw_init_pll(ah, chan);
@@ -40,7 +40,7 @@
return true;
}
-@@ -1781,8 +1800,14 @@ static int ath9k_hw_do_fastcc(struct ath
+@@ -1782,8 +1801,14 @@ static int ath9k_hw_do_fastcc(struct ath
if (AR_SREV_9271(ah))
ar9002_hw_load_ani_reg(ah, chan);
@@ -55,7 +55,7 @@
return -EINVAL;
}
-@@ -2036,6 +2061,9 @@ int ath9k_hw_reset(struct ath_hw *ah, st
+@@ -2037,6 +2062,9 @@ int ath9k_hw_reset(struct ath_hw *ah, st
ath9k_hw_set_radar_params(ah);
}