From fb2d33f982491535713f77437ea369fba970d028 Mon Sep 17 00:00:00 2001 From: Mohammed Siddiq Date: Mon, 10 May 2021 16:04:56 +0530 Subject: [PATCH] cnss2: Add pci link recovery check after the register dumps In some scenarios, during force firmware assert handler, the pci link is going bad once the registers dumps are started. Add code to do pci link recovery check after register dumps\ collection. Change-Id: I7388e9bea1ffc789d6c4df4870233bf594e2d488 Signed-off-by: Mohammed Siddiq --- drivers/net/wireless/cnss2/pci.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/net/wireless/cnss2/pci.c b/drivers/net/wireless/cnss2/pci.c index c4747258d288..6fa751f1f438 100644 --- a/drivers/net/wireless/cnss2/pci.c +++ b/drivers/net/wireless/cnss2/pci.c @@ -4750,6 +4750,10 @@ int cnss_pci_force_fw_assert_hdlr(struct cnss_pci_data *pci_priv) return -EINVAL; cnss_auto_resume(&pci_priv->pci_dev->dev); + mhi_debug_reg_dump(pci_priv->mhi_ctrl); + cnss_pci_dump_misc_reg(pci_priv); + cnss_pci_dump_shadow_reg(pci_priv); + /* If link is still down here, directly trigger link down recovery */ ret = cnss_pci_check_link_status(pci_priv); if (ret) { @@ -4757,10 +4761,6 @@ int cnss_pci_force_fw_assert_hdlr(struct cnss_pci_data *pci_priv) return 0; } - mhi_debug_reg_dump(pci_priv->mhi_ctrl); - cnss_pci_dump_misc_reg(pci_priv); - cnss_pci_dump_shadow_reg(pci_priv); - ret = cnss_pci_set_mhi_state(pci_priv, CNSS_MHI_TRIGGER_RDDM); if (ret) { if (!test_bit(CNSS_MHI_POWER_ON, &pci_priv->mhi_state) ||