ath10k: fix incorrect multicast/broadcast rate setting
PATCH 1/1 ath10k: fix incorrect multicast/broadcast rate setting
From: Pradeep kumar Chitrapu <[email protected]>
Invalid rate code is sent to firmware when multicast rate value of 0 is sent to driver indicating disabled case, causing broken mesh path. so fix that.
Tested on QCA9984 with firmware 10.4-3.6.1-00827
--- drivers/net/wireless/ath/ath10k/mac.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-)
drivers/net/wireless/ath/ath10k/mac.c +7 -3
@@ -5486,8 +5486,8 @@ static void ath10k_bss_info_changed(struct ieee80211_hw *hw,struct cfg80211_chan_def def;u32 vdev_param, pdev_param, slottime, preamble;u16 bitrate, hw_value; -u8 rate, basic_rate_idx; -int rateidx, ret =0 , hw_rate_code; +u8 rate, basic_rate_idx, rateidx; +int ret =0 , hw_rate_code, mcast_rate;enum nl80211_band band;const struct ieee80211_supported_band *sband;
@@ -5674,7 +5674,11 @@ static void ath10k_bss_info_changed(struct ieee80211_hw *hw,if (changed &BSS_CHANGED_MCAST_RATE && !WARN_ON (ath10k_mac_vif_chan (arvif->vif, &def))) { band = def.chan->band; - rateidx = vif->bss_conf.mcast_rate[band] -1 ; + mcast_rate = vif->bss_conf.mcast_rate[band]; +if (mcast_rate >0 ) + rateidx = mcast_rate -1 ; +else + rateidx =ffs (vif->bss_conf.basic_rates) -1 ;if (ar->phy_capability &WHAL_WLAN_11A_CAPABILITY ) rateidx +=ATH10K_MAC_FIRST_OFDM_RATE_IDX ;
Signature · 1 line
1.9.1
Quoted 8 lines · Pradeep Kumar Chitrapu
From: Pradeep kumar Chitrapu <[email protected]>
Invalid rate code is sent to firmware when multicast rate value of 0 is sent to driver indicating disabled case, causing broken mesh path. so fix that.
Tested on QCA9984 with firmware 10.4-3.6.1-00827
Test data is too small. You need to provide at least QCA9880 and QCA4019 data together which share ath10k for mesh.
Thanks,
Peter
Quoted 11 lines · Peter Oh
Quoted 8 lines · Pradeep Kumar Chitrapu
From: Pradeep kumar Chitrapu <[email protected]>
Invalid rate code is sent to firmware when multicast rate value of 0 is sent to driver indicating disabled case, causing broken mesh path. so fix that.
Tested on QCA9984 with firmware 10.4-3.6.1-00827
Test data is too small. You need to provide at least QCA9880 and QCA4019 data together which share ath10k for mesh.
Pradeep, did you test those? Or someone else?
But isn't the firmware almost the same on those hardware anyway?
Signature · 6 lines
Kalle Valo _______________________________________________ ath10k mailing list [email protected] http://lists.infradead.org/mailman/listinfo/ath10k
Quoted 6 lines · On Tuesday, 11 December 2018 05:56:11 CET Pradeep Kumar Chitrapu wrote:
From: Pradeep kumar Chitrapu <[email protected]>
Invalid rate code is sent to firmware when multicast rate value of 0 is sent to driver indicating disabled case, causing broken mesh path. so fix that.
Quoted 6 lines
Tested on QCA9984 with firmware 10.4-3.6.1-00827
Fixes cd93b83ad92 ("ath10k: support for multicast rate control")Co-developed-by Zhi Chen <[email protected]>Signed-off-by Zhi Chen <[email protected]>Signed-off-by Pradeep Kumar Chitrapu <[email protected]>
Was tested on QCA988X with 10.2.4-1.0-00041
Kind regards,
Sven
_______________________________________________
ath10k mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/ath10k
On Monday, 25 February 2019 21:00:38 CET Sven Eckelmann wrote:
[...]
Quoted 3 lines
Tested-by Sven Eckelmann <[email protected]>Was tested on QCA988X with 10.2.4-1.0-00041
I just wanted to test it with 802.11s setup on IPQ4019 with 10.4-3.5.3-00057 and QCA9888 with 10.4-3.5.3-00053 (ath10k-firmware) and 10.4-3.6-00140 (linux-firmware 2018-12-16-211de167) for both. But it looks like the firmware always crashes with and without this patch and 11s.
[ 221.620803] ath10k_pci 0000:01:00.0: wmi command 36967 timeout, restarting hardware
[ 221.744056] ieee80211 phy0: Hardware restart was requested
[ 225.130829] ath10k_pci 0000:01:00.0: failed to receive control response completion, polling..
[ 226.170824] ath10k_pci 0000:01:00.0: Service connect timeout
[ 226.170871] ath10k_pci 0000:01:00.0: failed to connect htt (-110)
[ 226.252248] ath10k_pci 0000:01:00.0: Could not init core: -110If i count correctly, this is WMI_10_4_GPIO_CONFIG_CMDID. Not really supported by upstream but it looks like there is an Openwrt private patch (not yet accepted upstream [1])
package/kernel/mac80211/patches/ath/974-ath10k_add-LED-and-GPIO-controlling-support-for-various-chipsets.patch
which I have now removed to fix this problem for me.
The tests with 10.4-3.6-00140 and 10.4-3.5.3-* worked fine without this patch.
@Kalle are you expecting that he resents the patch again or can you just append this information to the commit message? At least it looks at the moment like there will be no new patch in the near future. But the commit cd93b83ad92 ("ath10k: support for multicast rate control") is breaking real world setups.
Kind regards,
Sven
[1] https://patchwork.kernel.org/patch/10327075/
_______________________________________________
ath10k mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/ath10k
Kalle Valo
Tested-by Sven EckelmannQuoted 26 lines · Sven Eckelmann
On Monday, 25 February 2019 21:00:38 CET Sven Eckelmann wrote:
[...]Quoted 3 lines
Tested-by Sven Eckelmann <[email protected]>Was tested on QCA988X with 10.2.4-1.0-00041
I just wanted to test it with 802.11s setup on IPQ4019 with 10.4-3.5.3-00057 and QCA9888 with 10.4-3.5.3-00053 (ath10k-firmware) and 10.4-3.6-00140 (linux-firmware 2018-12-16-211de167) for both. But it looks like the firmware always crashes with and without this patch and 11s.
[ 221.620803] ath10k_pci 0000:01:00.0: wmi command 36967 timeout, restarting hardware [ 221.744056] ieee80211 phy0: Hardware restart was requested [ 225.130829] ath10k_pci 0000:01:00.0: failed to receive control response completion, polling.. [ 226.170824] ath10k_pci 0000:01:00.0: Service connect timeout [ 226.170871] ath10k_pci 0000:01:00.0: failed to connect htt (-110) [ 226.252248] ath10k_pci 0000:01:00.0: Could not init core: -110If i count correctly, this is
WMI_10_4_GPIO_CONFIG_CMDID. Not really supported by upstream but it looks like there is an Openwrt private patch (not yet accepted upstream [1])
package/kernel/mac80211/patches/ath/974-ath10k_add-LED-and-GPIO-controlling-support-for-various-chipsets.patchwhich I have now removed to fix this problem for me.
Quoted 7 lines
The tests with 10.4-3.6-00140 and 10.4-3.5.3-* worked fine without this patch.
@Kalle are you expecting that he resents the patch again or can you just append this information to the commit message? At least it looks at the moment like there will be no new patch in the near future. But the commit
cd93b83ad92("ath10k: support for multicast rate control") is breaking real world setups.
I'm planning to apply this. I was not sure what you wanted to add to the commit log but I changed to now what's below. Please let me know if you want to change it.
ath10k: fix incorrect multicast/broadcast rate setting
Invalid rate code is sent to firmware when multicast rate value of 0 is sent to driver indicating disabled case, causing broken mesh path. so fix that.
Tested on QCA9984 with firmware 10.4-3.6.1-00827
Sven tested on IPQ4019 with 10.4-3.5.3-00057 and QCA9888 with 10.4-3.5.3-00053 (ath10k-firmware) and 10.4-3.6-00140 (linux-firmware 2018-12-16-211de167).
Patchwork-Id: 10723033
Signature · 6 lines
Kalle Valo _______________________________________________ ath10k mailing list [email protected] http://lists.infradead.org/mailman/listinfo/ath10k
On Wednesday, 3 April 2019 14:28:16 CEST Kalle Valo wrote:
[...]
Quoted 15 lines
I'm planning to apply this. I was not sure what you wanted to add to the commit log but I changed to now what's below. Please let me know if you want to change it.
ath10k: fix incorrect multicast/broadcast rate setting
Invalid rate code is sent to firmware when multicast rate value of 0 is sent to driver indicating disabled case, causing broken mesh path. so fix that.
Tested on QCA9984 with firmware 10.4-3.6.1-00827
Sven tested on IPQ4019 with 10.4-3.5.3-00057 and QCA9888 with 10.4-3.5.3-00053 (ath10k-firmware) and 10.4-3.6-00140 (linux-firmware 2018-12-16-211de167).
Quoted 7 lines
Fixes cd93b83ad92 ("ath10k: support for multicast rate control")Co-developed-by Zhi Chen <[email protected]>Signed-off-by Zhi Chen <[email protected]>Signed-off-by Pradeep Kumar Chitrapu <[email protected]>Tested-by Sven Eckelmann <[email protected]>Patchwork-Id: 10723033
Signed-off-by Kalle Valo <[email protected]>
I thought you just wanted to have this information added to the "Tested on " line by him. So I didn't really invest time to propose a new paragraph.
The new paragraph is fine for me.
Kind regards,
Sven
Quoted 9 lines · Pradeep Kumar Chitrapu
Invalid rate code is sent to firmware when multicast rate value of 0 is sent to driver indicating disabled case, causing broken mesh path. so fix that.
Tested on QCA9984 with firmware 10.4-3.6.1-00827
Sven tested on IPQ4019 with 10.4-3.5.3-00057 and QCA9888 with 10.4-3.5.3-00053 (ath10k-firmware) and 10.4-3.6-00140 (linux-firmware 2018-12-16-211de167).
Quoted 6 lines
Fixes cd93b83ad92 ("ath10k: support for multicast rate control")Co-developed-by Zhi Chen <[email protected]>Signed-off-by Zhi Chen <[email protected]>Signed-off-by Pradeep Kumar Chitrapu <[email protected]>Tested-by Sven Eckelmann <[email protected]>Signed-off-by Kalle Valo <[email protected]>
Patch applied to ath-next branch of ath.git, thanks.
93ee3d108fc7 ath10k: fix incorrect multicast/broadcast rate setting
Signature · 3 lines
https://patchwork.kernel.org/patch/10723033/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
Quoted 9 lines · Pradeep Kumar Chitrapu
Invalid rate code is sent to firmware when multicast rate value of 0 is sent to driver indicating disabled case, causing broken mesh path. so fix that.
Tested on QCA9984 with firmware 10.4-3.6.1-00827
Sven tested on IPQ4019 with 10.4-3.5.3-00057 and QCA9888 with 10.4-3.5.3-00053 (ath10k-firmware) and 10.4-3.6-00140 (linux-firmware 2018-12-16-211de167).
Quoted 6 lines
Fixes cd93b83ad92 ("ath10k: support for multicast rate control")Co-developed-by Zhi Chen <[email protected]>Signed-off-by Zhi Chen <[email protected]>Signed-off-by Pradeep Kumar Chitrapu <[email protected]>Tested-by Sven Eckelmann <[email protected]>Signed-off-by Kalle Valo <[email protected]>
Patch applied to ath-next branch of ath.git, thanks.
93ee3d108fc7 ath10k: fix incorrect multicast/broadcast rate setting
Signature · 9 lines
https://patchwork.kernel.org/patch/10723033/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches _______________________________________________ ath10k mailing list [email protected] http://lists.infradead.org/mailman/listinfo/ath10k