浏览代码

qcacmn: Fix incorrect channel state for NOL channel

For 2G and 5G, the secondary channel list is coming from
master channel list which is not filtered by NOL.
Fix by using cur_chan_list to fill the secondary channel
list for 2G and 5G part.

Change-Id: I5e9ede6e39a66ad1a2f0e6c32c151ef175be6dab
CRs-Fixed: 2976916
Liangwei Dong 4 年之前
父节点
当前提交
143f8487df
共有 1 个文件被更改,包括 3 次插入3 次删除
  1. 3 3
      umac/regulatory/core/src/reg_build_chan_list.c

+ 3 - 3
umac/regulatory/core/src/reg_build_chan_list.c

@@ -1048,7 +1048,7 @@ reg_populate_secondary_cur_chan_list(struct wlan_regulatory_pdev_priv_obj
 				     *pdev_priv_obj)
 {
 	qdf_mem_copy(pdev_priv_obj->secondary_cur_chan_list,
-		     pdev_priv_obj->mas_chan_list,
+		     pdev_priv_obj->cur_chan_list,
 		     (NUM_CHANNELS - NUM_6GHZ_CHANNELS) *
 		     sizeof(struct regulatory_channel));
 	qdf_mem_copy(&pdev_priv_obj->
@@ -1126,8 +1126,6 @@ void reg_compute_pdev_current_chan_list(struct wlan_regulatory_pdev_priv_obj
 	qdf_mem_copy(pdev_priv_obj->cur_chan_list, pdev_priv_obj->mas_chan_list,
 		     NUM_CHANNELS * sizeof(struct regulatory_channel));
 
-	reg_populate_secondary_cur_chan_list(pdev_priv_obj);
-
 	reg_modify_chan_list_for_freq_range(pdev_priv_obj->cur_chan_list,
 					    pdev_priv_obj->range_2g_low,
 					    pdev_priv_obj->range_2g_high,
@@ -1164,6 +1162,8 @@ void reg_compute_pdev_current_chan_list(struct wlan_regulatory_pdev_priv_obj
 	reg_modify_chan_list_for_6g_edge_channels(pdev_priv_obj->pdev_ptr,
 						  pdev_priv_obj->
 						  cur_chan_list);
+
+	reg_populate_secondary_cur_chan_list(pdev_priv_obj);
 }
 
 void reg_reset_reg_rules(struct reg_rule_info *reg_rules)