diff --git a/components/pmo/core/src/wlan_pmo_suspend_resume.c b/components/pmo/core/src/wlan_pmo_suspend_resume.c index dfc39c89c377..b335489443ac 100644 --- a/components/pmo/core/src/wlan_pmo_suspend_resume.c +++ b/components/pmo/core/src/wlan_pmo_suspend_resume.c @@ -762,7 +762,7 @@ pmo_core_enable_wow_in_fw(struct wlan_objmgr_psoc *psoc, pmo_tgt_psoc_get_host_credits(psoc), pmo_tgt_psoc_get_pending_cmnds(psoc)); pmo_tgt_update_target_suspend_flag(psoc, false); - qdf_trigger_self_recovery(); + qdf_trigger_self_recovery(QDF_SUSPEND_TIMEOUT); goto out; } @@ -780,7 +780,7 @@ pmo_core_enable_wow_in_fw(struct wlan_objmgr_psoc *psoc, pmo_err("No Credits after HTC ACK:%d, pending_cmds:%d," "cannot resume back", host_credits, wmi_pending_cmds); htc_dump_counter_info(pmo_core_psoc_get_htc_handle(psoc)); - qdf_trigger_self_recovery(); + qdf_trigger_self_recovery(QDF_SUSPEND_TIMEOUT); } pmo_debug("WOW enabled successfully in fw: credits:%d pending_cmds: %d", host_credits, wmi_pending_cmds); @@ -817,7 +817,7 @@ QDF_STATUS pmo_core_psoc_suspend_target(struct wlan_objmgr_psoc *psoc, if (QDF_IS_STATUS_ERROR(status)) { pmo_err("Failed to get ACK from firmware for pdev suspend"); pmo_tgt_update_target_suspend_flag(psoc, false); - qdf_trigger_self_recovery(); + qdf_trigger_self_recovery(QDF_SUSPEND_TIMEOUT); } out: @@ -1048,7 +1048,7 @@ QDF_STATUS pmo_core_psoc_bus_runtime_resume(struct wlan_objmgr_psoc *psoc, fail: if (status != QDF_STATUS_SUCCESS) - qdf_trigger_self_recovery(); + qdf_trigger_self_recovery(QDF_RESUME_TIMEOUT); dec_psoc_ref: pmo_psoc_put_ref(psoc); @@ -1094,7 +1094,7 @@ QDF_STATUS pmo_core_psoc_send_host_wakeup_ind_to_fw( pmo_err("Pending commands %d credits %d", pmo_tgt_psoc_get_pending_cmnds(psoc), pmo_tgt_psoc_get_host_credits(psoc)); - qdf_trigger_self_recovery(); + qdf_trigger_self_recovery(QDF_RESUME_TIMEOUT); } else { pmo_debug("Host wakeup received"); } @@ -1167,7 +1167,7 @@ QDF_STATUS pmo_core_psoc_resume_target(struct wlan_objmgr_psoc *psoc, pmo_fatal("Pending commands %d credits %d", pmo_tgt_psoc_get_pending_cmnds(psoc), pmo_tgt_psoc_get_host_credits(psoc)); - qdf_trigger_self_recovery(); + qdf_trigger_self_recovery(QDF_RESUME_TIMEOUT); } else { pmo_debug("Host wakeup received"); } diff --git a/core/hdd/src/wlan_hdd_cfg80211.c b/core/hdd/src/wlan_hdd_cfg80211.c index 16ac749d5b21..d995f994cafa 100644 --- a/core/hdd/src/wlan_hdd_cfg80211.c +++ b/core/hdd/src/wlan_hdd_cfg80211.c @@ -980,6 +980,9 @@ hdd_convert_hang_reason(enum qdf_hang_reason reason) case QDF_RESUME_TIMEOUT: ret_val = QCA_WLAN_HANG_RESUME_TIMEOUT; break; + case QDF_WMI_EXCEED_MAX_PENDING_CMDS: + ret_val = QCA_WLAN_HANG_WMI_EXCEED_MAX_PENDING_CMDS; + break; case QDF_REASON_UNSPECIFIED: default: ret_val = QCA_WLAN_HANG_REASON_UNSPECIFIED;