From fd7dcb16e589710c5df479229e9c574329d32efa Mon Sep 17 00:00:00 2001 From: Yue Ma Date: Wed, 18 Nov 2020 17:11:26 -0800 Subject: [PATCH] cnss2: Set RDDM done only when dump is collected This can help retry dump collection in kernel panic handler if something goes wrong in normal path. Also return proper value for cnss_force_collect_rddm() when RDDM is done successfully. Change-Id: Icf1dabb0313162c459839c52119420f65f73d5c1 Signed-off-by: Yue Ma --- drivers/net/wireless/cnss2/main.c | 2 ++ drivers/net/wireless/cnss2/pci.c | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/net/wireless/cnss2/main.c b/drivers/net/wireless/cnss2/main.c index ceb98ece043c..0ae4a5548a28 100644 --- a/drivers/net/wireless/cnss2/main.c +++ b/drivers/net/wireless/cnss2/main.c @@ -1350,6 +1350,8 @@ wait_rddm: msecs_to_jiffies(CNSS_RDDM_TIMEOUT_MS)); if (!ret) ret = -ETIMEDOUT; + else if (ret > 0) + ret = 0; return ret; } diff --git a/drivers/net/wireless/cnss2/pci.c b/drivers/net/wireless/cnss2/pci.c index 97298f1b5688..1013acf3a5b9 100644 --- a/drivers/net/wireless/cnss2/pci.c +++ b/drivers/net/wireless/cnss2/pci.c @@ -4463,8 +4463,9 @@ void cnss_pci_collect_dump_info(struct cnss_pci_data *pci_priv, bool in_panic) if (dump_data->nentries > 0) plat_priv->ramdump_info_v2.dump_data_valid = true; -skip_dump: cnss_pci_set_mhi_state(pci_priv, CNSS_MHI_RDDM_DONE); + +skip_dump: complete(&plat_priv->rddm_complete); }