qcacld-3.0: Refactor firmware, serialization and HDD CMD timeouts
Refactor firmware, serialization and command timeouts so that HDD timeout are greater than serialization is greater than firmware timeout. The timeouts are defined considering below worst case delay in firmware. WMI_VDEV_START_REQUEST_CMDID 6 sec WMI_VDEV_RESTART_REQUEST_CMDID 6 sec WMI_VDEV_STOP_CMDID 2 sec WMI_PEER_DELETE_CMDID 2 sec WMI_PEER_ASSOC_CMDID 2 sec WMI_PDEV_SET_HW_MODE_CMDID 2 sec WMI_PDEV_SET_MAC_CONFIG_CMDID 2 sec Change-Id: I270e980ed1cf2aee55a1fa4e88ff8ddc845a203b CRs-Fixed: 2384389
This commit is contained in:
parent
93f0fcbffc
commit
d1f21c7b0d
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2017-2018 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2017-2019 The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
@ -44,6 +44,8 @@ struct wlan_objmgr_vdev;
|
||||
|
||||
#define NAN_PSEUDO_VDEV_ID CFG_TGT_NUM_VDEV
|
||||
|
||||
#define NAN_SER_CMD_TIMEOUT 4000
|
||||
|
||||
/**
|
||||
* enum nan_discovery_msg_type - NAN msg type
|
||||
* @NAN_GENERIC_REQ: Type for all the NAN requests other than enable/disable
|
||||
|
@ -278,7 +278,7 @@ QDF_STATUS nan_scheduled_msg_handler(struct scheduler_msg *msg)
|
||||
cmd.umac_cmd = msg->bodyptr;
|
||||
cmd.source = WLAN_UMAC_COMP_NAN;
|
||||
cmd.is_high_priority = false;
|
||||
cmd.cmd_timeout_duration = 30000 /* 30 sec for now. TBD */;
|
||||
cmd.cmd_timeout_duration = NAN_SER_CMD_TIMEOUT;
|
||||
nan_debug("cmd_type: %d", cmd.cmd_type);
|
||||
cmd.is_blocking = true;
|
||||
|
||||
|
@ -51,8 +51,8 @@ struct wlan_objmgr_psoc;
|
||||
|
||||
#define AC_PRIORITY_NUM 4
|
||||
|
||||
/* default tdls serialize timeout is set to 10 secs */
|
||||
#define TDLS_DEFAULT_SERIALIZE_CMD_TIMEOUT 10000
|
||||
/* default tdls serialize timeout is set to 4 secs */
|
||||
#define TDLS_DEFAULT_SERIALIZE_CMD_TIMEOUT 4000
|
||||
|
||||
/** Maximum time(ms) to wait for tdls add sta to complete **/
|
||||
#define WAIT_TIME_TDLS_ADD_STA (TDLS_DEFAULT_SERIALIZE_CMD_TIMEOUT + 1000)
|
||||
|
@ -208,15 +208,6 @@ enum hdd_driver_flags {
|
||||
ACS_IN_PROGRESS,
|
||||
};
|
||||
|
||||
/** Maximum time(ms)to wait for disconnect to complete **/
|
||||
/* This value should be larger than the timeout used by WMA to wait for
|
||||
* stop vdev response from FW
|
||||
*/
|
||||
#ifdef QCA_WIFI_3_0_EMU
|
||||
#define WLAN_WAIT_TIME_DISCONNECT 7000
|
||||
#else
|
||||
#define WLAN_WAIT_TIME_DISCONNECT 7000
|
||||
#endif
|
||||
#define WLAN_WAIT_DISCONNECT_ALREADY_IN_PROGRESS 1000
|
||||
#define WLAN_WAIT_TIME_STOP_ROAM 4000
|
||||
#define WLAN_WAIT_TIME_STATS 800
|
||||
@ -231,9 +222,6 @@ enum hdd_driver_flags {
|
||||
/* Scan Req Timeout */
|
||||
#define WLAN_WAIT_TIME_SCAN_REQ 100
|
||||
|
||||
#define WLAN_WAIT_TIME_ANTENNA_MODE_REQ 3000
|
||||
#define WLAN_WAIT_TIME_SET_DUAL_MAC_CFG 1500
|
||||
|
||||
#define WLAN_WAIT_TIME_APF 1000
|
||||
|
||||
#define WLAN_WAIT_TIME_FW_ROAM_STATS 1000
|
||||
|
@ -17354,7 +17354,7 @@ int wlan_hdd_try_disconnect(struct hdd_adapter *adapter)
|
||||
struct hdd_station_ctx *sta_ctx;
|
||||
int status, result = 0;
|
||||
mac_handle_t mac_handle;
|
||||
uint32_t wait_time = WLAN_WAIT_TIME_DISCONNECT;
|
||||
uint32_t wait_time = SME_DISCONNECT_TIMEOUT;
|
||||
struct hdd_context *hdd_ctx;
|
||||
|
||||
hdd_ctx = WLAN_HDD_GET_CTX(adapter);
|
||||
@ -17771,7 +17771,7 @@ int wlan_hdd_disconnect(struct hdd_adapter *adapter, u16 reason)
|
||||
struct hdd_context *hdd_ctx = WLAN_HDD_GET_CTX(adapter);
|
||||
eConnectionState prev_conn_state;
|
||||
mac_handle_t mac_handle;
|
||||
uint32_t wait_time = WLAN_WAIT_TIME_DISCONNECT;
|
||||
uint32_t wait_time = SME_DISCONNECT_TIMEOUT;
|
||||
|
||||
hdd_enter();
|
||||
|
||||
@ -18496,7 +18496,7 @@ static int __wlan_hdd_cfg80211_leave_ibss(struct wiphy *wiphy,
|
||||
* all set to proceed further
|
||||
*/
|
||||
rc = wait_for_completion_timeout(&adapter->disconnect_comp_var,
|
||||
msecs_to_jiffies(WLAN_WAIT_TIME_DISCONNECT));
|
||||
msecs_to_jiffies(SME_DISCONNECT_TIMEOUT));
|
||||
if (!rc) {
|
||||
hdd_err("Failed to disconnect, timed out");
|
||||
return -ETIMEDOUT;
|
||||
@ -18793,7 +18793,7 @@ int __wlan_hdd_cfg80211_del_station(struct wiphy *wiphy,
|
||||
qdf_wait_for_event_completion(
|
||||
&hapd_state->
|
||||
qdf_sta_disassoc_event,
|
||||
SME_CMD_TIMEOUT_VALUE);
|
||||
SME_PEER_DISCONNECT_TIMEOUT);
|
||||
if (!QDF_IS_STATUS_SUCCESS(
|
||||
qdf_status))
|
||||
hdd_warn("Deauth wait time expired");
|
||||
@ -18853,7 +18853,7 @@ int __wlan_hdd_cfg80211_del_station(struct wiphy *wiphy,
|
||||
qdf_status = qdf_wait_for_event_completion(
|
||||
&hapd_state->
|
||||
qdf_sta_disassoc_event,
|
||||
SME_CMD_TIMEOUT_VALUE);
|
||||
SME_PEER_DISCONNECT_TIMEOUT);
|
||||
if (!QDF_IS_STATUS_SUCCESS(qdf_status))
|
||||
hdd_warn("Deauth wait time expired");
|
||||
|
||||
|
@ -5437,7 +5437,7 @@ int wlan_hdd_cfg80211_start_bss(struct hdd_adapter *adapter,
|
||||
hdd_debug("Waiting for Scan to complete(auto mode) and BSS to start");
|
||||
|
||||
qdf_status = qdf_wait_for_event_completion(&hostapd_state->qdf_event,
|
||||
SME_CMD_START_STOP_BSS_TIMEOUT);
|
||||
SME_CMD_START_BSS_TIMEOUT);
|
||||
|
||||
wlansap_reset_sap_config_add_ie(pConfig, eUPDATE_IE_ALL);
|
||||
|
||||
@ -5623,7 +5623,7 @@ static int __wlan_hdd_cfg80211_stop_ap(struct wiphy *wiphy,
|
||||
qdf_status =
|
||||
qdf_wait_for_event_completion(&hostapd_state->
|
||||
qdf_stop_bss_event,
|
||||
SME_CMD_START_STOP_BSS_TIMEOUT);
|
||||
SME_CMD_STOP_BSS_TIMEOUT);
|
||||
|
||||
if (!QDF_IS_STATUS_SUCCESS(qdf_status)) {
|
||||
hdd_err("qdf wait for single_event failed!!");
|
||||
|
@ -2139,7 +2139,7 @@ __iw_softap_stopbss(struct net_device *dev,
|
||||
status =
|
||||
qdf_wait_for_event_completion(&hostapd_state->
|
||||
qdf_stop_bss_event,
|
||||
SME_CMD_START_STOP_BSS_TIMEOUT);
|
||||
SME_CMD_STOP_BSS_TIMEOUT);
|
||||
|
||||
if (!QDF_IS_STATUS_SUCCESS(status)) {
|
||||
hdd_err("wait for single_event failed!!");
|
||||
|
@ -6615,7 +6615,7 @@ int hdd_set_antenna_mode(struct hdd_adapter *adapter,
|
||||
struct osif_request *request = NULL;
|
||||
static const struct osif_request_params request_params = {
|
||||
.priv_size = 0,
|
||||
.timeout_ms = WLAN_WAIT_TIME_ANTENNA_MODE_REQ,
|
||||
.timeout_ms = SME_POLICY_MGR_CMD_TIMEOUT,
|
||||
};
|
||||
|
||||
switch (mode) {
|
||||
|
@ -5463,7 +5463,7 @@ QDF_STATUS hdd_stop_adapter_ext(struct hdd_context *hdd_ctx,
|
||||
rc = wait_for_completion_timeout(
|
||||
&adapter->disconnect_comp_var,
|
||||
msecs_to_jiffies
|
||||
(WLAN_WAIT_TIME_DISCONNECT));
|
||||
(SME_DISCONNECT_TIMEOUT));
|
||||
if (!rc)
|
||||
hdd_warn("disconn_comp_var wait fail");
|
||||
}
|
||||
@ -5583,7 +5583,7 @@ QDF_STATUS hdd_stop_adapter_ext(struct hdd_context *hdd_ctx,
|
||||
qdf_stop_bss_event);
|
||||
status = qdf_wait_for_event_completion(
|
||||
&hostapd_state->qdf_stop_bss_event,
|
||||
SME_CMD_START_STOP_BSS_TIMEOUT);
|
||||
SME_CMD_STOP_BSS_TIMEOUT);
|
||||
if (QDF_IS_STATUS_ERROR(status))
|
||||
hdd_err("failure waiting for wlansap_stop_bss %d",
|
||||
status);
|
||||
@ -12756,7 +12756,7 @@ void wlan_hdd_stop_sap(struct hdd_adapter *ap_adapter)
|
||||
sap_context)) {
|
||||
qdf_status = qdf_wait_for_event_completion(&hostapd_state->
|
||||
qdf_stop_bss_event,
|
||||
SME_CMD_START_STOP_BSS_TIMEOUT);
|
||||
SME_CMD_STOP_BSS_TIMEOUT);
|
||||
if (!QDF_IS_STATUS_SUCCESS(qdf_status)) {
|
||||
mutex_unlock(&hdd_ctx->sap_lock);
|
||||
hdd_err("SAP Stop Failed");
|
||||
@ -12828,7 +12828,7 @@ void wlan_hdd_start_sap(struct hdd_adapter *ap_adapter, bool reinit)
|
||||
|
||||
hdd_debug("Waiting for SAP to start");
|
||||
qdf_status = qdf_wait_for_event_completion(&hostapd_state->qdf_event,
|
||||
SME_CMD_START_STOP_BSS_TIMEOUT);
|
||||
SME_CMD_START_BSS_TIMEOUT);
|
||||
if (!QDF_IS_STATUS_SUCCESS(qdf_status)) {
|
||||
hdd_err("SAP Start failed");
|
||||
goto end;
|
||||
@ -14817,7 +14817,7 @@ void hdd_restart_sap(struct hdd_adapter *ap_adapter)
|
||||
qdf_status =
|
||||
qdf_wait_for_event_completion(&hostapd_state->
|
||||
qdf_stop_bss_event,
|
||||
SME_CMD_START_STOP_BSS_TIMEOUT);
|
||||
SME_CMD_STOP_BSS_TIMEOUT);
|
||||
|
||||
if (!QDF_IS_STATUS_SUCCESS(qdf_status)) {
|
||||
hdd_err("SAP Stop Failed");
|
||||
@ -14851,7 +14851,7 @@ void hdd_restart_sap(struct hdd_adapter *ap_adapter)
|
||||
hdd_info("Waiting for SAP to start");
|
||||
qdf_status =
|
||||
qdf_wait_for_event_completion(&hostapd_state->qdf_event,
|
||||
SME_CMD_START_STOP_BSS_TIMEOUT);
|
||||
SME_CMD_START_BSS_TIMEOUT);
|
||||
wlansap_reset_sap_config_add_ie(sap_config,
|
||||
eUPDATE_IE_ALL);
|
||||
if (!QDF_IS_STATUS_SUCCESS(qdf_status)) {
|
||||
|
@ -850,7 +850,7 @@ int hdd_reg_set_band(struct net_device *dev, u8 ui_band)
|
||||
lrc = wait_for_completion_timeout(
|
||||
&adapter->disconnect_comp_var,
|
||||
msecs_to_jiffies(
|
||||
WLAN_WAIT_TIME_DISCONNECT));
|
||||
SME_DISCONNECT_TIMEOUT));
|
||||
|
||||
if (lrc == 0) {
|
||||
hdd_err("Timeout while waiting for csr_roam_disconnect");
|
||||
|
@ -89,6 +89,14 @@ typedef uint8_t tSirVersionString[SIR_VERSION_STRING_LEN];
|
||||
#define MAXNUM_PERIODIC_TX_PTRNS 6
|
||||
#define WIFI_SCANNING_MAC_OUI_LENGTH 3
|
||||
|
||||
|
||||
/* FW response timeout values in milli seconds */
|
||||
#define SIR_PEER_ASSOC_TIMEOUT (2000) /* 1 seconds */
|
||||
#define SIR_DELETE_STA_TIMEOUT (2000) /* 2 seconds */
|
||||
#define SIR_VDEV_START_REQUEST_TIMEOUT (6000)
|
||||
#define SIR_VDEV_STOP_REQUEST_TIMEOUT (2000)
|
||||
#define SIR_VDEV_PLCY_MGR_TIMEOUT (2000)
|
||||
|
||||
/* This should not be greater than MAX_NUMBER_OF_CONC_CONNECTIONS */
|
||||
#define MAX_VDEV_SUPPORTED 4
|
||||
|
||||
|
@ -104,13 +104,27 @@
|
||||
#define SME_ACTIVE_LIST_CMD_TIMEOUT_VALUE (30*1000)
|
||||
#define SME_CMD_TIMEOUT_VALUE (SME_ACTIVE_LIST_CMD_TIMEOUT_VALUE + 1000)
|
||||
|
||||
/* SME timeout for Start/Stop BSS commands is set to 10 secs */
|
||||
#define SME_START_STOP_BSS_CMD_TIMEOUT (10 * 1000)
|
||||
#define SME_CMD_START_STOP_BSS_TIMEOUT (SME_START_STOP_BSS_CMD_TIMEOUT + 1000)
|
||||
#define SME_CMD_VDEV_DISCONNECT_TIMEOUT (SIR_VDEV_STOP_REQUEST_TIMEOUT + 4000)
|
||||
#define SME_DISCONNECT_TIMEOUT (SME_CMD_VDEV_DISCONNECT_TIMEOUT + 1000)
|
||||
|
||||
/* SME timeout for vdev delete is set to 10 secs */
|
||||
#define SME_VDEV_DELETE_CMD_TIMEOUT (10 * 1000)
|
||||
#define SME_CMD_VDEV_CREATE_DELETE_TIMEOUT (SME_VDEV_DELETE_CMD_TIMEOUT + 1000)
|
||||
#define SME_CMD_VDEV_START_BSS_TIMEOUT (SIR_VDEV_START_REQUEST_TIMEOUT + 4000)
|
||||
#define SME_CMD_START_BSS_TIMEOUT (SME_CMD_VDEV_START_BSS_TIMEOUT + 1000)
|
||||
|
||||
/* SME timeout for Start/Stop BSS commands is set to 6 secs */
|
||||
#define SME_START_STOP_BSS_CMD_TIMEOUT (SIR_VDEV_STOP_REQUEST_TIMEOUT + 4000)
|
||||
#define SME_CMD_STOP_BSS_TIMEOUT (SME_START_STOP_BSS_CMD_TIMEOUT + 4000)
|
||||
|
||||
#define SME_CMD_PEER_DISCONNECT_TIMEOUT (SIR_DELETE_STA_TIMEOUT + 2000)
|
||||
#define SME_PEER_DISCONNECT_TIMEOUT (SME_START_STOP_BSS_CMD_TIMEOUT + 1000)
|
||||
|
||||
#define SME_CMD_ROAM_CMD_TIMEOUT (SIR_VDEV_START_REQUEST_TIMEOUT + 4000)
|
||||
#define SME_CMD_ADD_DEL_TS_TIMEOUT (4 * 1000)
|
||||
|
||||
#define SME_CMD_POLICY_MGR_CMD_TIMEOUT (SIR_VDEV_PLCY_MGR_TIMEOUT + 2000)
|
||||
#define SME_POLICY_MGR_CMD_TIMEOUT (SME_CMD_POLICY_MGR_CMD_TIMEOUT + 1000)
|
||||
|
||||
#define SME_VDEV_DELETE_CMD_TIMEOUT (6 * 1000)
|
||||
#define SME_CMD_VDEV_CREATE_DELETE_TIMEOUT (SME_VDEV_DELETE_CMD_TIMEOUT + 4000)
|
||||
|
||||
/*--------------------------------------------------------------------------
|
||||
Type declarations
|
||||
|
@ -51,8 +51,6 @@ ePhyChanBondState csr_convert_cb_ini_value_to_phy_cb_state(uint32_t cbIniValue);
|
||||
* to make sure we have space for these cmds + some additional cmds.
|
||||
*/
|
||||
#define SME_TOTAL_COMMAND (HAL_NUM_STA * 3)
|
||||
/* default sme timeout is set to 30 secs */
|
||||
#define SME_DEFAULT_CMD_TIMEOUT 30000
|
||||
|
||||
typedef struct sGenericQosCmd {
|
||||
struct sme_qos_wmmtspecinfo tspecInfo;
|
||||
|
@ -19350,6 +19350,56 @@ static uint32_t csr_get_monotonous_number(struct mac_context *mac_ctx)
|
||||
return cmd_id;
|
||||
}
|
||||
|
||||
static void csr_fill_cmd_timeout(struct wlan_serialization_command *cmd)
|
||||
{
|
||||
switch (cmd->cmd_type) {
|
||||
case WLAN_SER_CMD_VDEV_DISCONNECT:
|
||||
case WLAN_SER_CMD_FORCE_IBSS_LEAVE:
|
||||
case WLAN_SER_CMD_WM_STATUS_CHANGE:
|
||||
cmd->cmd_timeout_duration = SME_CMD_VDEV_DISCONNECT_TIMEOUT;
|
||||
break;
|
||||
case WLAN_SER_CMD_VDEV_START_BSS:
|
||||
cmd->cmd_timeout_duration = SME_CMD_VDEV_START_BSS_TIMEOUT;
|
||||
break;
|
||||
case WLAN_SER_CMD_VDEV_STOP_BSS:
|
||||
cmd->cmd_timeout_duration = SME_START_STOP_BSS_CMD_TIMEOUT;
|
||||
break;
|
||||
case WLAN_SER_CMD_FORCE_DISASSOC_STA:
|
||||
case WLAN_SER_CMD_FORCE_DEAUTH_STA:
|
||||
cmd->cmd_timeout_duration = SME_CMD_PEER_DISCONNECT_TIMEOUT;
|
||||
break;
|
||||
case WLAN_SER_CMD_DEL_STA_SESSION:
|
||||
cmd->cmd_timeout_duration = SME_VDEV_DELETE_CMD_TIMEOUT;
|
||||
break;
|
||||
case WLAN_SER_CMD_HDD_ISSUE_REASSOC_SAME_AP:
|
||||
case WLAN_SER_CMD_SME_ISSUE_REASSOC_SAME_AP:
|
||||
case WLAN_SER_CMD_SME_ISSUE_DISASSOC_FOR_HANDOFF:
|
||||
case WLAN_SER_CMD_SME_ISSUE_ASSOC_TO_SIMILAR_AP:
|
||||
case WLAN_SER_CMD_SME_ISSUE_FT_REASSOC:
|
||||
case WLAN_SER_CMD_PERFORM_PRE_AUTH:
|
||||
cmd->cmd_timeout_duration = SME_CMD_ROAM_CMD_TIMEOUT;
|
||||
break;
|
||||
case WLAN_SER_CMD_ADDTS:
|
||||
case WLAN_SER_CMD_DELTS:
|
||||
cmd->cmd_timeout_duration = SME_CMD_ADD_DEL_TS_TIMEOUT;
|
||||
break;
|
||||
case WLAN_SER_CMD_SET_HW_MODE:
|
||||
case WLAN_SER_CMD_NSS_UPDATE:
|
||||
case WLAN_SER_CMD_SET_DUAL_MAC_CONFIG:
|
||||
case WLAN_SER_CMD_SET_ANTENNA_MODE:
|
||||
cmd->cmd_timeout_duration = SME_CMD_POLICY_MGR_CMD_TIMEOUT;
|
||||
break;
|
||||
case WLAN_SER_CMD_VDEV_CONNECT:
|
||||
/* fallthrough to use def MAX value */
|
||||
default:
|
||||
cmd->cmd_timeout_duration = SME_ACTIVE_LIST_CMD_TIMEOUT_VALUE;
|
||||
break;
|
||||
}
|
||||
|
||||
sme_debug("cmd_type %d, timeout %d", cmd->cmd_type,
|
||||
cmd->cmd_timeout_duration);
|
||||
}
|
||||
|
||||
QDF_STATUS csr_set_serialization_params_to_cmd(struct mac_context *mac_ctx,
|
||||
tSmeCmd *sme_cmd, struct wlan_serialization_command *cmd,
|
||||
uint8_t high_priority)
|
||||
@ -19388,17 +19438,7 @@ QDF_STATUS csr_set_serialization_params_to_cmd(struct mac_context *mac_ctx,
|
||||
}
|
||||
cmd->umac_cmd = sme_cmd;
|
||||
|
||||
/*
|
||||
* For START BSS and STOP BSS commands for SAP, the command timeout
|
||||
* is set to 10 seconds. For all other commands its 30 seconds
|
||||
*/
|
||||
if ((cmd->vdev->vdev_mlme.vdev_opmode == QDF_SAP_MODE) &&
|
||||
(cmd->cmd_type == WLAN_SER_CMD_VDEV_STOP_BSS))
|
||||
cmd->cmd_timeout_duration = SME_START_STOP_BSS_CMD_TIMEOUT;
|
||||
else if (cmd->cmd_type == WLAN_SER_CMD_DEL_STA_SESSION)
|
||||
cmd->cmd_timeout_duration = SME_VDEV_DELETE_CMD_TIMEOUT;
|
||||
else
|
||||
cmd->cmd_timeout_duration = SME_DEFAULT_CMD_TIMEOUT;
|
||||
csr_fill_cmd_timeout(cmd);
|
||||
|
||||
cmd->cmd_cb = sme_ser_cmd_callback;
|
||||
cmd->is_high_priority = high_priority;
|
||||
|
@ -190,10 +190,10 @@
|
||||
#define WMA_TARGET_REQ_TYPE_VDEV_DEL 0x3
|
||||
|
||||
#define WMA_PEER_ASSOC_CNF_START 0x01
|
||||
#define WMA_PEER_ASSOC_TIMEOUT (6000) /* 6 seconds */
|
||||
#define WMA_PEER_ASSOC_TIMEOUT SIR_PEER_ASSOC_TIMEOUT
|
||||
|
||||
#define WMA_DELETE_STA_RSP_START 0x02
|
||||
#define WMA_DELETE_STA_TIMEOUT (6000) /* 6 seconds */
|
||||
#define WMA_DELETE_STA_TIMEOUT SIR_DELETE_STA_TIMEOUT
|
||||
|
||||
#define WMA_DEL_P2P_SELF_STA_RSP_START 0x03
|
||||
#define WMA_SET_LINK_PEER_RSP 0x04
|
||||
@ -203,11 +203,14 @@
|
||||
#define WMA_PDEV_MAC_CFG_RESP 0x07
|
||||
|
||||
/* FW response timeout values in milli seconds */
|
||||
#define WMA_VDEV_START_REQUEST_TIMEOUT (6000)
|
||||
#define WMA_VDEV_STOP_REQUEST_TIMEOUT (6000)
|
||||
#define WMA_VDEV_HW_MODE_REQUEST_TIMEOUT (6000)
|
||||
#define WMA_VDEV_PLCY_MGR_CMD_TIMEOUT (6000)
|
||||
#define WMA_VDEV_DUAL_MAC_CFG_TIMEOUT (5000)
|
||||
#define WMA_VDEV_START_REQUEST_TIMEOUT SIR_VDEV_START_REQUEST_TIMEOUT
|
||||
#define WMA_VDEV_STOP_REQUEST_TIMEOUT SIR_VDEV_STOP_REQUEST_TIMEOUT
|
||||
#define WMA_VDEV_PLCY_MGR_TIMEOUT SIR_VDEV_PLCY_MGR_TIMEOUT
|
||||
#define WMA_VDEV_HW_MODE_REQUEST_TIMEOUT WMA_VDEV_PLCY_MGR_TIMEOUT
|
||||
#define WMA_VDEV_DUAL_MAC_CFG_TIMEOUT WMA_VDEV_PLCY_MGR_TIMEOUT
|
||||
#define WMA_VDEV_PLCY_MGR_WAKE_LOCK_TIMEOUT \
|
||||
(WMA_VDEV_PLCY_MGR_TIMEOUT + 500)
|
||||
|
||||
|
||||
#define WMA_VDEV_SET_KEY_WAKELOCK_TIMEOUT WAKELOCK_DURATION_RECOMMENDED
|
||||
|
||||
|
@ -9250,7 +9250,7 @@ QDF_STATUS wma_send_pdev_set_dual_mac_config(tp_wma_handle wma_handle,
|
||||
* In error condition, release the wake lock right away
|
||||
*/
|
||||
wma_acquire_wakelock(&wma_handle->wmi_cmd_rsp_wake_lock,
|
||||
WMA_VDEV_PLCY_MGR_CMD_TIMEOUT);
|
||||
WMA_VDEV_PLCY_MGR_WAKE_LOCK_TIMEOUT);
|
||||
status = wmi_unified_pdev_set_dual_mac_config_cmd(
|
||||
wma_handle->wmi_handle,
|
||||
(struct policy_mgr_dual_mac_config *)msg);
|
||||
|
Loading…
Reference in New Issue
Block a user