qcacld-3.0: Pass hang reason to qdf_trigger_self_recovery

Pass hang reason to qdf_trigger_self_recovery

Change-Id: I9930731d0a565e021eb472163de7fb5190c39f35
CRs-Fixed: 2432834
This commit is contained in:
Jingxiang Ge 2019-04-10 14:47:51 +08:00 committed by nshrivas
parent d4e3a1bed9
commit 2a67be508a
2 changed files with 9 additions and 6 deletions

View File

@ -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");
}

View File

@ -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;