ソースを参照

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 年 前
コミット
a68714fc61
1 ファイル変更20 行追加0 行削除
  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;