aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches/ath/101-ath9k-use-iowrite32-over-__raw_writel.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/kernel/mac80211/patches/ath/101-ath9k-use-iowrite32-over-__raw_writel.patch')
-rw-r--r--package/kernel/mac80211/patches/ath/101-ath9k-use-iowrite32-over-__raw_writel.patch40
1 files changed, 40 insertions, 0 deletions
diff --git a/package/kernel/mac80211/patches/ath/101-ath9k-use-iowrite32-over-__raw_writel.patch b/package/kernel/mac80211/patches/ath/101-ath9k-use-iowrite32-over-__raw_writel.patch
new file mode 100644
index 0000000000..dade5cfe3a
--- /dev/null
+++ b/package/kernel/mac80211/patches/ath/101-ath9k-use-iowrite32-over-__raw_writel.patch
@@ -0,0 +1,40 @@
+From bd8eca2c0f5542c5b20b1c2cc506b8b8a46018df Mon Sep 17 00:00:00 2001
+From: Christian Lamparter <chunkeey@gmail.com>
+Date: Sun, 24 Nov 2019 15:22:55 +0100
+Subject: [PATCH] ath9k: use iowrite32 over __raw_writel
+To: linux-wireless@vger.kernel.org
+Cc: QCA ath9k Development <ath9k-devel@qca.qualcomm.com>,
+ Kalle Valo <kvalo@codeaurora.org>,
+ Hauke Mehrtens <hauke@hauke-m.de>,
+ Mathias Kresin <dev@kresin.me>,
+ Martin Blumenstingl <martin.blumenstingl@googlemail.com>
+
+This patch changes the ath9k_pci_owl_loader to use the
+same iowrite32 memory accessor that ath9k_pci is using
+to communicate with the PCI(e) chip.
+
+This will fix endian issues that came up during testing
+with loaned AVM Fritz!Box 7360 (Lantiq MIPS SoCs + AR9287).
+
+Fixes: 5a4f2040fd07 ("ath9k: add loader for AR92XX (and older) pci(e)")
+Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
+---
+ drivers/net/wireless/ath/ath9k/ath9k_pci_owl_loader.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/net/wireless/ath/ath9k/ath9k_pci_owl_loader.c b/drivers/net/wireless/ath/ath9k/ath9k_pci_owl_loader.c
+index 956fa7828d0c..56d1a7764b9f 100644
+--- a/drivers/net/wireless/ath/ath9k/ath9k_pci_owl_loader.c
++++ b/drivers/net/wireless/ath/ath9k/ath9k_pci_owl_loader.c
+@@ -83,7 +83,7 @@ static int ath9k_pci_fixup(struct pci_dev *pdev, const u16 *cal_data,
+ val = swahb32(val);
+ }
+
+- __raw_writel(val, mem + reg);
++ iowrite32(val, mem + reg);
+ usleep_range(100, 120);
+ }
+
+--
+2.24.0
+