qcacld-3.0: Don't allow NAN enable when DFS CAC is in progress
When DFS CAC is going on for SAP, if 5 GHz mac is occupied by the SAP and it's not available for 5 GHz NAN discovery. Enabling NAN on 5 GHz in such cases cause inconsistency in firmware state machine and firmware may assert as DFS MAC is not supposed to be disturbed while CAC is going on. So, check if NAN enable request has 5 GHz NAN channel also and reject the request. Allow NAN enable command if it's 2 GHz only NAN enable request, while CAC is going on. Change-Id: If3f2b2b40cc2b70bc7a872970bc088204440d519 CRs-Fixed: 3458462
This commit is contained in:
@@ -1200,6 +1200,12 @@ static QDF_STATUS nan_set_hw_mode(struct wlan_objmgr_psoc *psoc,
|
||||
goto pre_enable_failure;
|
||||
}
|
||||
|
||||
if (wlan_util_is_vdev_in_cac_wait(pdev, WLAN_NAN_ID)) {
|
||||
nan_err_rl("cac is in progress");
|
||||
status = QDF_STATUS_E_FAILURE;
|
||||
goto pre_enable_failure;
|
||||
}
|
||||
|
||||
pre_enable_failure:
|
||||
if (pdev)
|
||||
wlan_objmgr_pdev_release_ref(pdev, WLAN_NAN_ID);
|
||||
|
@@ -61,6 +61,17 @@ struct scheduler_msg;
|
||||
#define nan_nofl_debug(params...) \
|
||||
QDF_TRACE_DEBUG_NO_FL(QDF_MODULE_ID_NAN, params)
|
||||
|
||||
#define nan_alert_rl(params...) \
|
||||
QDF_TRACE_FATAL_RL(QDF_MODULE_ID_NAN, params)
|
||||
#define nan_err_rl(params...) \
|
||||
QDF_TRACE_ERROR_RL(QDF_MODULE_ID_NAN, params)
|
||||
#define nan_warn_rl(params...) \
|
||||
QDF_TRACE_WARN_RL(QDF_MODULE_ID_NAN, params)
|
||||
#define nan_info_rl(params...) \
|
||||
QDF_TRACE_INFO_RL(QDF_MODULE_ID_NAN, params)
|
||||
#define nan_debug_rl(params...) \
|
||||
QDF_TRACE_DEBUG_RL(QDF_MODULE_ID_NAN, params)
|
||||
|
||||
/**
|
||||
* enum nan_disc_state - NAN Discovery states
|
||||
* @NAN_DISC_DISABLED: NAN Discovery is disabled
|
||||
|
Reference in New Issue
Block a user