[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAPDyKFrouK9b8Gd+DYg-=BE0dYVuiwy3+Jkrp1=4dDXu90gDTw@mail.gmail.com>
Date: Mon, 14 Jul 2025 11:34:08 +0200
From: Ulf Hansson <ulf.hansson@...aro.org>
To: Marek Szyprowski <m.szyprowski@...sung.com>, Krzysztof Kozlowski <krzk@...nel.org>
Cc: Alim Akhtar <alim.akhtar@...sung.com>, linux-arm-kernel@...ts.infradead.org,
linux-samsung-soc@...r.kernel.org, linux-pm@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] pmdomain: samsung: Fix splash-screen handover by
enforcing a sync_state
On Fri, 11 Jul 2025 at 13:47, Ulf Hansson <ulf.hansson@...aro.org> wrote:
>
> It's has been reported that some Samsung platforms fails to boot with
> genpd's new sync_state support.
>
> Typically the problem exists for platforms where bootloaders are turning on
> the splash-screen and handing it over to be managed by the kernel. However,
> at this point, it's not clear how to correctly solve the problem.
>
> Although, to make the platforms boot again, let's add a temporary hack in
> the samsung power-domain provider driver, which enforces a sync_state that
> allows the power-domains to be reset before consumer devices starts to be
> attached.
>
> Reported-by: Marek Szyprowski <m.szyprowski@...sung.com>
> Link: https://lore.kernel.org/all/212a1a56-08a5-48a5-9e98-23de632168d0@samsung.com
> Signed-off-by: Ulf Hansson <ulf.hansson@...aro.org>
Marek, Krzysztof thanks for reviewing and testing!
I have applied for this for next!
Kind regards
Uffe
> ---
> drivers/pmdomain/samsung/exynos-pm-domains.c | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/drivers/pmdomain/samsung/exynos-pm-domains.c b/drivers/pmdomain/samsung/exynos-pm-domains.c
> index 9b502e8751d1..5d478bb37ad6 100644
> --- a/drivers/pmdomain/samsung/exynos-pm-domains.c
> +++ b/drivers/pmdomain/samsung/exynos-pm-domains.c
> @@ -147,6 +147,15 @@ static int exynos_pd_probe(struct platform_device *pdev)
> parent.np, child.np);
> }
>
> + /*
> + * Some Samsung platforms with bootloaders turning on the splash-screen
> + * and handing it over to the kernel, requires the power-domains to be
> + * reset during boot. As a temporary hack to manage this, let's enforce
> + * a sync_state.
> + */
> + if (!ret)
> + of_genpd_sync_state(np);
> +
> pm_runtime_enable(dev);
> return ret;
> }
> --
> 2.43.0
>
Powered by blists - more mailing lists