[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <522affaa-47ad-4834-be3c-acdd04902821@ti.com>
Date: Tue, 3 Sep 2024 15:45:29 +0530
From: Beleswar Prasad Padhi <b-padhi@...com>
To: <andersson@...nel.org>, <mathieu.poirier@...aro.org>, <afd@...com>
CC: <hnagalla@...com>, <u-kumar1@...com>, <linux-remoteproc@...r.kernel.org>,
<linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2] remoteproc: k3-r5: Delay notification of wakeup event
Hi Mathieu,
On 20-08-2024 16:20, Beleswar Padhi wrote:
> From: Udit Kumar <u-kumar1@...com>
>
> Few times, core1 was scheduled to boot first before core0, which leads
> to error:
>
> 'k3_r5_rproc_start: can not start core 1 before core 0'.
>
> This was happening due to some scheduling between prepare and start
> callback. The probe function waits for event, which is getting
> triggered by prepare callback. To avoid above condition move event
> trigger to start instead of prepare callback.
>
> Fixes: 61f6f68447ab ("remoteproc: k3-r5: Wait for core0 power-up before powering up core1")
Please put this patch on hold. I have some additional changelog that
should go in v3.
Thanks,
Beleswar
> Signed-off-by: Udit Kumar <u-kumar1@...com>
> [ Applied wakeup event trigger only for Split-Mode booted rprocs ]
> Signed-off-by: Beleswar Padhi <b-padhi@...com>
> ---
> v2: Changelog:
> * Mathieu
> 1) Rebased changes on top of -next-20240820 tag.
>
> Link to v1:
> https://lore.kernel.org/all/20240809060132.308642-1-b-padhi@ti.com/
>
> drivers/remoteproc/ti_k3_r5_remoteproc.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/remoteproc/ti_k3_r5_remoteproc.c b/drivers/remoteproc/ti_k3_r5_remoteproc.c
> index 8a63a9360c0f..e61e53381abc 100644
> --- a/drivers/remoteproc/ti_k3_r5_remoteproc.c
> +++ b/drivers/remoteproc/ti_k3_r5_remoteproc.c
> @@ -469,8 +469,6 @@ static int k3_r5_rproc_prepare(struct rproc *rproc)
> ret);
> return ret;
> }
> - core->released_from_reset = true;
> - wake_up_interruptible(&cluster->core_transition);
>
> /*
> * Newer IP revisions like on J7200 SoCs support h/w auto-initialization
> @@ -587,6 +585,9 @@ static int k3_r5_rproc_start(struct rproc *rproc)
> ret = k3_r5_core_run(core);
> if (ret)
> return ret;
> +
> + core->released_from_reset = true;
> + wake_up_interruptible(&cluster->core_transition);
> }
>
> return 0;
Powered by blists - more mailing lists