]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
Fixes for 4.19
authorSasha Levin <sashal@kernel.org>
Fri, 28 Aug 2020 17:05:11 +0000 (13:05 -0400)
committerSasha Levin <sashal@kernel.org>
Fri, 28 Aug 2020 17:05:11 +0000 (13:05 -0400)
Signed-off-by: Sasha Levin <sashal@kernel.org>
queue-4.19/revert-ath10k-fix-dma-related-firmware-crashes-on-mu.patch [new file with mode: 0644]
queue-4.19/series

diff --git a/queue-4.19/revert-ath10k-fix-dma-related-firmware-crashes-on-mu.patch b/queue-4.19/revert-ath10k-fix-dma-related-firmware-crashes-on-mu.patch
new file mode 100644 (file)
index 0000000..9d07fa5
--- /dev/null
@@ -0,0 +1,51 @@
+From efb538dea04ec64e04834825e63a52eb934dd073 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Tue, 14 Jan 2020 12:35:21 +0800
+Subject: Revert "ath10k: fix DMA related firmware crashes on multiple devices"
+
+From: Zhi Chen <zhichen@codeaurora.org>
+
+[ Upstream commit a1769bb68a850508a492e3674ab1e5e479b11254 ]
+
+This reverts commit 76d164f582150fd0259ec0fcbc485470bcd8033e.
+PCIe hung issue was observed on multiple platforms. The issue was reproduced
+when DUT was configured as AP and associated with 50+ STAs.
+
+For QCA9984/QCA9888, the DMA_BURST_SIZE register controls the AXI burst size
+of the RD/WR access to the HOST MEM.
+0 - No split , RAW read/write transfer size from MAC is put out on bus
+    as burst length
+1 - Split at 256 byte boundary
+2,3 - Reserved
+
+With PCIe protocol analyzer, we can see DMA Read crossing 4KB boundary when
+issue happened. It broke PCIe spec and caused PCIe stuck. So revert
+the default value from 0 to 1.
+
+Tested:  IPQ8064 + QCA9984 with firmware 10.4-3.10-00047
+         QCS404 + QCA9984 with firmware 10.4-3.9.0.2--00044
+         Synaptics AS370 + QCA9888  with firmware 10.4-3.9.0.2--00040
+
+Signed-off-by: Zhi Chen <zhichen@codeaurora.org>
+Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ drivers/net/wireless/ath/ath10k/hw.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/net/wireless/ath/ath10k/hw.h b/drivers/net/wireless/ath/ath10k/hw.h
+index fac58c3c576a2..3ff65a0a834a2 100644
+--- a/drivers/net/wireless/ath/ath10k/hw.h
++++ b/drivers/net/wireless/ath/ath10k/hw.h
+@@ -753,7 +753,7 @@ ath10k_rx_desc_get_l3_pad_bytes(struct ath10k_hw_params *hw,
+ #define TARGET_10_4_TX_DBG_LOG_SIZE           1024
+ #define TARGET_10_4_NUM_WDS_ENTRIES           32
+-#define TARGET_10_4_DMA_BURST_SIZE            0
++#define TARGET_10_4_DMA_BURST_SIZE            1
+ #define TARGET_10_4_MAC_AGGR_DELIM            0
+ #define TARGET_10_4_RX_SKIP_DEFRAG_TIMEOUT_DUP_DETECTION_CHECK 1
+ #define TARGET_10_4_VOW_CONFIG                        0
+-- 
+2.25.1
+
index 7d3dfe47ba51bb963da9000d51a0a7ebddfb86db..3d15f332faad5f82af936a11f7f77c3af4399159 100644 (file)
@@ -49,3 +49,4 @@ kvm-arm64-fix-symbol-dependency-in-__hyp_call_panic_.patch
 powerpc-spufs-add-config_coredump-dependency.patch
 usb-sisusbvga-fix-a-potential-ub-casued-by-left-shif.patch
 efi-provide-empty-efi_enter_virtual_mode-implementat.patch
+revert-ath10k-fix-dma-related-firmware-crashes-on-mu.patch