bus: mhi: host: Use mhi_soc_reset() API in place of register write
authorQiang Yu <quic_qianyu@quicinc.com>
Mon, 10 Oct 2022 04:32:04 +0000 (12:32 +0800)
committerManivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Fri, 28 Oct 2022 17:28:22 +0000 (22:58 +0530)
Currently, a direct register write is used when ramdump collection
in panic path occurs. Replace that with new mhi_soc_reset() API
such that a controller defined reset() function is exercised if
one is present and the regular SOC reset is done if it is not.

Signed-off-by: Qiang Yu <quic_qianyu@quicinc.com>
Reviewed-by: Loic Poulain <loic.poulain@linaro.org>
Reviewed-by: Jeffrey Hugo <quic_jhugo@quicinc.com>
Reviewed-by: Manivannan Sadhasivam <mani@kernel.org>
Link: https://lore.kernel.org/r/1665376324-34258-1-git-send-email-quic_qianyu@quicinc.com
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
drivers/bus/mhi/host/boot.c

index 26d0eddb147718af0f69f5ca5b4a6b92f0d679cd..1c69feee1703005db11c911d86e7dff0d4cb3a7a 100644 (file)
@@ -118,9 +118,7 @@ static int __mhi_download_rddm_in_panic(struct mhi_controller *mhi_cntrl)
                        /* Hardware reset so force device to enter RDDM */
                        dev_dbg(dev,
                                "Did not enter RDDM, do a host req reset\n");
-                       mhi_write_reg(mhi_cntrl, mhi_cntrl->regs,
-                                     MHI_SOC_RESET_REQ_OFFSET,
-                                     MHI_SOC_RESET_REQ);
+                       mhi_soc_reset(mhi_cntrl);
                        udelay(delayus);
                }