mirror of https://gitee.com/openkylin/linux.git
ath11k: refine the phy_id check in ath11k_reg_chan_list_event
For QCA6390, it processes the reg chan list event only for phy0, and it goes to fallback if the phy_id is not valid. For a valid phy_id but not 0, just discard the event. Tested-on: QCA6390 hw2.0 PCI WLAN.HST.1.0.1-01740-QCAHSTSWPLZ_V2_TO_X86-1 Tested-on: IPQ8074 hw2.0 AHB WLAN.HK.2.1.0.1-01238-QCAHKSWPL_SILICONZ-2 Signed-off-by: Carl Huang <cjhuang@codeaurora.org> Signed-off-by: Kalle Valo <kvalo@codeaurora.org> Link: https://lore.kernel.org/r/1597555891-26112-5-git-send-email-kvalo@codeaurora.org
This commit is contained in:
parent
4152e4206c
commit
84eee3c845
|
@ -5463,7 +5463,12 @@ static int ath11k_reg_chan_list_event(struct ath11k_base *ab, struct sk_buff *sk
|
||||||
pdev_idx = reg_info->phy_id;
|
pdev_idx = reg_info->phy_id;
|
||||||
|
|
||||||
if (pdev_idx >= ab->num_radios) {
|
if (pdev_idx >= ab->num_radios) {
|
||||||
if (ab->hw_params.single_pdev_only)
|
/* Process the event for phy0 only if single_pdev_only
|
||||||
|
* is true. If pdev_idx is valid but not 0, discard the
|
||||||
|
* event. Otherwise, it goes to fallback.
|
||||||
|
*/
|
||||||
|
if (ab->hw_params.single_pdev_only &&
|
||||||
|
pdev_idx < ab->hw_params.num_rxmda_per_pdev)
|
||||||
goto mem_free;
|
goto mem_free;
|
||||||
else
|
else
|
||||||
goto fallback;
|
goto fallback;
|
||||||
|
|
Loading…
Reference in New Issue