Sfoglia il codice sorgente

qcacld-3.0: Drop action frames for SAP mode

For SAP mode, FW doesn't support tx action on different band, and
shouldn't send on DFS channel. So drop action frames for SAP mode.

Change-Id: I2015957346824787d0d902b2d21746d10e2cc9c0
CRs-Fixed: 2718417
Wu Gao 4 anni fa
parent
commit
a68714fc61
1 ha cambiato i file con 20 aggiunte e 0 eliminazioni
  1. 20 0
      components/p2p/core/src/wlan_p2p_off_chan_tx.c

+ 20 - 0
components/p2p/core/src/wlan_p2p_off_chan_tx.c

@@ -128,6 +128,16 @@ static QDF_STATUS p2p_vdev_check_valid(struct tx_action_context *tx_ctx)
 		status = QDF_STATUS_E_FAILURE;
 	}
 
+	/* drop action frame for sap */
+	if ((mode == QDF_SAP_MODE) &&
+	    (tx_ctx->frame_info.sub_type == P2P_MGMT_ACTION) &&
+	    (tx_ctx->frame_info.public_action_type ==
+	     P2P_PUBLIC_ACTION_NOT_SUPPORT) &&
+	    (tx_ctx->frame_info.action_type == P2P_ACTION_NOT_SUPPORT)) {
+		p2p_debug("drop action frame for SAP");
+		status = QDF_STATUS_E_FAILURE;
+	}
+
 	wlan_objmgr_vdev_release_ref(vdev, WLAN_P2P_ID);
 
 	return status;
@@ -165,6 +175,16 @@ static QDF_STATUS p2p_vdev_check_valid(struct tx_action_context *tx_ctx)
 		status = QDF_STATUS_E_FAILURE;
 	}
 
+	/* drop ation frame for sap */
+	if ((mode == QDF_SAP_MODE) &&
+	    (tx_ctx->frame_info.sub_type == P2P_MGMT_ACTION) &&
+	    (tx_ctx->frame_info.public_action_type ==
+	     P2P_PUBLIC_ACTION_NOT_SUPPORT) &&
+	    (tx_ctx->frame_info.action_type == P2P_ACTION_NOT_SUPPORT)) {
+		p2p_debug("drop action frame for SAP");
+		status = QDF_STATUS_E_FAILURE;
+	}
+
 	wlan_objmgr_vdev_release_ref(vdev, WLAN_P2P_ID);
 
 	return status;