* [PATCH 4.3] ath10k: fix DMA related firmware crashes on multiple devices
@ 2015-09-13 20:35 Felix Fietkau
2015-09-13 22:08 ` Ben Greear
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Felix Fietkau @ 2015-09-13 20:35 UTC (permalink / raw)
To: linux-wireless; +Cc: kvalo
Some platforms really don't like DMA bursts of 256 bytes, and this
causes the firmware to crash when sending beacons.
Also, changing this based on the firmware version does not seem to make
much sense, so use 128 bytes for all versions.
Cc: stable@vger.kernel.org
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
---
drivers/net/wireless/ath/ath10k/hw.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/wireless/ath/ath10k/hw.h b/drivers/net/wireless/ath/ath10k/hw.h
index 23afcda..678d72a 100644
--- a/drivers/net/wireless/ath/ath10k/hw.h
+++ b/drivers/net/wireless/ath/ath10k/hw.h
@@ -337,7 +337,7 @@ enum ath10k_hw_rate_cck {
#define TARGET_10X_MAX_FRAG_ENTRIES 0
/* 10.2 parameters */
-#define TARGET_10_2_DMA_BURST_SIZE 1
+#define TARGET_10_2_DMA_BURST_SIZE 0
/* Target specific defines for WMI-TLV firmware */
#define TARGET_TLV_NUM_VDEVS 4
@@ -391,7 +391,7 @@ enum ath10k_hw_rate_cck {
#define TARGET_10_4_TX_DBG_LOG_SIZE 1024
#define TARGET_10_4_NUM_WDS_ENTRIES 32
-#define TARGET_10_4_DMA_BURST_SIZE 1
+#define TARGET_10_4_DMA_BURST_SIZE 0
#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.2.2
^ permalink raw reply related [flat|nested] 7+ messages in thread* Re: [PATCH 4.3] ath10k: fix DMA related firmware crashes on multiple devices
2015-09-13 20:35 [PATCH 4.3] ath10k: fix DMA related firmware crashes on multiple devices Felix Fietkau
@ 2015-09-13 22:08 ` Ben Greear
2015-09-13 22:16 ` Felix Fietkau
2015-09-14 7:00 ` Kalle Valo
2015-09-15 7:03 ` Chris
2 siblings, 1 reply; 7+ messages in thread
From: Ben Greear @ 2015-09-13 22:08 UTC (permalink / raw)
To: Felix Fietkau, linux-wireless; +Cc: kvalo
On 09/13/2015 01:35 PM, Felix Fietkau wrote:
> Some platforms really don't like DMA bursts of 256 bytes, and this
> causes the firmware to crash when sending beacons.
> Also, changing this based on the firmware version does not seem to make
> much sense, so use 128 bytes for all versions.
Is there any good reason to allow users to enable this with
module-param or similar on platforms that do support it?
Like better performance perhaps?
Thanks,
Ben
>
> Cc: stable@vger.kernel.org
> Signed-off-by: Felix Fietkau <nbd@openwrt.org>
> ---
> drivers/net/wireless/ath/ath10k/hw.h | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/wireless/ath/ath10k/hw.h b/drivers/net/wireless/ath/ath10k/hw.h
> index 23afcda..678d72a 100644
> --- a/drivers/net/wireless/ath/ath10k/hw.h
> +++ b/drivers/net/wireless/ath/ath10k/hw.h
> @@ -337,7 +337,7 @@ enum ath10k_hw_rate_cck {
> #define TARGET_10X_MAX_FRAG_ENTRIES 0
>
> /* 10.2 parameters */
> -#define TARGET_10_2_DMA_BURST_SIZE 1
> +#define TARGET_10_2_DMA_BURST_SIZE 0
>
> /* Target specific defines for WMI-TLV firmware */
> #define TARGET_TLV_NUM_VDEVS 4
> @@ -391,7 +391,7 @@ enum ath10k_hw_rate_cck {
>
> #define TARGET_10_4_TX_DBG_LOG_SIZE 1024
> #define TARGET_10_4_NUM_WDS_ENTRIES 32
> -#define TARGET_10_4_DMA_BURST_SIZE 1
> +#define TARGET_10_4_DMA_BURST_SIZE 0
> #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
>
--
Ben Greear <greearb@candelatech.com>
Candela Technologies Inc http://www.candelatech.com
^ permalink raw reply [flat|nested] 7+ messages in thread* Re: [PATCH 4.3] ath10k: fix DMA related firmware crashes on multiple devices
2015-09-13 22:08 ` Ben Greear
@ 2015-09-13 22:16 ` Felix Fietkau
0 siblings, 0 replies; 7+ messages in thread
From: Felix Fietkau @ 2015-09-13 22:16 UTC (permalink / raw)
To: Ben Greear, linux-wireless; +Cc: kvalo
On 2015-09-14 00:08, Ben Greear wrote:
>
>
> On 09/13/2015 01:35 PM, Felix Fietkau wrote:
>> Some platforms really don't like DMA bursts of 256 bytes, and this
>> causes the firmware to crash when sending beacons.
>> Also, changing this based on the firmware version does not seem to make
>> much sense, so use 128 bytes for all versions.
>
> Is there any good reason to allow users to enable this with
> module-param or similar on platforms that do support it?
>
> Like better performance perhaps?
Maybe, though I expect the performance gain to be small.
- Felix
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 4.3] ath10k: fix DMA related firmware crashes on multiple devices
2015-09-13 20:35 [PATCH 4.3] ath10k: fix DMA related firmware crashes on multiple devices Felix Fietkau
2015-09-13 22:08 ` Ben Greear
@ 2015-09-14 7:00 ` Kalle Valo
2015-09-14 7:11 ` Felix Fietkau
2015-09-15 7:03 ` Chris
2 siblings, 1 reply; 7+ messages in thread
From: Kalle Valo @ 2015-09-14 7:00 UTC (permalink / raw)
To: Felix Fietkau; +Cc: linux-wireless, ath10k
Felix Fietkau <nbd@openwrt.org> writes:
> Some platforms really don't like DMA bursts of 256 bytes, and this
> causes the firmware to crash when sending beacons.
> Also, changing this based on the firmware version does not seem to make
> much sense, so use 128 bytes for all versions.
>
> Cc: stable@vger.kernel.org
> Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Nice, good catch! Just to make sure, this fixes the issues some people
have reported that 10.1 firmware works but 10.2 firmware crashes when
starting beaconing?
--
Kalle Valo
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 4.3] ath10k: fix DMA related firmware crashes on multiple devices
2015-09-14 7:00 ` Kalle Valo
@ 2015-09-14 7:11 ` Felix Fietkau
2015-09-14 7:46 ` Kalle Valo
0 siblings, 1 reply; 7+ messages in thread
From: Felix Fietkau @ 2015-09-14 7:11 UTC (permalink / raw)
To: Kalle Valo; +Cc: linux-wireless, ath10k
On 2015-09-14 09:00, Kalle Valo wrote:
> Felix Fietkau <nbd@openwrt.org> writes:
>
>> Some platforms really don't like DMA bursts of 256 bytes, and this
>> causes the firmware to crash when sending beacons.
>> Also, changing this based on the firmware version does not seem to make
>> much sense, so use 128 bytes for all versions.
>>
>> Cc: stable@vger.kernel.org
>> Signed-off-by: Felix Fietkau <nbd@openwrt.org>
>
> Nice, good catch! Just to make sure, this fixes the issues some people
> have reported that 10.1 firmware works but 10.2 firmware crashes when
> starting beaconing?
Yes. I was able to reproduce that issue myself on a Gateworks Laguna
device, which is among the affected devices reported in that email
thread. This patch fixes it for me.
- Felix
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 4.3] ath10k: fix DMA related firmware crashes on multiple devices
2015-09-14 7:11 ` Felix Fietkau
@ 2015-09-14 7:46 ` Kalle Valo
0 siblings, 0 replies; 7+ messages in thread
From: Kalle Valo @ 2015-09-14 7:46 UTC (permalink / raw)
To: Felix Fietkau; +Cc: linux-wireless, ath10k
Felix Fietkau <nbd@openwrt.org> writes:
> On 2015-09-14 09:00, Kalle Valo wrote:
>> Felix Fietkau <nbd@openwrt.org> writes:
>>
>>> Some platforms really don't like DMA bursts of 256 bytes, and this
>>> causes the firmware to crash when sending beacons.
>>> Also, changing this based on the firmware version does not seem to make
>>> much sense, so use 128 bytes for all versions.
>>>
>>> Cc: stable@vger.kernel.org
>>> Signed-off-by: Felix Fietkau <nbd@openwrt.org>
>>
>> Nice, good catch! Just to make sure, this fixes the issues some people
>> have reported that 10.1 firmware works but 10.2 firmware crashes when
>> starting beaconing?
>
> Yes. I was able to reproduce that issue myself on a Gateworks Laguna
> device, which is among the affected devices reported in that email
> thread. This patch fixes it for me.
Awesome. Can you please resend this and CC ath10k@lists.infradead.org
(as well as linux-wireless) so that I get this to the correct patchwork
project? I'll then send it forward to 4.3.
--
Kalle Valo
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 4.3] ath10k: fix DMA related firmware crashes on multiple devices
2015-09-13 20:35 [PATCH 4.3] ath10k: fix DMA related firmware crashes on multiple devices Felix Fietkau
2015-09-13 22:08 ` Ben Greear
2015-09-14 7:00 ` Kalle Valo
@ 2015-09-15 7:03 ` Chris
2 siblings, 0 replies; 7+ messages in thread
From: Chris @ 2015-09-15 7:03 UTC (permalink / raw)
To: linux-wireless
Hi,
Felix Fietkau <nbd@...> writes:
>
> Some platforms really don't like DMA bursts of 256 bytes, and this
> causes the firmware to crash when sending beacons.
> Also, changing this based on the firmware version does not seem to make
> much sense, so use 128 bytes for all version
i can confirm that now gateworks laguna / Ventana and Compex wpj344 (HW v1
and v2) is how working with one and more 9880 cards, using actual firmwares
(tested firmware-5.bin_10.2.4.70-2 + firmware-5.bin_10.2.4.70.6-2 )
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2015-09-15 7:05 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-09-13 20:35 [PATCH 4.3] ath10k: fix DMA related firmware crashes on multiple devices Felix Fietkau
2015-09-13 22:08 ` Ben Greear
2015-09-13 22:16 ` Felix Fietkau
2015-09-14 7:00 ` Kalle Valo
2015-09-14 7:11 ` Felix Fietkau
2015-09-14 7:46 ` Kalle Valo
2015-09-15 7:03 ` Chris
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).