Re: [PATCH 03/13] ARM: dts: qcom: add missing rpm regulators and cells for ipq8064

From: Dmitry Baryshkov
Date: Wed Jul 06 2022 - 07:55:59 EST


On Wed, 6 Jul 2022 at 13:26, Christian Marangi <ansuelsmth@xxxxxxxxx> wrote:
> On Wed, Jul 06, 2022 at 10:34:16AM +0200, Krzysztof Kozlowski wrote:
> > On 05/07/2022 15:39, Christian Marangi wrote:
> > > Add cells definition for rpm node and add missing regulators for the 4
> > > regulator present on ipq8064. There regulators are controlled by rpm and
> > > to correctly works gsbi4_i2c require to be NEVER disabled or rpm will
> > > reject any regulator change request.
> > >
> > > Signed-off-by: Christian Marangi <ansuelsmth@xxxxxxxxx>
> > > Tested-by: Jonathan McDowell <noodles@xxxxxxxx>

[...]

>
> > > +
> > > rpmcc: clock-controller {
> > > compatible = "qcom,rpmcc-ipq806x", "qcom,rpmcc";
> > > #clock-cells = <1>;
> > > };
> > > +
> > > + smb208_regulators: regulators {
> > > + compatible = "qcom,rpm-smb208-regulators";
> > > + status = "okay";
> >
> > Was the node disabled?
> >
>
> smb208 is the normal and advised way to handle regulators on this
> platform. Some device may want to not follow that and implement their
> own regulator bypassing rpm so we add a status and on the current device
> present upstream we set it disabled as it does use different regulators
> implementation.

Yep, this is correct. But you don't have to define status = 'okay'. It
is the default.

There are two typical patterns:
1) Disable by default
foo.dtsi:
abc: def {
status = "disabled";
};
foo-bar.dtsi:
&abc { status = "okay"; }

2) Enable by default
foo.dtsi:
abc: def {
/* usual properties */
};
foo-bar.dtsi:
&abc { status = "disabled"; }


--
With best wishes
Dmitry