mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-29 13:46:49 +00:00
Allwinner: u-boot: Switch PMIC connection to I2C
This commit is contained in:
parent
d8e1bdf995
commit
3f6fb82fe9
@ -0,0 +1,157 @@
|
|||||||
|
From dec5528de024e8ddd1dafd8461df3a1bdcfc4bad Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jernej Skrabec <jernej.skrabec@gmail.com>
|
||||||
|
Date: Sat, 15 Mar 2025 09:57:57 +0100
|
||||||
|
Subject: [PATCH] Revert "arm64: dts: allwinner: h6: Use RSB for AXP805 PMIC
|
||||||
|
connection"
|
||||||
|
|
||||||
|
Hardware that uses I2C wasn't designed with high speeds in mind, so
|
||||||
|
communication with PMIC via RSB can intermittently fail. Go back to I2C
|
||||||
|
as higher speed and efficiency isn't worth the trouble.
|
||||||
|
|
||||||
|
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
|
||||||
|
---
|
||||||
|
arch/arm/dts/sun50i-h6-beelink-gs1.dts | 38 +++++++++++++-------------
|
||||||
|
arch/arm/dts/sun50i-h6-orangepi-3.dts | 14 +++++-----
|
||||||
|
arch/arm/dts/sun50i-h6-orangepi.dtsi | 22 +++++++--------
|
||||||
|
3 files changed, 37 insertions(+), 37 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/arch/arm/dts/sun50i-h6-beelink-gs1.dts b/arch/arm/dts/sun50i-h6-beelink-gs1.dts
|
||||||
|
index 529285fc34fd..8359a8ac2a33 100644
|
||||||
|
--- a/arch/arm/dts/sun50i-h6-beelink-gs1.dts
|
||||||
|
+++ b/arch/arm/dts/sun50i-h6-beelink-gs1.dts
|
||||||
|
@@ -151,28 +151,12 @@
|
||||||
|
vcc-pg-supply = <®_aldo1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
-&r_ir {
|
||||||
|
- linux,rc-map-name = "rc-beelink-gs1";
|
||||||
|
+&r_i2c {
|
||||||
|
status = "okay";
|
||||||
|
-};
|
||||||
|
|
||||||
|
-&r_pio {
|
||||||
|
- /*
|
||||||
|
- * FIXME: We can't add that supply for now since it would
|
||||||
|
- * create a circular dependency between pinctrl, the regulator
|
||||||
|
- * and the RSB Bus.
|
||||||
|
- *
|
||||||
|
- * vcc-pl-supply = <®_aldo1>;
|
||||||
|
- */
|
||||||
|
- vcc-pm-supply = <®_aldo1>;
|
||||||
|
-};
|
||||||
|
-
|
||||||
|
-&r_rsb {
|
||||||
|
- status = "okay";
|
||||||
|
-
|
||||||
|
- axp805: pmic@745 {
|
||||||
|
+ axp805: pmic@36 {
|
||||||
|
compatible = "x-powers,axp805", "x-powers,axp806";
|
||||||
|
- reg = <0x745>;
|
||||||
|
+ reg = <0x36>;
|
||||||
|
interrupt-parent = <&r_intc>;
|
||||||
|
interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
|
||||||
|
interrupt-controller;
|
||||||
|
@@ -290,6 +274,22 @@
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
+&r_ir {
|
||||||
|
+ linux,rc-map-name = "rc-beelink-gs1";
|
||||||
|
+ status = "okay";
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
+&r_pio {
|
||||||
|
+ /*
|
||||||
|
+ * PL0 and PL1 are used for PMIC I2C
|
||||||
|
+ * don't enable the pl-supply else
|
||||||
|
+ * it will fail at boot
|
||||||
|
+ *
|
||||||
|
+ * vcc-pl-supply = <®_aldo1>;
|
||||||
|
+ */
|
||||||
|
+ vcc-pm-supply = <®_aldo1>;
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
&spdif {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&spdif_tx_pin>;
|
||||||
|
diff --git a/arch/arm/dts/sun50i-h6-orangepi-3.dts b/arch/arm/dts/sun50i-h6-orangepi-3.dts
|
||||||
|
index bdcec466246f..f920f8f0a4dd 100644
|
||||||
|
--- a/arch/arm/dts/sun50i-h6-orangepi-3.dts
|
||||||
|
+++ b/arch/arm/dts/sun50i-h6-orangepi-3.dts
|
||||||
|
@@ -175,16 +175,12 @@
|
||||||
|
vcc-pg-supply = <®_vcc_wifi_io>;
|
||||||
|
};
|
||||||
|
|
||||||
|
-&r_ir {
|
||||||
|
+&r_i2c {
|
||||||
|
status = "okay";
|
||||||
|
-};
|
||||||
|
|
||||||
|
-&r_rsb {
|
||||||
|
- status = "okay";
|
||||||
|
-
|
||||||
|
- axp805: pmic@745 {
|
||||||
|
+ axp805: pmic@36 {
|
||||||
|
compatible = "x-powers,axp805", "x-powers,axp806";
|
||||||
|
- reg = <0x745>;
|
||||||
|
+ reg = <0x36>;
|
||||||
|
interrupt-parent = <&r_intc>;
|
||||||
|
interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
|
||||||
|
interrupt-controller;
|
||||||
|
@@ -295,6 +291,10 @@
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
+&r_ir {
|
||||||
|
+ status = "okay";
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
&rtc {
|
||||||
|
clocks = <&ext_osc32k>;
|
||||||
|
};
|
||||||
|
diff --git a/arch/arm/dts/sun50i-h6-orangepi.dtsi b/arch/arm/dts/sun50i-h6-orangepi.dtsi
|
||||||
|
index 4403769fc36e..6846797a8afd 100644
|
||||||
|
--- a/arch/arm/dts/sun50i-h6-orangepi.dtsi
|
||||||
|
+++ b/arch/arm/dts/sun50i-h6-orangepi.dtsi
|
||||||
|
@@ -112,20 +112,12 @@
|
||||||
|
vcc-pg-supply = <®_aldo1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
-&r_ir {
|
||||||
|
+&r_i2c {
|
||||||
|
status = "okay";
|
||||||
|
-};
|
||||||
|
|
||||||
|
-&r_pio {
|
||||||
|
- vcc-pm-supply = <®_bldo3>;
|
||||||
|
-};
|
||||||
|
-
|
||||||
|
-&r_rsb {
|
||||||
|
- status = "okay";
|
||||||
|
-
|
||||||
|
- axp805: pmic@745 {
|
||||||
|
+ axp805: pmic@36 {
|
||||||
|
compatible = "x-powers,axp805", "x-powers,axp806";
|
||||||
|
- reg = <0x745>;
|
||||||
|
+ reg = <0x36>;
|
||||||
|
interrupt-parent = <&r_intc>;
|
||||||
|
interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
|
||||||
|
interrupt-controller;
|
||||||
|
@@ -240,6 +232,14 @@
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
+&r_ir {
|
||||||
|
+ status = "okay";
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
+&r_pio {
|
||||||
|
+ vcc-pm-supply = <®_bldo3>;
|
||||||
|
+};
|
||||||
|
+
|
||||||
|
&rtc {
|
||||||
|
clocks = <&ext_osc32k>;
|
||||||
|
};
|
||||||
|
--
|
||||||
|
2.48.1
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user