From 5479c8efb6ffbbc8b7fd1068337037faf9c20a36 Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Thu, 11 Aug 2022 22:25:40 -0500 Subject: [PATCH 064/117] riscv: dts: allwinner: d1: Hook up PWM-controlled CPU voltage regulators Signed-off-by: Samuel Holland --- .../allwinner/sun20i-d1-clockworkpi-v3.14.dts | 19 +++++++++++-------- .../sun20i-d1-dongshan-nezha-stu.dts | 19 +++++++++++-------- .../boot/dts/allwinner/sun20i-d1-nezha.dts | 19 +++++++++++-------- 3 files changed, 33 insertions(+), 24 deletions(-) --- a/arch/riscv/boot/dts/allwinner/sun20i-d1-clockworkpi-v3.14.dts +++ b/arch/riscv/boot/dts/allwinner/sun20i-d1-clockworkpi-v3.14.dts @@ -48,16 +48,13 @@ }; }; - /* - * This regulator is PWM-controlled, but the PWM controller is not - * yet supported, so fix the regulator to its default voltage. - */ reg_vdd_cpu: vdd-cpu { - compatible = "regulator-fixed"; + compatible = "pwm-regulator"; + pwms = <&pwm 0 50000 0>; + pwm-supply = <®_vcc>; regulator-name = "vdd-cpu"; - regulator-min-microvolt = <1100000>; - regulator-max-microvolt = <1100000>; - vin-supply = <®_vcc>; + regulator-min-microvolt = <810000>; + regulator-max-microvolt = <1160000>; }; wifi_pwrseq: wifi-pwrseq { @@ -254,6 +251,12 @@ }; }; +&pwm { + pinctrl-0 = <&pwm0_pd16_pin>; + pinctrl-names = "default"; + status = "okay"; +}; + &uart0 { pinctrl-0 = <&uart0_pb8_pins>; pinctrl-names = "default"; --- a/arch/riscv/boot/dts/allwinner/sun20i-d1-dongshan-nezha-stu.dts +++ b/arch/riscv/boot/dts/allwinner/sun20i-d1-dongshan-nezha-stu.dts @@ -43,16 +43,13 @@ vin-supply = <®_vcc>; }; - /* - * This regulator is PWM-controlled, but the PWM controller is not - * yet supported, so fix the regulator to its default voltage. - */ reg_vdd_cpu: vdd-cpu { - compatible = "regulator-fixed"; + compatible = "pwm-regulator"; + pwms = <&pwm 0 50000 0>; + pwm-supply = <®_vcc>; regulator-name = "vdd-cpu"; - regulator-min-microvolt = <1100000>; - regulator-max-microvolt = <1100000>; - vin-supply = <®_vcc>; + regulator-min-microvolt = <810000>; + regulator-max-microvolt = <1160000>; }; }; @@ -95,6 +92,12 @@ status = "okay"; }; +&pwm { + pinctrl-0 = <&pwm0_pd16_pin>; + pinctrl-names = "default"; + status = "okay"; +}; + &uart0 { pinctrl-0 = <&uart0_pb8_pins>; pinctrl-names = "default"; --- a/arch/riscv/boot/dts/allwinner/sun20i-d1-nezha.dts +++ b/arch/riscv/boot/dts/allwinner/sun20i-d1-nezha.dts @@ -35,16 +35,13 @@ vin-supply = <®_vcc>; }; - /* - * This regulator is PWM-controlled, but the PWM controller is not - * yet supported, so fix the regulator to its default voltage. - */ reg_vdd_cpu: vdd-cpu { - compatible = "regulator-fixed"; + compatible = "pwm-regulator"; + pwms = <&pwm 0 50000 0>; + pwm-supply = <®_vcc>; regulator-name = "vdd-cpu"; - regulator-min-microvolt = <1100000>; - regulator-max-microvolt = <1100000>; - vin-supply = <®_vcc>; + regulator-min-microvolt = <810000>; + regulator-max-microvolt = <1160000>; }; wifi_pwrseq: wifi-pwrseq { @@ -155,6 +152,12 @@ status = "okay"; }; +&pwm { + pinctrl-0 = <&pwm0_pd16_pin>; + pinctrl-names = "default"; + status = "okay"; +}; + &uart0 { pinctrl-0 = <&uart0_pb8_pins>; pinctrl-names = "default";