瀏覽代碼

qcacld-3.0: Process rx_mgmt_pkt based on frequency

As a part of 802.11ax amendment, 6GHz band operation is added.

Since the 6 GHz channel numbers are overlapping with existing 2.4GHz
and 5GHz channel numbers, use frequency to identify unique channel
operation instead of channel number. Channel frequency is unique across
bands.

As part of above requirement add logic to process rx mgmt
packets based on the frequencies instead of channel numbers.

Change-Id: Ib063070738ecdb4f83379eafe50629778a490aae
CRs-fixed: 2522693
Ashish Kumar Dhanotiya 5 年之前
父節點
當前提交
a0d573f072

+ 4 - 4
p2p/core/src/wlan_p2p_off_chan_tx.c

@@ -3015,10 +3015,10 @@ QDF_STATUS p2p_process_rx_mgmt(
 		return QDF_STATUS_E_INVAL;
 	}
 
-	p2p_debug("soc:%pK, frame_len:%d, rx_chan:%d, vdev_id:%d, frm_type:%d, rx_rssi:%d, buf:%pK",
-		p2p_soc_obj->soc, rx_mgmt->frame_len,
-		rx_mgmt->rx_chan, rx_mgmt->vdev_id, rx_mgmt->frm_type,
-		rx_mgmt->rx_rssi, rx_mgmt->buf);
+	p2p_debug("soc:%pK, frame_len:%d, rx_freq:%d, vdev_id:%d, frm_type:%d, rx_rssi:%d, buf:%pK",
+		  p2p_soc_obj->soc, rx_mgmt->frame_len,
+		  rx_mgmt->rx_freq, rx_mgmt->vdev_id, rx_mgmt->frm_type,
+		  rx_mgmt->rx_rssi, rx_mgmt->buf);
 
 	if (rx_mgmt->frm_type == MGMT_ACTION_VENDOR_SPECIFIC) {
 		p2p_get_frame_info(rx_mgmt->buf, rx_mgmt->frame_len,

+ 2 - 2
p2p/dispatcher/inc/wlan_p2p_public_struct.h

@@ -103,7 +103,7 @@ struct p2p_event {
 /**
  * struct p2p_rx_mgmt_frame - rx mgmt frame structure
  * @frame_len:   Frame length
- * @rx_chan:     RX channel
+ * @rx_freq:     RX Frequency
  * @vdev_id:     Vdev id
  * @frm_type:    Frame type
  * @rx_rssi:     RX rssi
@@ -111,7 +111,7 @@ struct p2p_event {
  */
 struct p2p_rx_mgmt_frame {
 	uint32_t frame_len;
-	uint32_t rx_chan;
+	uint32_t rx_freq;
 	uint32_t vdev_id;
 	uint32_t frm_type;
 	uint32_t rx_rssi;

+ 1 - 1
p2p/dispatcher/src/wlan_p2p_tgt_api.c

@@ -349,7 +349,7 @@ QDF_STATUS tgt_p2p_mgmt_frame_rx_cb(struct wlan_objmgr_psoc *psoc,
 
 	pdata = (uint8_t *)qdf_nbuf_data(buf);
 	rx_mgmt->frame_len = mgmt_rx_params->buf_len;
-	rx_mgmt->rx_chan = mgmt_rx_params->channel;
+	rx_mgmt->rx_freq = mgmt_rx_params->chan_freq;
 	rx_mgmt->vdev_id = vdev_id;
 	rx_mgmt->frm_type = frm_type;
 	rx_mgmt->rx_rssi = mgmt_rx_params->snr +

+ 4 - 4
tdls/core/src/wlan_tdls_mgmt.c

@@ -104,10 +104,10 @@ static QDF_STATUS tdls_process_rx_mgmt(
 		return QDF_STATUS_E_INVAL;
 	}
 
-	tdls_debug("soc:%pK, frame_len:%d, rx_chan:%d, vdev_id:%d, frm_type:%d, rx_rssi:%d, buf:%pK",
-		tdls_soc_obj->soc, rx_mgmt->frame_len,
-		rx_mgmt->rx_chan, rx_mgmt->vdev_id, rx_mgmt->frm_type,
-		rx_mgmt->rx_rssi, rx_mgmt->buf);
+	tdls_debug("soc:%pK, frame_len:%d, rx_freq:%d, vdev_id:%d, frm_type:%d, rx_rssi:%d, buf:%pK",
+		   tdls_soc_obj->soc, rx_mgmt->frame_len,
+		   rx_mgmt->rx_freq, rx_mgmt->vdev_id, rx_mgmt->frm_type,
+		   rx_mgmt->rx_rssi, rx_mgmt->buf);
 
 	if (rx_mgmt->buf[TDLS_PUBLIC_ACTION_FRAME_OFFSET + 1] ==
 						TDLS_PUBLIC_ACTION_DISC_RESP) {

+ 2 - 2
tdls/dispatcher/inc/wlan_tdls_public_structs.h

@@ -545,7 +545,7 @@ struct tdls_tx_cnf {
 /**
  * struct tdls_rx_mgmt_frame - rx mgmt frame structure
  * @frame_len: frame length
- * @rx_chan: rx channel
+ * @rx_freq: rx freq
  * @vdev_id: vdev id
  * @frm_type: frame type
  * @rx_rssi: rx rssi
@@ -553,7 +553,7 @@ struct tdls_tx_cnf {
  */
 struct tdls_rx_mgmt_frame {
 	uint32_t frame_len;
-	uint32_t rx_chan;
+	uint32_t rx_freq;
 	uint32_t vdev_id;
 	uint32_t frm_type;
 	uint32_t rx_rssi;

+ 1 - 1
tdls/dispatcher/src/wlan_tdls_tgt_api.c

@@ -293,7 +293,7 @@ QDF_STATUS tgt_tdls_mgmt_frame_process_rx_cb(
 
 	pdata = (uint8_t *)qdf_nbuf_data(buf);
 	rx_mgmt->frame_len = mgmt_rx_params->buf_len;
-	rx_mgmt->rx_chan = mgmt_rx_params->channel;
+	rx_mgmt->rx_freq = mgmt_rx_params->chan_freq;
 	rx_mgmt->vdev_id = vdev_id;
 	rx_mgmt->frm_type = frm_type;
 	rx_mgmt->rx_rssi = mgmt_rx_params->rssi;