diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-k1-plus.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-k1-plus.dts index 10d567ea7..726d76b47 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-k1-plus.dts +++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-k1-plus.dts @@ -152,6 +152,10 @@ }; }; +&cpu0 { + cpu-supply = <®_vdd_cpux>; +}; + &codec { allwinner,audio-routing = "Line Out", "LINEOUT", @@ -301,6 +305,31 @@ status = "okay"; }; + +&r_i2c { + status = "okay"; + reg_vdd_cpux: regulator@65 { + compatible = "silergy,sy8106a"; + reg = <0x65>; + regulator-name = "vdd-cpux"; + silergy,fixed-microvolt = <1200000>; + /* + * The datasheet uses 1.1V as the minimum value of VDD-CPUX, + * however both the Armbian DVFS table and the official one + * have operating points with voltage under 1.1V, and both + * DVFS table are known to work properly at the lowest + * operating point. + * + * Use 1.0V as the minimum voltage instead. + */ + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1400000>; + regulator-ramp-delay = <200>; + regulator-boot-on; + regulator-always-on; + }; +}; + &spi0 { status = "okay"; spi-flash@0 {