Message ID | 1442176540-34973-1-git-send-email-nbd@openwrt.org (mailing list archive) |
---|---|
State | Not Applicable |
Delegated to: | Kalle Valo |
Headers | show |
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 >
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 -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
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?
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 -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
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.
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 ) -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
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
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(-)