Message ID | 20230414093411.113787-4-cristian.ciocaltea@collabora.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Add regulators to Rock 5B's CPU big cores | expand |
On 14/04/2023 11:34, Cristian Ciocaltea wrote: > The RK8602 and RK8603 voltage regulators on the Rock 5B board provide > the power lines vdd_cpu_big0 and vdd_cpu_big1, respectively. > > Add the necessary device tree nodes and bind them to the corresponding > CPU big core nodes. > > Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com> > --- > .../boot/dts/rockchip/rk3588-rock-5b.dts | 56 +++++++++++++++++++ > 1 file changed, 56 insertions(+) > > diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts > index 8cc97d146a73..3e4aee8f70c1 100644 > --- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts > +++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts > @@ -53,6 +53,62 @@ vcc5v0_sys: vcc5v0-sys-regulator { > }; > }; > > +&cpu_b0 { > + cpu-supply = <&vdd_cpu_big0_s0>; > +}; > + > +&cpu_b1 { > + cpu-supply = <&vdd_cpu_big0_s0>; > +}; > + > +&cpu_b2 { > + cpu-supply = <&vdd_cpu_big1_s0>; > +}; > + > +&cpu_b3 { > + cpu-supply = <&vdd_cpu_big1_s0>; > +}; > + > +&i2c0 { > + pinctrl-names = "default"; > + pinctrl-0 = <&i2c0m2_xfer>; > + status = "okay"; > + > + vdd_cpu_big0_s0: regulator@42 { > + compatible = "rockchip,rk8602"; Looking at your next node, this is surprising... Double check if you have correct compatibles everywhere. > + reg = <0x42>; > + fcs,suspend-voltage-selector = <1>; Does not look like you tested the DTS against bindings. Please run `make dtbs_check` (see Documentation/devicetree/bindings/writing-schema.rst for instructions). > + regulator-name = "vdd_cpu_big0_s0"; > + regulator-always-on; > + regulator-boot-on; > + regulator-min-microvolt = <550000>; > + regulator-max-microvolt = <1050000>; > + regulator-ramp-delay = <2300>; > + vin-supply = <&vcc5v0_sys>; > + > + regulator-state-mem { > + regulator-off-in-suspend; > + }; > + }; > + > + vdd_cpu_big1_s0: regulator@43 { > + compatible = "rockchip,rk8603", "rockchip,rk8602"; > + reg = <0x43>; > + fcs,suspend-voltage-selector = <1>; Does not look like you tested the DTS against bindings. Please run `make dtbs_check` (see Documentation/devicetree/bindings/writing-schema.rst for instructions). Best regards, Krzysztof
On 4/14/23 13:27, Krzysztof Kozlowski wrote: > On 14/04/2023 11:34, Cristian Ciocaltea wrote: >> The RK8602 and RK8603 voltage regulators on the Rock 5B board provide >> the power lines vdd_cpu_big0 and vdd_cpu_big1, respectively. >> >> Add the necessary device tree nodes and bind them to the corresponding >> CPU big core nodes. >> >> Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com> >> --- >> .../boot/dts/rockchip/rk3588-rock-5b.dts | 56 +++++++++++++++++++ >> 1 file changed, 56 insertions(+) >> >> diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts >> index 8cc97d146a73..3e4aee8f70c1 100644 >> --- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts >> +++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts >> @@ -53,6 +53,62 @@ vcc5v0_sys: vcc5v0-sys-regulator { >> }; >> }; >> >> +&cpu_b0 { >> + cpu-supply = <&vdd_cpu_big0_s0>; >> +}; >> + >> +&cpu_b1 { >> + cpu-supply = <&vdd_cpu_big0_s0>; >> +}; >> + >> +&cpu_b2 { >> + cpu-supply = <&vdd_cpu_big1_s0>; >> +}; >> + >> +&cpu_b3 { >> + cpu-supply = <&vdd_cpu_big1_s0>; >> +}; >> + >> +&i2c0 { >> + pinctrl-names = "default"; >> + pinctrl-0 = <&i2c0m2_xfer>; >> + status = "okay"; >> + >> + vdd_cpu_big0_s0: regulator@42 { >> + compatible = "rockchip,rk8602"; > > Looking at your next node, this is surprising... Double check if you > have correct compatibles everywhere. > >> + reg = <0x42>; >> + fcs,suspend-voltage-selector = <1>; > > Does not look like you tested the DTS against bindings. Please run `make > dtbs_check` (see Documentation/devicetree/bindings/writing-schema.rst > for instructions). > >> + regulator-name = "vdd_cpu_big0_s0"; >> + regulator-always-on; >> + regulator-boot-on; >> + regulator-min-microvolt = <550000>; >> + regulator-max-microvolt = <1050000>; >> + regulator-ramp-delay = <2300>; >> + vin-supply = <&vcc5v0_sys>; >> + >> + regulator-state-mem { >> + regulator-off-in-suspend; >> + }; >> + }; >> + >> + vdd_cpu_big1_s0: regulator@43 { >> + compatible = "rockchip,rk8603", "rockchip,rk8602"; >> + reg = <0x43>; >> + fcs,suspend-voltage-selector = <1>; > > Does not look like you tested the DTS against bindings. Please run `make > dtbs_check` (see Documentation/devicetree/bindings/writing-schema.rst > for instructions). I mentioned in the cover letter that the support for the RK860X regulators has been recently merged via [1]. The patches in this series have been verified on next-20230413. [1] https://lore.kernel.org/lkml/20230406194158.963352-1-cristian.ciocaltea@collabora.com/ Thanks, Cristian
On 14/04/2023 12:40, Cristian Ciocaltea wrote: > On 4/14/23 13:27, Krzysztof Kozlowski wrote: >> On 14/04/2023 11:34, Cristian Ciocaltea wrote: >>> The RK8602 and RK8603 voltage regulators on the Rock 5B board provide >>> the power lines vdd_cpu_big0 and vdd_cpu_big1, respectively. >>> >>> Add the necessary device tree nodes and bind them to the corresponding >>> CPU big core nodes. >>> >>> Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com> >>> --- >>> .../boot/dts/rockchip/rk3588-rock-5b.dts | 56 +++++++++++++++++++ >>> 1 file changed, 56 insertions(+) >>> >>> diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts >>> index 8cc97d146a73..3e4aee8f70c1 100644 >>> --- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts >>> +++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts >>> @@ -53,6 +53,62 @@ vcc5v0_sys: vcc5v0-sys-regulator { >>> }; >>> }; >>> >>> +&cpu_b0 { >>> + cpu-supply = <&vdd_cpu_big0_s0>; >>> +}; >>> + >>> +&cpu_b1 { >>> + cpu-supply = <&vdd_cpu_big0_s0>; >>> +}; >>> + >>> +&cpu_b2 { >>> + cpu-supply = <&vdd_cpu_big1_s0>; >>> +}; >>> + >>> +&cpu_b3 { >>> + cpu-supply = <&vdd_cpu_big1_s0>; >>> +}; >>> + >>> +&i2c0 { >>> + pinctrl-names = "default"; >>> + pinctrl-0 = <&i2c0m2_xfer>; >>> + status = "okay"; >>> + >>> + vdd_cpu_big0_s0: regulator@42 { >>> + compatible = "rockchip,rk8602"; >> >> Looking at your next node, this is surprising... Double check if you >> have correct compatibles everywhere. >> >>> + reg = <0x42>; >>> + fcs,suspend-voltage-selector = <1>; >> >> Does not look like you tested the DTS against bindings. Please run `make >> dtbs_check` (see Documentation/devicetree/bindings/writing-schema.rst >> for instructions). >> >>> + regulator-name = "vdd_cpu_big0_s0"; >>> + regulator-always-on; >>> + regulator-boot-on; >>> + regulator-min-microvolt = <550000>; >>> + regulator-max-microvolt = <1050000>; >>> + regulator-ramp-delay = <2300>; >>> + vin-supply = <&vcc5v0_sys>; >>> + >>> + regulator-state-mem { >>> + regulator-off-in-suspend; >>> + }; >>> + }; >>> + >>> + vdd_cpu_big1_s0: regulator@43 { >>> + compatible = "rockchip,rk8603", "rockchip,rk8602"; >>> + reg = <0x43>; >>> + fcs,suspend-voltage-selector = <1>; >> >> Does not look like you tested the DTS against bindings. Please run `make >> dtbs_check` (see Documentation/devicetree/bindings/writing-schema.rst >> for instructions). > > I mentioned in the cover letter that the support for the RK860X > regulators has been recently merged via [1]. The patches in this > series have been verified on next-20230413. OK. The question about compatibles still stays - but maybe you have indeed 8603 and 8602 in the same time. Best regards, Krzysztof
On 4/14/23 14:29, Krzysztof Kozlowski wrote: > On 14/04/2023 12:40, Cristian Ciocaltea wrote: >> On 4/14/23 13:27, Krzysztof Kozlowski wrote: >>> On 14/04/2023 11:34, Cristian Ciocaltea wrote: >>>> The RK8602 and RK8603 voltage regulators on the Rock 5B board provide >>>> the power lines vdd_cpu_big0 and vdd_cpu_big1, respectively. >>>> >>>> Add the necessary device tree nodes and bind them to the corresponding >>>> CPU big core nodes. >>>> >>>> Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com> >>>> --- >>>> .../boot/dts/rockchip/rk3588-rock-5b.dts | 56 +++++++++++++++++++ >>>> 1 file changed, 56 insertions(+) >>>> >>>> diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts >>>> index 8cc97d146a73..3e4aee8f70c1 100644 >>>> --- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts >>>> +++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts >>>> @@ -53,6 +53,62 @@ vcc5v0_sys: vcc5v0-sys-regulator { >>>> }; >>>> }; >>>> >>>> +&cpu_b0 { >>>> + cpu-supply = <&vdd_cpu_big0_s0>; >>>> +}; >>>> + >>>> +&cpu_b1 { >>>> + cpu-supply = <&vdd_cpu_big0_s0>; >>>> +}; >>>> + >>>> +&cpu_b2 { >>>> + cpu-supply = <&vdd_cpu_big1_s0>; >>>> +}; >>>> + >>>> +&cpu_b3 { >>>> + cpu-supply = <&vdd_cpu_big1_s0>; >>>> +}; >>>> + >>>> +&i2c0 { >>>> + pinctrl-names = "default"; >>>> + pinctrl-0 = <&i2c0m2_xfer>; >>>> + status = "okay"; >>>> + >>>> + vdd_cpu_big0_s0: regulator@42 { >>>> + compatible = "rockchip,rk8602"; >>> >>> Looking at your next node, this is surprising... Double check if you >>> have correct compatibles everywhere. >>> >>>> + reg = <0x42>; >>>> + fcs,suspend-voltage-selector = <1>; >>> >>> Does not look like you tested the DTS against bindings. Please run `make >>> dtbs_check` (see Documentation/devicetree/bindings/writing-schema.rst >>> for instructions). >>> >>>> + regulator-name = "vdd_cpu_big0_s0"; >>>> + regulator-always-on; >>>> + regulator-boot-on; >>>> + regulator-min-microvolt = <550000>; >>>> + regulator-max-microvolt = <1050000>; >>>> + regulator-ramp-delay = <2300>; >>>> + vin-supply = <&vcc5v0_sys>; >>>> + >>>> + regulator-state-mem { >>>> + regulator-off-in-suspend; >>>> + }; >>>> + }; >>>> + >>>> + vdd_cpu_big1_s0: regulator@43 { >>>> + compatible = "rockchip,rk8603", "rockchip,rk8602"; >>>> + reg = <0x43>; >>>> + fcs,suspend-voltage-selector = <1>; >>> >>> Does not look like you tested the DTS against bindings. Please run `make >>> dtbs_check` (see Documentation/devicetree/bindings/writing-schema.rst >>> for instructions). >> >> I mentioned in the cover letter that the support for the RK860X >> regulators has been recently merged via [1]. The patches in this >> series have been verified on next-20230413. > > OK. The question about compatibles still stays - but maybe you have > indeed 8603 and 8602 in the same time. Yes, according to [1], initially discussed in [2]. [1] https://lore.kernel.org/lkml/20230406194158.963352-2-cristian.ciocaltea@collabora.com/ [2] https://lore.kernel.org/lkml/ea1dfe0f-4ed3-9bfb-dc6b-6d87b0267a99@linaro.org/ Regards, Cristian
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts index 8cc97d146a73..3e4aee8f70c1 100644 --- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts +++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts @@ -53,6 +53,62 @@ vcc5v0_sys: vcc5v0-sys-regulator { }; }; +&cpu_b0 { + cpu-supply = <&vdd_cpu_big0_s0>; +}; + +&cpu_b1 { + cpu-supply = <&vdd_cpu_big0_s0>; +}; + +&cpu_b2 { + cpu-supply = <&vdd_cpu_big1_s0>; +}; + +&cpu_b3 { + cpu-supply = <&vdd_cpu_big1_s0>; +}; + +&i2c0 { + pinctrl-names = "default"; + pinctrl-0 = <&i2c0m2_xfer>; + status = "okay"; + + vdd_cpu_big0_s0: regulator@42 { + compatible = "rockchip,rk8602"; + reg = <0x42>; + fcs,suspend-voltage-selector = <1>; + regulator-name = "vdd_cpu_big0_s0"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <550000>; + regulator-max-microvolt = <1050000>; + regulator-ramp-delay = <2300>; + vin-supply = <&vcc5v0_sys>; + + regulator-state-mem { + regulator-off-in-suspend; + }; + }; + + vdd_cpu_big1_s0: regulator@43 { + compatible = "rockchip,rk8603", "rockchip,rk8602"; + reg = <0x43>; + fcs,suspend-voltage-selector = <1>; + regulator-name = "vdd_cpu_big1_s0"; + regulator-always-on; + regulator-boot-on; + regulator-min-microvolt = <550000>; + regulator-max-microvolt = <1050000>; + regulator-ramp-delay = <2300>; + vin-supply = <&vcc5v0_sys>; + + regulator-state-mem { + regulator-off-in-suspend; + }; + }; +}; + &i2c6 { status = "okay";
The RK8602 and RK8603 voltage regulators on the Rock 5B board provide the power lines vdd_cpu_big0 and vdd_cpu_big1, respectively. Add the necessary device tree nodes and bind them to the corresponding CPU big core nodes. Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@collabora.com> --- .../boot/dts/rockchip/rk3588-rock-5b.dts | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+)