فهرست منبع

qcacld-3.0: Fix fw offload ucfg APIs for wiphy features

WIPHY features are populated before FW offload object is
initialized. Thus use direct config values for SAE and GCMP
WIPHY features.

Change-Id: Ic1b84c8709a0347fa22773786c0d5af32426e8fc
CRs-fixed: 2376983
Manikandan Mohan 6 سال پیش
والد
کامیت
9c5a777732
2فایلهای تغییر یافته به همراه10 افزوده شده و 37 حذف شده
  1. 4 8
      fw_offload/dispatcher/inc/wlan_fwol_ucfg_api.h
  2. 6 29
      fw_offload/dispatcher/src/wlan_fwol_ucfg_api.c

+ 4 - 8
fw_offload/dispatcher/inc/wlan_fwol_ucfg_api.h

@@ -347,22 +347,18 @@ QDF_STATUS ucfg_fwol_get_lprx_enable(struct wlan_objmgr_psoc *psoc,
 /**
  * ucfg_fwol_get_sae_enable() - Get SAE feature enable status
  * @psoc: pointer to the psoc object
- * @sae_enable: Pointer to return SAE feature enable status
  *
- * Return: QDF Status
+ * Return: True if enabled else false
  */
-QDF_STATUS ucfg_fwol_get_sae_enable(struct wlan_objmgr_psoc *psoc,
-				    bool *sae_enable);
+bool ucfg_fwol_get_sae_enable(struct wlan_objmgr_psoc *psoc);
 
 /**
  * ucfg_fwol_get_gcmp_enable() - Get GCMP feature enable status
  * @psoc: pointer to the psoc object
- * @gcmp_enable: Pointer to return GCMP feature enable status
  *
- * Return: QDF Status
+ * Return: True if enabled else false
  */
-QDF_STATUS ucfg_fwol_get_gcmp_enable(struct wlan_objmgr_psoc *psoc,
-				     bool *gcmp_enable);
+bool ucfg_fwol_get_gcmp_enable(struct wlan_objmgr_psoc *psoc);
 
 /**
  * ucfg_fwol_get_enable_tx_sch_delay() - Get enable tx sch delay

+ 6 - 29
fw_offload/dispatcher/src/wlan_fwol_ucfg_api.c

@@ -590,43 +590,20 @@ QDF_STATUS ucfg_fwol_get_lprx_enable(struct wlan_objmgr_psoc *psoc,
 }
 
 #ifdef WLAN_FEATURE_SAE
-QDF_STATUS ucfg_fwol_get_sae_enable(struct wlan_objmgr_psoc *psoc,
-				    bool *sae_enable)
+bool ucfg_fwol_get_sae_enable(struct wlan_objmgr_psoc *psoc)
 {
-	struct wlan_fwol_psoc_obj *fwol_obj;
-
-	fwol_obj = fwol_get_psoc_obj(psoc);
-	if (!fwol_obj) {
-		fwol_err("Failed to get FWOL obj");
-		*sae_enable = cfg_default(CFG_IS_SAE_ENABLED);
-		return QDF_STATUS_E_FAILURE;
-	}
-
-	*sae_enable = fwol_obj->cfg.sae_enable;
-	return QDF_STATUS_SUCCESS;
+	return cfg_get(psoc, CFG_IS_SAE_ENABLED);
 }
 #else
-QDF_STATUS ucfg_fwol_get_sae_enable(struct wlan_objmgr_psoc *psoc,
-				    bool *sae_enable)
+bool ucfg_fwol_get_sae_enable(struct wlan_objmgr_psoc *psoc)
 {
-	return QDF_STATUS_E_NOSUPPORT;
+	return false;
 }
 #endif
 
-QDF_STATUS ucfg_fwol_get_gcmp_enable(struct wlan_objmgr_psoc *psoc,
-				     bool *gcmp_enable)
+bool ucfg_fwol_get_gcmp_enable(struct wlan_objmgr_psoc *psoc)
 {
-	struct wlan_fwol_psoc_obj *fwol_obj;
-
-	fwol_obj = fwol_get_psoc_obj(psoc);
-	if (!fwol_obj) {
-		fwol_err("Failed to get FWOL obj");
-		*gcmp_enable = cfg_default(CFG_ENABLE_GCMP);
-		return QDF_STATUS_E_FAILURE;
-	}
-
-	*gcmp_enable = fwol_obj->cfg.gcmp_enable;
-	return QDF_STATUS_SUCCESS;
+	return cfg_get(psoc, CFG_ENABLE_GCMP);
 }
 
 QDF_STATUS ucfg_fwol_get_enable_tx_sch_delay(struct wlan_objmgr_psoc *psoc,