On 15/12/2022 12:56, Alistair Francis wrote: > Add support for the rohm,bd71815 power controller controller for the > reMarkable 2. Thank you for your patch. There is something to discuss/improve. > > Signed-off-by: Alistair Francis <alistair@xxxxxxxxxxxxx> > --- > arch/arm/boot/dts/imx7d-remarkable2.dts | 158 ++++++++++++++++++++++++ > 1 file changed, 158 insertions(+) > > diff --git a/arch/arm/boot/dts/imx7d-remarkable2.dts b/arch/arm/boot/dts/imx7d-remarkable2.dts > index a138b292ec6a..e61ef3bd2eb9 100644 > --- a/arch/arm/boot/dts/imx7d-remarkable2.dts > +++ b/arch/arm/boot/dts/imx7d-remarkable2.dts > @@ -92,6 +92,10 @@ wifi_pwrseq: wifi_pwrseq { > }; > }; > > +&cpu0 { > + cpu-supply = <&buck1_reg>; > +}; > + > &clks { > assigned-clocks = <&clks IMX7D_CLKO2_ROOT_SRC>, > <&clks IMX7D_CLKO2_ROOT_DIV>; > @@ -119,6 +123,147 @@ wacom_digitizer: digitizer@9 { > }; > }; > > +&i2c2 { > + clock-frequency = <100000>; > + pinctrl-names = "default", "sleep"; > + pinctrl-0 = <&pinctrl_i2c2>; > + pinctrl-1 = <&pinctrl_i2c2>; > + status = "okay"; > + > + bd71815: pmic@4b { > + #clock-cells = <0>; compatible and reg are usually first properties. > + > + compatible = "rohm,bd71815"; > + reg = <0x4b>; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_bd71815>; > + interrupt-parent = <&gpio6>; /* PMIC_INT_B GPIO6_IO16 */ > + interrupts = <16 IRQ_TYPE_LEVEL_LOW>; > + clocks = <&clks IMX7D_CLKO2_ROOT_SRC>; > + clock-output-names = "bd71815-32k-out"; > + > + regulators { > + #address-cells = <1>; > + #size-cells = <0>; Does not look like you tested the DTS against bindings. Please run `make dtbs_check` (see Documentation/devicetree/bindings/writing-schema.rst for instructions). > + > + buck1_reg: regulator@0 { > + reg = <0>; > + regulator-compatible = "buck1"; > + regulator-min-microvolt = <800000>; > + regulator-max-microvolt = <2000000>; > + regulator-boot-on; > + regulator-always-on; > + regulator-ramp-delay = <1250>; > + }; > + > + buck2_reg: regulator@1 { > + reg = <1>; > + regulator-compatible = "buck2"; > + regulator-min-microvolt = <800000>; > + regulator-max-microvolt = <2000000>; > + regulator-boot-on; > + regulator-always-on; > + regulator-ramp-delay = <1250>; > + }; > + > + buck3_reg: regulator@2 { > + reg = <2>; > + regulator-compatible = "buck3"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <2700000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + buck4_reg: regulator@3 { > + reg = <3>; > + regulator-compatible = "buck4"; > + regulator-min-microvolt = <1100000>; > + regulator-max-microvolt = <1850000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + buck5_reg: regulator@4 { > + reg = <4>; > + regulator-compatible = "buck5"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <3300000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + ldo1_reg: regulator@5 { > + reg = <5>; > + regulator-compatible = "ldo1"; > + regulator-min-microvolt = <800000>; > + regulator-max-microvolt = <3300000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + ldo2_reg: regulator@6 { > + reg = <6>; > + regulator-compatible = "ldo2"; > + regulator-min-microvolt = <800000>; > + regulator-max-microvolt = <3300000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + ldo3_reg: regulator@7 { > + reg = <7>; > + regulator-compatible = "ldo3"; > + regulator-min-microvolt = <800000>; > + regulator-max-microvolt = <3300000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + ldo4_reg: regulator@8 { > + reg = <8>; > + regulator-compatible = "ldo4"; > + regulator-min-microvolt = <800000>; > + regulator-max-microvolt = <3300000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + ldo5_reg: regulator@9 { > + reg = <9>; > + regulator-compatible = "ldo5"; > + regulator-min-microvolt = <800000>; > + regulator-max-microvolt = <3300000>; > + regulator-boot-on; > + regulator-always-on; > + }; > + > + dvref_reg: regulator@10 { > + reg = <10>; Aren't you now mixing hex and dec numbers? > + regulator-compatible = "dvref"; > + regulator-boot-on; > + regulator-always-on; > + }; Best regards, Krzysztof