소스 검색

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 5 년 전
부모
커밋
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;