Re: [PATCH 2/8] clk: qcom: gdsc: Enable supply reglator in GPU GX handler

From: Stephen Boyd
Date: Wed Dec 20 2023 - 23:36:39 EST


Quoting Bjorn Andersson (2023-12-20 19:50:36)
> The GX GDSC is modelled to aid the GMU in powering down the GPU in the
> event that the GPU crashes, so that it can be restarted again. But in
> the event that the power-domain is supplied through a dedicated
> regulator (in contrast to being a subdomin of another power-domain),
> something needs to turn that regulator on, both to make sure things are
> powered and to match the operation in gdsc_disable().
>
> Signed-off-by: Bjorn Andersson <quic_bjorande@xxxxxxxxxxx>
> ---
> drivers/clk/qcom/gdsc.c | 8 +++++++-
> 1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/clk/qcom/gdsc.c b/drivers/clk/qcom/gdsc.c
> index 5358e28122ab..d1139c895503 100644
> --- a/drivers/clk/qcom/gdsc.c
> +++ b/drivers/clk/qcom/gdsc.c
> @@ -557,7 +557,13 @@ void gdsc_unregister(struct gdsc_desc *desc)
> */
> int gdsc_gx_do_nothing_enable(struct generic_pm_domain *domain)
> {
> + struct gdsc *sc = domain_to_gdsc(domain);
> + int ret = 0;
> +
> /* Do nothing but give genpd the impression that we were successful */

Update this comment.

> - return 0;
> + if (sc->rsupply)
> + ret = regulator_enable(sc->rsupply);
> +
> + return ret;
> }