Re: [PATCH] arm64: dts: imx8mm-kontron-n801x-som: do not allow to switch off buck2

From: Lucas Stach
Date: Fri Sep 17 2021 - 07:44:17 EST


Am Freitag, dem 17.09.2021 um 09:28 +0200 schrieb Heiko Thiery:
> Hi Frieder,
>
> Am Mi., 15. Sept. 2021 um 14:09 Uhr schrieb Frieder Schrempf
> <frieder.schrempf@xxxxxxxxxx>:
> >
> > On 15.09.21 14:05, Michael Walle wrote:
> > > Am 2021-09-15 14:03, schrieb Heiko Thiery:
> > > > The buck2 output of the PMIC is the VDD core voltage of the cpu.
> > > > Switching off this will poweroff the CPU. Add the 'regulator-always-on'
> > > > property to avoid this.
> > >
> > > Mh, have this ever worked? Is there a commit which introduced a regression?
> >
> > Yes, this did work before, even without 'regulator-always-on'. I
> > currently don't understand why this is needed. The regulator is
> > referenced in the CPU nodes as 'cpu-supply'. This should be enough to
> > not disable it as long as the CPU is up.
>
> I rechecked that with 5.11, 5.10 and 5.9 and I see on all of them the
> same issue:
>
> [ 31.716031] vdd-5v: disabling
> [ 31.719032] rst-usb-eth2: disabling
> [ 31.722553] buck2: disabling
>
> While on that I tried to compare with other boards and see that they
> also have the cpu-voltage marked as "regulator-always-on". The only
> exception in dts/freescale is in imx8mq-librem5-devkit.dts [1] that
> has not set this property.
>
> I agree with you and don't understand why this is happening. Has
> anyone else an explanation?
>
> [1] https://elixir.bootlin.com/linux/latest/source/arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dts#L319
>
Maybe your kernel config is missing the cpufreq driver, so you don't
have a consumer of the regulator?

Marking the regulator as always-on seems like the right thing to do,
you don't want to depend on a consumer showing up to make sure that
your CPU voltage isn't cut...

Regards,
Lucas