diff mbox series

[1/4] remoteproc: k3-dsp: Fix unbalanced state machine in k3_dsp_start

Message ID 20200310210556.9053-2-s-anna@ti.com
State Accepted
Commit 0020003ef3aac0d56b0d1b26c1dcace4b7d1ae6f
Headers show
Series TI K3 DSP remoteproc fixes/enhancements | expand

Commit Message

Suman Anna March 10, 2020, 9:05 p.m. UTC
The global module reset is deasserted through the ti_sci_power_domain_on()
call in k3_dsp_start(), but is not asserted back if the local module reset
fails. Fix this.

While at this, remove the stale comment about assigned-clock-rates that
seems to have been copied from the K3 ARM64 Remoteproc driver.

Fixes: ab827b385718 ("remoteproc: Introduce K3 C66 and C71 remoteproc driver")
Signed-off-by: Suman Anna <s-anna at ti.com>
---
 drivers/remoteproc/ti_k3_dsp_rproc.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)
diff mbox series

Patch

diff --git a/drivers/remoteproc/ti_k3_dsp_rproc.c b/drivers/remoteproc/ti_k3_dsp_rproc.c
index 09e050ffb2d3..ff5d7f7f464f 100644
--- a/drivers/remoteproc/ti_k3_dsp_rproc.c
+++ b/drivers/remoteproc/ti_k3_dsp_rproc.c
@@ -102,16 +102,14 @@  static int k3_dsp_start(struct udevice *dev)
 	ret = ti_sci_proc_request(&dsp->tsp);
 	if (ret)
 		return ret;
-	/*
-	 * Setting the right clock frequency would have taken care by
-	 * assigned-clock-rates during the device probe. So no need to
-	 * set the frequency again here.
-	 */
+
 	ret = ti_sci_proc_power_domain_on(&dsp->tsp);
 	if (ret)
 		goto proc_release;
 
 	ret = reset_deassert(&dsp->dsp_rst);
+	if (ret)
+		ti_sci_proc_power_domain_off(&dsp->tsp);
 
 proc_release:
 	ti_sci_proc_release(&dsp->tsp);