Commit c2a952fb authored by Beleswar Padhi's avatar Beleswar Padhi Committed by Greg Kroah-Hartman
Browse files

remoteproc: k3-r5: Refactor sequential core power up/down operations



[ Upstream commit 70117751 ]

The existing implementation of the waiting mechanism in
"k3_r5_cluster_rproc_init()" waits for the "released_from_reset" flag to
be set as part of the firmware boot process in "k3_r5_rproc_start()".
The "k3_r5_cluster_rproc_init()" function is invoked in the probe
routine which causes unexpected failures in cases where the firmware is
unavailable at boot time, resulting in probe failure and removal of the
remoteproc handles in the sysfs paths.

To address this, the waiting mechanism is refactored out of the probe
routine into the appropriate "k3_r5_rproc_{prepare/unprepare}()"
functions. This allows the probe routine to complete without depending
on firmware booting, while still maintaining the required
power-synchronization between cores.

Further, this wait mechanism is dropped from
"k3_r5_rproc_{start/stop}()" functions as they deal with Core Run/Halt
operations, and as such, there is no constraint in Running or Halting
the cores of a cluster in order.

Fixes: 61f6f684 ("remoteproc: k3-r5: Wait for core0 power-up before powering up core1")
Signed-off-by: default avatarBeleswar Padhi <b-padhi@ti.com>
Tested-by: default avatarJudith Mendez <jm@ti.com>
Reviewed-by: default avatarAndrew Davis <afd@ti.com>
Link: https://lore.kernel.org/r/20250513054510.3439842-4-b-padhi@ti.com


Signed-off-by: default avatarMathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent b14a64c1
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment