After enabling CONFIG_REGULATOR_DEBUG=y we observer below debug logs. Changes help link VDDCP_A and VDDCPU_B pwm regulator to 12V regulator supply instead of dummy regulator. [ 4.147196] VDDCPU_A: will resolve supply early: pwm [ 4.147216] pwm-regulator regulator-vddcpu-a: Looking up pwm-supply from device tree [ 4.147227] pwm-regulator regulator-vddcpu-a: Looking up pwm-supply property in node /regulator-vddcpu-a failed [ 4.147258] VDDCPU_A: supplied by regulator-dummy [ 4.147288] regulator-dummy: could not add device link regulator.12: -ENOENT [ 4.147353] VDDCPU_A: 721 <--> 1022 mV at 871 mV, enabled [ 4.152014] VDDCPU_B: will resolve supply early: pwm [ 4.152035] pwm-regulator regulator-vddcpu-b: Looking up pwm-supply from device tree [ 4.152047] pwm-regulator regulator-vddcpu-b: Looking up pwm-supply property in node /regulator-vddcpu-b failed [ 4.152079] VDDCPU_B: supplied by regulator-dummy [ 4.152108] regulator-dummy: could not add device link regulator.13: -ENOENT Fixes: c6d29c66e582 ("arm64: dts: meson-g12b-khadas-vim3: add initial device-tree") Fixes: d14734a04a8a ("arm64: dts: meson-g12b-odroid-n2: enable DVFS") Fixes: 3cb74db9b256 ("arm64: dts: meson: convert ugoos-am6 to common w400 dtsi") Cc: Neil Armstrong <narmstrong@baylibre.com> Signed-off-by: Anand Moon <linux.amoon@gmail.com> Reviewed-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> Link: https://lore.kernel.org/r/20210919202918.3556-3-linux.amoon@gmail.com
108 lines
2.0 KiB
Plaintext
108 lines
2.0 KiB
Plaintext
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
/*
|
|
* Copyright (c) 2019 BayLibre, SAS
|
|
* Author: Neil Armstrong <narmstrong@baylibre.com>
|
|
* Copyright (c) 2019 Christian Hewitt <christianshewitt@gmail.com>
|
|
*/
|
|
|
|
/ {
|
|
model = "Khadas VIM3";
|
|
|
|
vddcpu_a: regulator-vddcpu-a {
|
|
/*
|
|
* MP8756GD Regulator.
|
|
*/
|
|
compatible = "pwm-regulator";
|
|
|
|
regulator-name = "VDDCPU_A";
|
|
regulator-min-microvolt = <690000>;
|
|
regulator-max-microvolt = <1050000>;
|
|
|
|
pwm-supply = <&dc_in>;
|
|
|
|
pwms = <&pwm_ab 0 1250 0>;
|
|
pwm-dutycycle-range = <100 0>;
|
|
|
|
regulator-boot-on;
|
|
regulator-always-on;
|
|
};
|
|
|
|
vddcpu_b: regulator-vddcpu-b {
|
|
/*
|
|
* Silergy SY8030DEC Regulator.
|
|
*/
|
|
compatible = "pwm-regulator";
|
|
|
|
regulator-name = "VDDCPU_B";
|
|
regulator-min-microvolt = <690000>;
|
|
regulator-max-microvolt = <1050000>;
|
|
|
|
pwm-supply = <&vsys_3v3>;
|
|
|
|
pwms = <&pwm_AO_cd 1 1250 0>;
|
|
pwm-dutycycle-range = <100 0>;
|
|
|
|
regulator-boot-on;
|
|
regulator-always-on;
|
|
};
|
|
};
|
|
|
|
&cpu0 {
|
|
cpu-supply = <&vddcpu_b>;
|
|
operating-points-v2 = <&cpu_opp_table_0>;
|
|
clocks = <&clkc CLKID_CPU_CLK>;
|
|
clock-latency = <50000>;
|
|
};
|
|
|
|
&cpu1 {
|
|
cpu-supply = <&vddcpu_b>;
|
|
operating-points-v2 = <&cpu_opp_table_0>;
|
|
clocks = <&clkc CLKID_CPU_CLK>;
|
|
clock-latency = <50000>;
|
|
};
|
|
|
|
&cpu100 {
|
|
cpu-supply = <&vddcpu_a>;
|
|
operating-points-v2 = <&cpub_opp_table_1>;
|
|
clocks = <&clkc CLKID_CPUB_CLK>;
|
|
clock-latency = <50000>;
|
|
};
|
|
|
|
&cpu101 {
|
|
cpu-supply = <&vddcpu_a>;
|
|
operating-points-v2 = <&cpub_opp_table_1>;
|
|
clocks = <&clkc CLKID_CPUB_CLK>;
|
|
clock-latency = <50000>;
|
|
};
|
|
|
|
&cpu102 {
|
|
cpu-supply = <&vddcpu_a>;
|
|
operating-points-v2 = <&cpub_opp_table_1>;
|
|
clocks = <&clkc CLKID_CPUB_CLK>;
|
|
clock-latency = <50000>;
|
|
};
|
|
|
|
&cpu103 {
|
|
cpu-supply = <&vddcpu_a>;
|
|
operating-points-v2 = <&cpub_opp_table_1>;
|
|
clocks = <&clkc CLKID_CPUB_CLK>;
|
|
clock-latency = <50000>;
|
|
};
|
|
|
|
&pwm_ab {
|
|
pinctrl-0 = <&pwm_a_e_pins>;
|
|
pinctrl-names = "default";
|
|
clocks = <&xtal>;
|
|
clock-names = "clkin0";
|
|
status = "okay";
|
|
};
|
|
|
|
&pwm_AO_cd {
|
|
pinctrl-0 = <&pwm_ao_d_e_pins>;
|
|
pinctrl-names = "default";
|
|
clocks = <&xtal>;
|
|
clock-names = "clkin1";
|
|
status = "okay";
|
|
};
|
|
|