remoteproc: k3-dsp: Fix unbalanced state machine in k3_dsp_start
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: ab827b3857 ("remoteproc: Introduce K3 C66 and C71 remoteproc driver")
Signed-off-by: Suman Anna <s-anna@ti.com>
			
			
This commit is contained in:
		
							parent
							
								
									6e44aebdbb
								
							
						
					
					
						commit
						0020003ef3
					
				| 
						 | 
					@ -102,16 +102,14 @@ static int k3_dsp_start(struct udevice *dev)
 | 
				
			||||||
	ret = ti_sci_proc_request(&dsp->tsp);
 | 
						ret = ti_sci_proc_request(&dsp->tsp);
 | 
				
			||||||
	if (ret)
 | 
						if (ret)
 | 
				
			||||||
		return 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);
 | 
						ret = ti_sci_proc_power_domain_on(&dsp->tsp);
 | 
				
			||||||
	if (ret)
 | 
						if (ret)
 | 
				
			||||||
		goto proc_release;
 | 
							goto proc_release;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	ret = reset_deassert(&dsp->dsp_rst);
 | 
						ret = reset_deassert(&dsp->dsp_rst);
 | 
				
			||||||
 | 
						if (ret)
 | 
				
			||||||
 | 
							ti_sci_proc_power_domain_off(&dsp->tsp);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
proc_release:
 | 
					proc_release:
 | 
				
			||||||
	ti_sci_proc_release(&dsp->tsp);
 | 
						ti_sci_proc_release(&dsp->tsp);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue