120 lines
2.8 KiB
Diff
120 lines
2.8 KiB
Diff
From c6599944af5a09029259ff8c533d22754f2b1ba4 Mon Sep 17 00:00:00 2001
|
|
From: Chukun Pan <amadeus@jmu.edu.cn>
|
|
Date: Tue, 1 Apr 2025 20:00:20 +0800
|
|
Subject: [PATCH] arm64: dts: rockchip: Enable regulators for Radxa E20C
|
|
|
|
Enable pwm and fixed regulators for Radxa E20C. The pwm regulator is
|
|
used to power the CPU and GPU. Note that the LPDDR4 voltage is 1.1V.
|
|
|
|
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
|
|
Reviewed-by: Jonas Karlman <jonas@kwiboo.se>
|
|
Link: https://lore.kernel.org/r/20250401120020.976343-3-amadeus@jmu.edu.cn
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
.../boot/dts/rockchip/rk3528-radxa-e20c.dts | 73 +++++++++++++++++++
|
|
1 file changed, 73 insertions(+)
|
|
|
|
--- a/arch/arm64/boot/dts/rockchip/rk3528-radxa-e20c.dts
|
|
+++ b/arch/arm64/boot/dts/rockchip/rk3528-radxa-e20c.dts
|
|
@@ -9,6 +9,7 @@
|
|
|
|
#include <dt-bindings/input/input.h>
|
|
#include <dt-bindings/leds/common.h>
|
|
+#include <dt-bindings/pwm/pwm.h>
|
|
#include "rk3528.dtsi"
|
|
|
|
/ {
|
|
@@ -80,6 +81,26 @@
|
|
};
|
|
};
|
|
|
|
+ vdd_0v9: regulator-0v9-vdd {
|
|
+ compatible = "regulator-fixed";
|
|
+ regulator-name = "vdd_0v9";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <900000>;
|
|
+ regulator-max-microvolt = <900000>;
|
|
+ vin-supply = <&vcc5v0_sys>;
|
|
+ };
|
|
+
|
|
+ vcc_ddr: regulator-1v1-vcc-ddr {
|
|
+ compatible = "regulator-fixed";
|
|
+ regulator-name = "vcc_ddr";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <1100000>;
|
|
+ regulator-max-microvolt = <1100000>;
|
|
+ vin-supply = <&vcc5v0_sys>;
|
|
+ };
|
|
+
|
|
vcc_1v8: regulator-1v8-vcc {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "vcc_1v8";
|
|
@@ -108,6 +129,46 @@
|
|
regulator-min-microvolt = <5000000>;
|
|
regulator-max-microvolt = <5000000>;
|
|
};
|
|
+
|
|
+ vdd_arm: regulator-vdd-arm {
|
|
+ compatible = "pwm-regulator";
|
|
+ pwms = <&pwm1 0 5000 PWM_POLARITY_INVERTED>;
|
|
+ pwm-supply = <&vcc5v0_sys>;
|
|
+ regulator-name = "vdd_arm";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <746000>;
|
|
+ regulator-max-microvolt = <1201000>;
|
|
+ regulator-settling-time-up-us = <250>;
|
|
+ };
|
|
+
|
|
+ vdd_logic: regulator-vdd-logic {
|
|
+ compatible = "pwm-regulator";
|
|
+ pwms = <&pwm2 0 5000 PWM_POLARITY_INVERTED>;
|
|
+ pwm-supply = <&vcc5v0_sys>;
|
|
+ regulator-name = "vdd_logic";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <705000>;
|
|
+ regulator-max-microvolt = <1006000>;
|
|
+ regulator-settling-time-up-us = <250>;
|
|
+ };
|
|
+};
|
|
+
|
|
+&cpu0 {
|
|
+ cpu-supply = <&vdd_arm>;
|
|
+};
|
|
+
|
|
+&cpu1 {
|
|
+ cpu-supply = <&vdd_arm>;
|
|
+};
|
|
+
|
|
+&cpu2 {
|
|
+ cpu-supply = <&vdd_arm>;
|
|
+};
|
|
+
|
|
+&cpu3 {
|
|
+ cpu-supply = <&vdd_arm>;
|
|
};
|
|
|
|
&i2c1 {
|
|
@@ -146,6 +207,18 @@
|
|
};
|
|
};
|
|
|
|
+&pwm1 {
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&pwm1m0_pins>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&pwm2 {
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&pwm2m0_pins>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
&saradc {
|
|
vref-supply = <&vcc_1v8>;
|
|
status = "okay";
|