Procházet zdrojové kódy

qcacmn: WMI changes for NOL violation

This commit contains the following changes related to FR49350:
usenol pdev param declaration and implementation of wmi cmd to send
the param to FW.
Failure status code declaration for scan and vdev start.

CRs-Fixed: 2328894
Change-Id: I5d3bfe758aeb9907193b6f626582b70413f5381c
Abhijit Pradhan před 6 roky
rodič
revize
f6694f8e83
2 změnil soubory, kde provedl 25 přidání a 0 odebrání
  1. 21 0
      wmi_unified_dfs_api.c
  2. 4 0
      wmi_unified_tlv.c

+ 21 - 0
wmi_unified_dfs_api.c

@@ -27,6 +27,7 @@
 #include <wmi_unified_priv.h>
 #include <wlan_dfs_utils_api.h>
 #include <wmi_unified_dfs_api.h>
+#include <init_deinit_lmac.h>
 
 QDF_STATUS wmi_extract_dfs_cac_complete_event(void *wmi_hdl,
 		uint8_t *evt_buf,
@@ -73,3 +74,23 @@ QDF_STATUS wmi_extract_wlan_radar_event_info(void *wmi_hdl,
 }
 qdf_export_symbol(wmi_extract_dfs_radar_detection_event);
 #endif
+
+#if defined(WLAN_DFS_FULL_OFFLOAD) && defined(QCA_DFS_NOL_OFFLOAD)
+QDF_STATUS wmi_send_usenol_pdev_param(void *wmi_hdl, bool usenol,
+				      struct wlan_objmgr_pdev *pdev)
+{
+	struct pdev_params pparam;
+	int pdev_idx;
+	struct wmi_unified *wmi_handle = (struct wmi_unified *)wmi_hdl;
+
+	pdev_idx = lmac_get_pdev_idx(pdev);
+	if (pdev_idx < 0)
+		return QDF_STATUS_E_FAILURE;
+
+	qdf_mem_set(&pparam, sizeof(pparam), 0);
+	pparam.param_id = wmi_pdev_param_use_nol;
+	pparam.param_value = usenol;
+
+	return wmi_unified_pdev_param_send(wmi_handle, &pparam, pdev_idx);
+}
+#endif

+ 4 - 0
wmi_unified_tlv.c

@@ -8225,6 +8225,9 @@ static QDF_STATUS extract_vdev_scan_ev_param_tlv(wmi_unified_t wmi_handle,
 	case WMI_SCAN_REASON_SUSPENDED:
 		param->reason = SCAN_REASON_SUSPENDED;
 		break;
+	case WMI_SCAN_REASON_DFS_VIOLATION:
+		param->reason = SCAN_REASON_DFS_VIOLATION;
+		break;
 	case WMI_SCAN_REASON_MAX:
 		param->reason = SCAN_REASON_MAX;
 		break;
@@ -11878,6 +11881,7 @@ static void populate_pdev_param_tlv(uint32_t *pdev_param)
 #ifdef WLAN_RU26_SUPPORT
 	pdev_param[wmi_pdev_param_ru26_allowed] = WMI_PDEV_PARAM_RU26_ALLOWED;
 #endif
+	pdev_param[wmi_pdev_param_use_nol] = WMI_PDEV_PARAM_USE_NOL;
 }
 
 /**