Skip to content

Instantly share code, notes, and snippets.

@macromorgan
Last active November 5, 2024 19:35
Show Gist options
  • Save macromorgan/32277185643ae90d892c73e26d473bd9 to your computer and use it in GitHub Desktop.
Save macromorgan/32277185643ae90d892c73e26d473bd9 to your computer and use it in GitHub Desktop.
RGxx3 Misc Fixes
From b6b53dc73e3eee903cf1de745266138d7a3327d8 Mon Sep 17 00:00:00 2001
From: Chris Morgan <[email protected]>
Date: Thu, 31 Oct 2024 09:00:12 -0500
Subject: [PATCH 00/10] Misc Fixes for RGxx3
This is a series of misc fixes for the RGxx3, mostly aimed at reducing
power consumption.
Chris Morgan (10):
arm64: dts: rockchip: Add idle-states for rk356x
arm64: dts: rockchip: Add spk_amp regulator for Anbernic RGxx3 Devices
arm64: dts: rockchip: Add vcc for vibrator node on RGxx3
arm64: dts: rockchip: Add avdd_0v9 and avdd_1v8 for RGxx3 HDMI
arm64: dts: rockchip: Correct pmu_io_domain regulators for RGxx3
arm64: dts: rockchip: Correct boot enabled regulators for RGxx3
arm64: dts: rockchip: Correctly identify always-on regulators for
RGxx3
arm64: dts: rockchip: Enable DMA for uart1 on RGxx3
arm64: dts: rockchip: Map wifi host-wake interrupt for RGxx3
arm64: dts: rockchip: Set RGxx3 PMIC as system-power-controller
.../dts/rockchip/rk3566-anbernic-rg-arc.dtsi | 1 +
.../dts/rockchip/rk3566-anbernic-rg353p.dts | 1 +
.../dts/rockchip/rk3566-anbernic-rg353ps.dts | 1 +
.../dts/rockchip/rk3566-anbernic-rg503.dts | 1 +
.../dts/rockchip/rk3566-anbernic-rgxx3.dtsi | 65 ++++++++++---------
arch/arm64/boot/dts/rockchip/rk356x.dtsi | 16 +++++
6 files changed, 54 insertions(+), 31 deletions(-)
--
2.43.0
From 44a2ac347f2505b7c4b0695f3dae44aa255aa73d Mon Sep 17 00:00:00 2001
From: Chris Morgan <[email protected]>
Date: Wed, 30 Oct 2024 17:40:28 -0500
Subject: [PATCH 01/10] arm64: dts: rockchip: Add idle-states for rk356x
Add the idle-states for the rk356x from the BSP kernel. I observed idle
power draw drop around 0.2w with this change in place on my Anbernic
RG353P device based around the rk3566 SoC.
Signed-off-by: Chris Morgan <[email protected]>
---
arch/arm64/boot/dts/rockchip/rk356x.dtsi | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk356x.dtsi b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
index 0ee0ada6f0ab..7cdfe293bf0c 100644
--- a/arch/arm64/boot/dts/rockchip/rk356x.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
@@ -55,6 +55,7 @@ cpu0: cpu@0 {
reg = <0x0 0x0>;
clocks = <&scmi_clk 0>;
#cooling-cells = <2>;
+ cpu-idle-states = <&CPU_SLEEP>;
enable-method = "psci";
operating-points-v2 = <&cpu0_opp_table>;
i-cache-size = <0x8000>;
@@ -71,6 +72,7 @@ cpu1: cpu@100 {
compatible = "arm,cortex-a55";
reg = <0x0 0x100>;
#cooling-cells = <2>;
+ cpu-idle-states = <&CPU_SLEEP>;
enable-method = "psci";
operating-points-v2 = <&cpu0_opp_table>;
i-cache-size = <0x8000>;
@@ -87,6 +89,7 @@ cpu2: cpu@200 {
compatible = "arm,cortex-a55";
reg = <0x0 0x200>;
#cooling-cells = <2>;
+ cpu-idle-states = <&CPU_SLEEP>;
enable-method = "psci";
operating-points-v2 = <&cpu0_opp_table>;
i-cache-size = <0x8000>;
@@ -103,6 +106,7 @@ cpu3: cpu@300 {
compatible = "arm,cortex-a55";
reg = <0x0 0x300>;
#cooling-cells = <2>;
+ cpu-idle-states = <&CPU_SLEEP>;
enable-method = "psci";
operating-points-v2 = <&cpu0_opp_table>;
i-cache-size = <0x8000>;
@@ -113,6 +117,18 @@ cpu3: cpu@300 {
d-cache-sets = <128>;
next-level-cache = <&l3_cache>;
};
+
+ idle-states {
+ entry-method = "psci";
+ CPU_SLEEP: cpu-sleep {
+ compatible = "arm,idle-state";
+ local-timer-stop;
+ arm,psci-suspend-param = <0x0010000>;
+ entry-latency-us = <100>;
+ exit-latency-us = <120>;
+ min-residency-us = <1000>;
+ };
+ };
};
/*
--
2.43.0
From e2dc16cb2004a87994641eed461ca87f620d782e Mon Sep 17 00:00:00 2001
From: Chris Morgan <[email protected]>
Date: Wed, 30 Oct 2024 17:47:39 -0500
Subject: [PATCH 02/10] arm64: dts: rockchip: Add spk_amp regulator for
Anbernic RGxx3 Devices
Define the VCC supply for the speaker amp on the Anbernic RGxx3 series
devices which use an external amplifier circuit (all do except the V
and VS series). This supply value was discovered by slightly raising
and lowering the voltages of various regulators from within the
bootloader and measuring for corresponding changes with a multimeter.
Signed-off-by: Chris Morgan <[email protected]>
---
arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg-arc.dtsi | 1 +
arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg353p.dts | 1 +
arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg353ps.dts | 1 +
arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg503.dts | 1 +
4 files changed, 4 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg-arc.dtsi b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg-arc.dtsi
index a4a60e4a53d4..012490092420 100644
--- a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg-arc.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg-arc.dtsi
@@ -72,6 +72,7 @@ spk_amp: audio-amplifier {
pinctrl-0 = <&spk_amp_enable_h>;
pinctrl-names = "default";
sound-name-prefix = "Speaker Amp";
+ VCC-supply = <&vcc_3v3>;
};
};
diff --git a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg353p.dts b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg353p.dts
index a73cf30801ec..ec6b42f8383d 100644
--- a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg353p.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg353p.dts
@@ -74,6 +74,7 @@ spk_amp: audio-amplifier {
pinctrl-0 = <&spk_amp_enable_h>;
pinctrl-names = "default";
sound-name-prefix = "Speaker Amp";
+ VCC-supply = <&vcc_3v3>;
};
};
diff --git a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg353ps.dts b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg353ps.dts
index ca5284e4807d..a59eff0c78d6 100644
--- a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg353ps.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg353ps.dts
@@ -73,6 +73,7 @@ spk_amp: audio-amplifier {
pinctrl-0 = <&spk_amp_enable_h>;
pinctrl-names = "default";
sound-name-prefix = "Speaker Amp";
+ VCC-supply = <&vcc_3v3>;
};
};
diff --git a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg503.dts b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg503.dts
index 74cf313e0635..59e0448cb858 100644
--- a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg503.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rg503.dts
@@ -163,6 +163,7 @@ spk_amp: audio-amplifier {
pinctrl-0 = <&spk_amp_enable_h>;
pinctrl-names = "default";
sound-name-prefix = "Speaker Amp";
+ VCC-supply = <&vcc_3v3>;
};
};
--
2.43.0
From 9087d76cb76018b315306f6046b930b89d48fdb0 Mon Sep 17 00:00:00 2001
From: Chris Morgan <[email protected]>
Date: Wed, 30 Oct 2024 17:54:04 -0500
Subject: [PATCH 03/10] arm64: dts: rockchip: Add vcc for vibrator node on
RGxx3
Define the vcc supply for the vibrator on the Anbernic RGxx3 series
devices. This supply value was discovered by enabling the pwm channel
to full duty and then slightly raising and lowering the voltages of
various regulators from within the bootloader and listening for
harmonic changes from the vibrator.
Signed-off-by: Chris Morgan <[email protected]>
---
arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
index 233eade30f21..f4c753f5d335 100644
--- a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
@@ -198,6 +198,7 @@ vibrator: pwm-vibrator {
compatible = "pwm-vibrator";
pwm-names = "enable";
pwms = <&pwm5 0 1000000000 0>;
+ vcc-supply = <&vcc_3v3>;
};
};
--
2.43.0
From 9a04ac451f738b82ada28544c44058c86191b43e Mon Sep 17 00:00:00 2001
From: Chris Morgan <[email protected]>
Date: Wed, 30 Oct 2024 20:40:53 -0500
Subject: [PATCH 04/10] arm64: dts: rockchip: Add avdd_0v9 and avdd_1v8 for
RGxx3 HDMI
Define the correct 0.9v and 1.8v regulators for the RGxx3 HDMI port.
The regulators used here appear to power most of the 0.9v and 1.8v
power groups listed on table 3-1 of the rk3566 datasheet.
Signed-off-by: Chris Morgan <[email protected]>
---
arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
index f4c753f5d335..b5d7096ffbcc 100644
--- a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
@@ -231,6 +231,8 @@ &hdmi {
ddc-i2c-bus = <&i2c5>;
pinctrl-0 = <&hdmitxm0_cec>;
pinctrl-names = "default";
+ avdd-0v9-supply = <&vdda0v9_pmu>;
+ avdd-1v8-supply = <&vcca1v8_pmu>;
status = "okay";
};
--
2.43.0
From 09b4d1aea3e0d5bc12d255da680f2c7a9f6c4bd3 Mon Sep 17 00:00:00 2001
From: Chris Morgan <[email protected]>
Date: Wed, 30 Oct 2024 20:46:46 -0500
Subject: [PATCH 05/10] arm64: dts: rockchip: Correct pmu_io_domain regulators
for RGxx3
Correct the pmu_io_domain regulators for the Anbernic RGxx3 series.
These domains were indivually tested by identifying a test point on the
board that corresponded to a pin within the power domain as stated in
section 2.7 of the rk3566 datasheet. The pin was then set to a GPIO
output of 1, and the voltage of the regulator was slightly adjusted up
or down until the changes matched what was observed on the pin.
Signed-off-by: Chris Morgan <[email protected]>
---
arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
index b5d7096ffbcc..51d42421dad0 100644
--- a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
@@ -566,10 +566,11 @@ &pmu_io_domains {
pmuio1-supply = <&vcc3v3_pmu>;
pmuio2-supply = <&vcc3v3_pmu>;
vccio1-supply = <&vccio_acodec>;
+ vccio2-supply = <&vcc_1v8>;
vccio3-supply = <&vccio_sd>;
- vccio4-supply = <&vcc_1v8>;
+ vccio4-supply = <&vcc1v8_dvp>;
vccio5-supply = <&vcc_3v3>;
- vccio6-supply = <&vcc1v8_dvp>;
+ vccio6-supply = <&vcc_1v8>;
vccio7-supply = <&vcc_3v3>;
};
--
2.43.0
From c407f79c07802cf1a07e472c5907565286be2728 Mon Sep 17 00:00:00 2001
From: Chris Morgan <[email protected]>
Date: Wed, 30 Oct 2024 20:52:32 -0500
Subject: [PATCH 06/10] arm64: dts: rockchip: Correct boot enabled regulators
for RGxx3
Correct the RGxx3 series so that only regulators that are enabled at
boot (programmed by the OTP of the PMIC) are set with
regulator-boot-on.
Signed-off-by: Chris Morgan <[email protected]>
---
arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi | 5 -----
1 file changed, 5 deletions(-)
diff --git a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
index 51d42421dad0..1c2008efc5b8 100644
--- a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
@@ -162,7 +162,6 @@ vcc3v3_lcd0_n: regulator-vcc3v3-lcd0 {
enable-active-high;
pinctrl-0 = <&vcc_lcd_h>;
pinctrl-names = "default";
- regulator-boot-on;
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-name = "vcc3v3_lcd0_n";
@@ -188,7 +187,6 @@ vcc_wifi: regulator-vcc-wifi {
pinctrl-0 = <&vcc_wifi_h>;
pinctrl-names = "default";
regulator-always-on;
- regulator-boot-on;
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-name = "vcc_wifi";
@@ -369,7 +367,6 @@ regulator-state-mem {
vccio_acodec: LDO_REG4 {
regulator-always-on;
- regulator-boot-on;
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-name = "vccio_acodec";
@@ -414,7 +411,6 @@ regulator-state-mem {
vcc1v8_dvp: LDO_REG8 {
regulator-always-on;
- regulator-boot-on;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
regulator-name = "vcc1v8_dvp";
@@ -436,7 +432,6 @@ regulator-state-mem {
dcdc_boost: BOOST {
regulator-always-on;
- regulator-boot-on;
regulator-min-microvolt = <4700000>;
regulator-max-microvolt = <5400000>;
regulator-name = "boost";
--
2.43.0
From ccc5b4ceb9fd590b5b245ab93da41415339d49e8 Mon Sep 17 00:00:00 2001
From: Chris Morgan <[email protected]>
Date: Wed, 30 Oct 2024 20:59:43 -0500
Subject: [PATCH 07/10] arm64: dts: rockchip: Correctly identify always-on
regulators for RGxx3
Identify which regulators can be shut off in suspend, and which
regulators aren't used at all. This was discovered through trial and
error as no schematics were available for any of the devices in
question.
- regulator_vcc_wifi: I believe this can be disabled. Setting it to
off in suspend has shown no ill effects.
- vdd_logic: This is a critical regulator and cannot be shut off, even
in suspend. Marking "regulator-on-in-suspend".
- vdd_gpu: This regulator can be shut off in suspend with no observed
ill effects.
- LDO_REG2: I believe this regulator is unused.
- LDO_REG9: I believe this regulator is unused.
- BOOST: I am not yet sure if this regulator is used for the USB OTG
port, but for now since we run the OTG port as a peripheral it is
not used.
- vdd_cpu: This regulator can be shut off in suspend with no observed
ill effects.
Signed-off-by: Chris Morgan <[email protected]>
---
.../dts/rockchip/rk3566-anbernic-rgxx3.dtsi | 31 +++++--------------
1 file changed, 8 insertions(+), 23 deletions(-)
diff --git a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
index 1c2008efc5b8..494f4d38477a 100644
--- a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
@@ -186,10 +186,12 @@ vcc_wifi: regulator-vcc-wifi {
gpio = <&gpio0 RK_PA0 GPIO_ACTIVE_HIGH>;
pinctrl-0 = <&vcc_wifi_h>;
pinctrl-names = "default";
- regulator-always-on;
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-name = "vcc_wifi";
+ regulator-state-mem {
+ regulator-off-in-suspend;
+ };
};
vibrator: pwm-vibrator {
@@ -289,13 +291,12 @@ vdd_logic: DCDC_REG1 {
regulator-initial-mode = <0x2>;
regulator-name = "vdd_logic";
regulator-state-mem {
- regulator-off-in-suspend;
+ regulator-on-in-suspend;
regulator-suspend-microvolt = <900000>;
};
};
vdd_gpu: DCDC_REG2 {
- regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <1350000>;
@@ -342,15 +343,8 @@ regulator-state-mem {
};
};
- vdda_0v9: LDO_REG2 {
- regulator-always-on;
- regulator-boot-on;
- regulator-min-microvolt = <900000>;
- regulator-max-microvolt = <900000>;
- regulator-name = "vdda_0v9";
- regulator-state-mem {
- regulator-off-in-suspend;
- };
+ LDO_REG2 {
+ /* unused */
};
vdda0v9_pmu: LDO_REG3 {
@@ -419,19 +413,11 @@ regulator-state-mem {
};
};
- vcc2v8_dvp: LDO_REG9 {
- regulator-always-on;
- regulator-boot-on;
- regulator-min-microvolt = <2800000>;
- regulator-max-microvolt = <2800000>;
- regulator-name = "vcc2v8_dvp";
- regulator-state-mem {
- regulator-off-in-suspend;
- };
+ LDO_REG9 {
+ /* Unused */
};
dcdc_boost: BOOST {
- regulator-always-on;
regulator-min-microvolt = <4700000>;
regulator-max-microvolt = <5400000>;
regulator-name = "boost";
@@ -453,7 +439,6 @@ vdd_cpu: regulator@40 {
compatible = "fcs,fan53555";
reg = <0x40>;
fcs,suspend-voltage-selector = <1>;
- regulator-always-on;
regulator-boot-on;
regulator-min-microvolt = <712500>;
regulator-max-microvolt = <1390000>;
--
2.43.0
From 969b7d31b998dbe402623474796079b42446a25c Mon Sep 17 00:00:00 2001
From: Chris Morgan <[email protected]>
Date: Wed, 30 Oct 2024 21:06:34 -0500
Subject: [PATCH 08/10] arm64: dts: rockchip: Enable DMA for uart1 on RGxx3
Enable DMA by adding the proper dma-names for uart1 on the RGxx3.
This allows the UART controller to then use DMA.
Signed-off-by: Chris Morgan <[email protected]>
---
arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
index 494f4d38477a..be18b17ccfb7 100644
--- a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
@@ -627,6 +627,7 @@ &tsadc {
};
&uart1 {
+ dma-names = "tx", "rx";
pinctrl-0 = <&uart1m1_xfer &uart1m1_ctsn &uart1m1_rtsn>;
pinctrl-names = "default";
uart-has-rtscts;
--
2.43.0
From 92cbc696ad8385eb4780300e77d2d518bb8fe9da Mon Sep 17 00:00:00 2001
From: Chris Morgan <[email protected]>
Date: Wed, 30 Oct 2024 21:09:36 -0500
Subject: [PATCH 09/10] arm64: dts: rockchip: Map wifi host-wake interrupt for
RGxx3
Define the interrupt connected to the rtl8821cs wifi host wake
functionality.
Signed-off-by: Chris Morgan <[email protected]>
---
.../dts/rockchip/rk3566-anbernic-rgxx3.dtsi | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
index be18b17ccfb7..582befc90cef 100644
--- a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
@@ -533,6 +533,13 @@ vcc_lcd_h: vcc-lcd-h {
};
};
+ wifi {
+ wifi_host_wake_l: wifi-host-wake-l {
+ rockchip,pins =
+ <4 RK_PA1 RK_FUNC_GPIO &pcfg_pull_down>;
+ };
+ };
+
vcc-wifi {
vcc_wifi_h: vcc-wifi-h {
rockchip,pins =
@@ -604,6 +611,8 @@ &sdmmc1 {
};
&sdmmc2 {
+ #address-cells = <1>;
+ #size-cells = <0>;
bus-width = <4>;
cap-sd-highspeed;
cap-sdio-irq;
@@ -618,6 +627,15 @@ &sdmmc2 {
vmmc-supply = <&vcc_wifi>;
vqmmc-supply = <&vcca1v8_pmu>;
status = "okay";
+
+ wifi@1 {
+ reg = <1>;
+ interrupt-names = "host-wake";
+ interrupt-parent = <&gpio4>;
+ interrupts = <RK_PA1 IRQ_TYPE_LEVEL_HIGH>;
+ pinctrl-0 = <&wifi_host_wake_l>;
+ pinctrl-names = "default";
+ };
};
&tsadc {
--
2.43.0
From b6b53dc73e3eee903cf1de745266138d7a3327d8 Mon Sep 17 00:00:00 2001
From: Chris Morgan <[email protected]>
Date: Wed, 30 Oct 2024 21:11:16 -0500
Subject: [PATCH 10/10] arm64: dts: rockchip: Set RGxx3 PMIC as
system-power-controller
Add the "system-power-controller" tag to the PMIC on the RGxx3 series.
This is necessary for older versions of A-TF as well as mainline A-TF.
While we are at it, remove "wakeup-source" as the PMIC has its own
dedicated IRQ line.
Signed-off-by: Chris Morgan <[email protected]>
---
arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
index 582befc90cef..db25fb03b5c0 100644
--- a/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3566-anbernic-rgxx3.dtsi
@@ -269,7 +269,7 @@ rk817: pmic@20 {
#sound-dai-cells = <0>;
pinctrl-names = "default";
pinctrl-0 = <&i2s1m0_mclk>, <&pmic_int_l>;
- wakeup-source;
+ system-power-controller;
vcc1-supply = <&vcc_sys>;
vcc2-supply = <&vcc_sys>;
--
2.43.0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment