qcacmn: enhance crypto api to install key synchronously

Add parameter 'bool sync' for wlan_cfg80211_crypto_add_key()
to indicate whether or not to add key synchronously.
If it's set to true, wait until install key complete event
is received.

Change-Id: I9a69d486665fb3f65a5720ccfbfb638c09329418
CRs-Fixed: 2865832
This commit is contained in:
Yu Wang
2020-12-25 17:03:07 +08:00
committed by Madan Koyyalamudi
parent 45daa78c52
commit dcd269c55a
13 changed files with 450 additions and 9 deletions

View File

@@ -560,6 +560,16 @@ static QDF_STATUS dispatcher_deinit_crypto(void)
{
return wlan_crypto_deinit();
}
static QDF_STATUS dispatcher_crypto_psoc_enable(struct wlan_objmgr_psoc *psoc)
{
return wlan_crypto_psoc_enable(psoc);
}
static QDF_STATUS dispatcher_crypto_psoc_disable(struct wlan_objmgr_psoc *psoc)
{
return wlan_crypto_psoc_disable(psoc);
}
#else
static QDF_STATUS dispatcher_init_crypto(void)
{
@@ -570,6 +580,16 @@ static QDF_STATUS dispatcher_deinit_crypto(void)
{
return QDF_STATUS_SUCCESS;
}
static QDF_STATUS dispatcher_crypto_psoc_enable(struct wlan_objmgr_psoc *psoc)
{
return QDF_STATUS_SUCCESS;
}
static QDF_STATUS dispatcher_crypto_psoc_disable(struct wlan_objmgr_psoc *psoc)
{
return QDF_STATUS_SUCCESS;
}
#endif /* END of WLAN_CONV_CRYPTO_SUPPORTED */
#ifdef WIFI_POS_CONVERGED
@@ -1280,6 +1300,9 @@ QDF_STATUS dispatcher_psoc_enable(struct wlan_objmgr_psoc *psoc)
if (QDF_STATUS_SUCCESS != dispatcher_dbr_psoc_enable(psoc))
goto dbr_psoc_enable_fail;
if (QDF_STATUS_SUCCESS != dispatcher_crypto_psoc_enable(psoc))
goto crypto_psoc_enable_fail;
if (QDF_STATUS_SUCCESS != wlan_mlme_psoc_enable(psoc))
goto mlme_psoc_enable_fail;
@@ -1292,6 +1315,8 @@ QDF_STATUS dispatcher_psoc_enable(struct wlan_objmgr_psoc *psoc)
spectral_psoc_enable_fail:
wlan_mlme_psoc_disable(psoc);
mlme_psoc_enable_fail:
dispatcher_crypto_psoc_disable(psoc);
crypto_psoc_enable_fail:
dispatcher_dbr_psoc_disable(psoc);
dbr_psoc_enable_fail:
fd_psoc_disable(psoc);
@@ -1322,6 +1347,8 @@ QDF_STATUS dispatcher_psoc_disable(struct wlan_objmgr_psoc *psoc)
QDF_BUG(QDF_STATUS_SUCCESS == wlan_mlme_psoc_disable(psoc));
QDF_BUG(QDF_STATUS_SUCCESS == dispatcher_crypto_psoc_disable(psoc));
QDF_BUG(QDF_STATUS_SUCCESS == dispatcher_dbr_psoc_disable(psoc));
QDF_BUG(QDF_STATUS_SUCCESS == fd_psoc_disable(psoc));