From 842d33d296a48a0fd02f501cd24b6b2691fce018 Mon Sep 17 00:00:00 2001 From: Pooja Kumari Date: Thu, 8 Jul 2021 11:48:56 +0530 Subject: [PATCH] msm: ipa3: ignore multiple crash Ignore recursive panic and multiple crash instances. Change-Id: If76d8bb095fa68979bf6a98929fd4629cc3a9c75 Signed-off-by: Pooja Kumari --- drivers/platform/msm/ipa/ipa_v3/ipa.c | 8 ++++++++ drivers/platform/msm/ipa/ipa_v3/ipa_i.h | 1 + 2 files changed, 9 insertions(+) diff --git a/drivers/platform/msm/ipa/ipa_v3/ipa.c b/drivers/platform/msm/ipa/ipa_v3/ipa.c index 07c2d2f619640..7d6b5802dfb0b 100644 --- a/drivers/platform/msm/ipa/ipa_v3/ipa.c +++ b/drivers/platform/msm/ipa/ipa_v3/ipa.c @@ -6025,6 +6025,13 @@ static int ipa3_panic_notifier(struct notifier_block *this, int res; struct ipa_active_client_logging_info log_info; + if (ipa3_ctx != NULL) + { + if (ipa3_ctx->is_device_crashed) + return NOTIFY_DONE; + ipa3_ctx->is_device_crashed = true; + } + ipa3_freeze_clock_vote_and_notify_modem(); IPADBG("Calling uC panic handler\n"); @@ -7126,6 +7133,7 @@ static int ipa3_pre_init(const struct ipa3_plat_drv_res *resource_p, ipa3_ctx->gsi_ch20_wa = resource_p->gsi_ch20_wa; ipa3_ctx->wdi_over_pcie = resource_p->wdi_over_pcie; ipa3_ctx->ipa3_active_clients_logging.log_rdy = false; + ipa3_ctx->is_device_crashed = false; ipa3_ctx->mhi_evid_limits[0] = resource_p->mhi_evid_limits[0]; ipa3_ctx->mhi_evid_limits[1] = resource_p->mhi_evid_limits[1]; ipa3_ctx->entire_ipa_block_size = resource_p->entire_ipa_block_size; diff --git a/drivers/platform/msm/ipa/ipa_v3/ipa_i.h b/drivers/platform/msm/ipa/ipa_v3/ipa_i.h index 2bc0d82040b3d..a6a742fee4934 100644 --- a/drivers/platform/msm/ipa/ipa_v3/ipa_i.h +++ b/drivers/platform/msm/ipa/ipa_v3/ipa_i.h @@ -2154,6 +2154,7 @@ struct ipa3_context { bool is_bw_monitor_supported; bool modem_load_ipa_fw; bool fnr_stats_not_supported; + bool is_device_crashed; }; struct ipa3_plat_drv_res {