Kaynağa Gözat

qcacmn: Rectify APIs within the Regulatory component

Rectify three issues in the Regulatory APIs as follows:

1) Within the API reg_update_nol_ch_for_freq, replace the call of
reg_get_chan_enum with reg_get_chan_enum_for_freq, as
reg_update_nol_ch_for_freq is a frequency based API.

2) Change the return type of wlan_reg_get_channel_reg_power_for_freq
to uint8_t and change the datatype of its parameter, freq, from uint32_t
to uint16_t.

3) Place the API wlan_reg_chan_to_freq, under the macro
CONFIG_CHAN_NUM_API, as it uses IEEE channel number as a parameter.

Change-Id: I1bc1d767d34cd97ca971bd7e12b685a55fb9a494
CRs-Fixed: 2531183
Hariharan Basuthkar 5 yıl önce
ebeveyn
işleme
868bcbec0c

+ 6 - 6
umac/regulatory/core/src/reg_services_common.c

@@ -3262,7 +3262,7 @@ bool reg_is_dfs_for_freq(struct wlan_objmgr_pdev *pdev, uint16_t freq)
 }
 
 void reg_update_nol_ch_for_freq(struct wlan_objmgr_pdev *pdev,
-				uint16_t *chan_list,
+				uint16_t *chan_freq_list,
 				uint8_t num_chan,
 				bool nol_chan)
 {
@@ -3271,8 +3271,8 @@ void reg_update_nol_ch_for_freq(struct wlan_objmgr_pdev *pdev,
 	struct wlan_regulatory_pdev_priv_obj *pdev_priv_obj;
 	uint16_t i;
 
-	if (!num_chan || !chan_list) {
-		reg_err("chan_list or num_ch is NULL");
+	if (!num_chan || !chan_freq_list) {
+		reg_err("chan_freq_list or num_ch is NULL");
 		return;
 	}
 
@@ -3284,10 +3284,10 @@ void reg_update_nol_ch_for_freq(struct wlan_objmgr_pdev *pdev,
 
 	mas_chan_list = pdev_priv_obj->mas_chan_list;
 	for (i = 0; i < num_chan; i++) {
-		chan_enum = reg_get_chan_enum(chan_list[i]);
+		chan_enum = reg_get_chan_enum_for_freq(chan_freq_list[i]);
 		if (chan_enum == INVALID_CHANNEL) {
-			reg_err("Invalid ch in nol list, chan %d",
-				chan_list[i]);
+			reg_err("Invalid freq in nol list, freq %d",
+				chan_freq_list[i]);
 			continue;
 		}
 		mas_chan_list[chan_enum].nol_chan = nol_chan;

+ 2 - 2
umac/regulatory/core/src/reg_services_common.h

@@ -819,14 +819,14 @@ uint8_t reg_get_channel_reg_power_for_freq(struct wlan_objmgr_pdev *pdev,
 /**
  * reg_update_nol_ch_for_freq () - Updates NOL channels in current channel list
  * @pdev: pointer to pdev object
- * @ch_list: pointer to NOL channel list
+ * @chan_freq_list: pointer to NOL channel list
  * @num_ch: No.of channels in list
  * @update_nol: set/reset the NOL status
  *
  * Return: None
  */
 void reg_update_nol_ch_for_freq(struct wlan_objmgr_pdev *pdev,
-				uint16_t *chan_list,
+				uint16_t *chan_freq_list,
 				uint8_t num_chan,
 				bool nol_chan);
 /**

+ 4 - 4
umac/regulatory/dispatcher/inc/wlan_reg_services_api.h

@@ -1027,20 +1027,20 @@ void wlan_reg_set_channel_params_for_freq(struct wlan_objmgr_pdev *pdev,
  *
  * Return: int
  */
-uint32_t wlan_reg_get_channel_reg_power_for_freq(struct wlan_objmgr_pdev *pdev,
-						 uint32_t freq);
+uint8_t wlan_reg_get_channel_reg_power_for_freq(struct wlan_objmgr_pdev *pdev,
+						uint16_t freq);
 
 /**
  * wlan_reg_update_nol_ch_for_freq () - set nol channel
  * @pdev: pdev ptr
- * @ch_list: channel list to be returned
+ * @chan_freq_list: channel list to be returned
  * @num_ch: number of channels
  * @nol_ch: nol flag
  *
  * Return: void
  */
 void wlan_reg_update_nol_ch_for_freq(struct wlan_objmgr_pdev *pdev,
-				     uint16_t *ch_list,
+				     uint16_t *chan_freq_list,
 				     uint8_t num_ch,
 				     bool nol_ch);
 

+ 5 - 5
umac/regulatory/dispatcher/src/wlan_reg_services_api.c

@@ -511,6 +511,7 @@ uint32_t wlan_reg_freq_to_chan(struct wlan_objmgr_pdev *pdev,
 
 qdf_export_symbol(wlan_reg_freq_to_chan);
 
+#ifdef CONFIG_CHAN_NUM_API
 uint32_t wlan_reg_chan_to_freq(struct wlan_objmgr_pdev *pdev,
 			       uint32_t chan_num)
 {
@@ -525,7 +526,6 @@ uint16_t wlan_reg_legacy_chan_to_freq(struct wlan_objmgr_pdev *pdev,
 	return reg_legacy_chan_to_freq(pdev, chan_num);
 }
 
-#ifdef CONFIG_CHAN_NUM_API
 bool wlan_reg_chan_is_49ghz(struct wlan_objmgr_pdev *pdev,
 		uint8_t chan_num)
 {
@@ -863,11 +863,11 @@ bool wlan_reg_is_dsrc_freq(uint16_t freq)
 }
 
 void wlan_reg_update_nol_ch_for_freq(struct wlan_objmgr_pdev *pdev,
-				     uint16_t *ch_list,
+				     uint16_t *chan_freq_list,
 				     uint8_t num_ch,
 				     bool nol_ch)
 {
-	reg_update_nol_ch_for_freq(pdev, ch_list, num_ch, nol_ch);
+	reg_update_nol_ch_for_freq(pdev, chan_freq_list, num_ch, nol_ch);
 }
 
 void wlan_reg_update_nol_history_ch_for_freq(struct wlan_objmgr_pdev *pdev,
@@ -949,8 +949,8 @@ wlan_reg_get_channel_state_for_freq(struct wlan_objmgr_pdev *pdev,
 	return reg_get_channel_state_for_freq(pdev, freq);
 }
 
-uint32_t wlan_reg_get_channel_reg_power_for_freq(struct wlan_objmgr_pdev *pdev,
-						 uint32_t freq)
+uint8_t wlan_reg_get_channel_reg_power_for_freq(struct wlan_objmgr_pdev *pdev,
+						uint16_t freq)
 {
 	return reg_get_channel_reg_power_for_freq(pdev, freq);
 }