Browse Source

qcacld-3.0: Replace channel list with freq list

Add freq_list in tagCsrChannelInfo to replace ChannelList
Add APIs to translate between channel list and freq list

Change-Id: I2f086d9371e2ec928bbb47aa2be91d65a206f4d6
CRs-Fixed: 2492624
Jianmin Zhu 5 years ago
parent
commit
5ce64f48cd
3 changed files with 39 additions and 0 deletions
  1. 1 0
      core/sme/inc/csr_api.h
  2. 12 0
      core/sme/inc/sme_api.h
  3. 26 0
      core/sme/src/common/sme_api.c

+ 1 - 0
core/sme/inc/csr_api.h

@@ -197,6 +197,7 @@ typedef enum {
 typedef struct tagCsrChannelInfo {
 	uint8_t numOfChannels;
 	uint8_t *ChannelList;   /* it will be an array of channels */
+	uint32_t *freq_list;
 } tCsrChannelInfo, *tpCsrChannelInfo;
 
 typedef enum {

+ 12 - 0
core/sme/inc/sme_api.h

@@ -3579,4 +3579,16 @@ QDF_STATUS sme_register_bcn_recv_pause_ind_cb(mac_handle_t mac_handle,
  */
 QDF_STATUS sme_set_disconnect_ies(mac_handle_t mac_handle, uint8_t vdev_id,
 				  uint8_t *ie_data, uint16_t ie_len);
+
+void sme_freq_to_chan_list(
+			struct wlan_objmgr_pdev *pdev,
+			uint8_t *chan_list,
+			uint32_t *freq_list,
+			uint32_t chan_list_len);
+
+void sme_chan_to_freq_list(
+			struct wlan_objmgr_pdev *pdev,
+			uint32_t *freq_list,
+			const uint8_t *chan_list,
+			uint32_t chan_list_len);
 #endif /* #if !defined( __SME_API_H ) */

+ 26 - 0
core/sme/src/common/sme_api.c

@@ -15721,3 +15721,29 @@ QDF_STATUS sme_set_disconnect_ies(mac_handle_t mac_handle, uint8_t vdev_id,
 	wlan_objmgr_vdev_release_ref(vdev, WLAN_LEGACY_SME_ID);
 	return QDF_STATUS_SUCCESS;
 }
+
+void sme_freq_to_chan_list(
+			struct wlan_objmgr_pdev *pdev,
+			uint8_t *chan_list,
+			uint32_t *freq_list,
+			uint32_t chan_list_len)
+{
+	uint32_t count;
+
+	for (count = 0; count < chan_list_len; count++)
+		chan_list[count] =
+			(uint8_t)wlan_reg_freq_to_chan(pdev, freq_list[count]);
+}
+
+void sme_chan_to_freq_list(
+			struct wlan_objmgr_pdev *pdev,
+			uint32_t *freq_list,
+			const uint8_t *chan_list,
+			uint32_t chan_list_len)
+{
+	uint32_t count;
+
+	for (count = 0; count < chan_list_len; count++)
+		freq_list[count] =
+			wlan_reg_chan_to_freq(pdev, (uint32_t)chan_list[count]);
+}