Re: [PATCH v2 4/4] riscv: dts: spacemit: Update PMIC supply properties for BPI-F3 and Jupiter

From: Alex Elder

Date: Wed Jan 28 2026 - 08:29:46 EST


On 1/23/26 6:20 PM, Guodong Xu wrote:
Update individual supply properties in pmic "spacemit,p1" node to specify
the board's power tree topology for BananaPi F3 and Milk-V Jupiter.

Previously these relationships were hardcoded in the driver; now they
are explicitly defined in the devicetree per the updated binding
document spacemit,p1.yaml.

Signed-off-by: Guodong Xu <guodong@xxxxxxxxxxxx>

I acknowledge that you've made an ABI change, and I should
have done a better job of describing this the first time
around. (And reviewers might have caught that!)

I had some of the same thoughts about supporting just
"vin_supply" for older systems.

However I agree with the conclusion you and Vivian
came to, which is that practically speaking it isn't
likely to be a problem. Boards should use either
old DTB and software or new DTB and software, not
a mix.

Reviewed-by: Alex Elder <elder@xxxxxxxxxxxx>


---
v2: Added the pmic supply properties for K1 Milkv Jupiter.
Updated the commit message accordingly.
---
arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts | 12 ++++++++++--
arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts | 12 ++++++++++--
2 files changed, 20 insertions(+), 4 deletions(-)

diff --git a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts
index 5971605754b3..444c3b1e6f44 100644
--- a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts
+++ b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts
@@ -190,7 +190,15 @@ pmic@41 {
compatible = "spacemit,p1";
reg = <0x41>;
interrupts = <64>;
- vin-supply = <&reg_vcc_4v>;
+ vin1-supply = <&reg_vcc_4v>;
+ vin2-supply = <&reg_vcc_4v>;
+ vin3-supply = <&reg_vcc_4v>;
+ vin4-supply = <&reg_vcc_4v>;
+ vin5-supply = <&reg_vcc_4v>;
+ vin6-supply = <&reg_vcc_4v>;
+ aldoin-supply = <&reg_vcc_4v>;
+ dldoin1-supply = <&buck5>;
+ dldoin2-supply = <&buck5>;
regulators {
buck1 {
@@ -221,7 +229,7 @@ buck4 {
regulator-always-on;
};
- buck5 {
+ buck5: buck5 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3450000>;
regulator-ramp-delay = <5000>;
diff --git a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
index 800a112d5d70..e2702a781734 100644
--- a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
+++ b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
@@ -100,7 +100,15 @@ pmic@41 {
compatible = "spacemit,p1";
reg = <0x41>;
interrupts = <64>;
- vin-supply = <&reg_vcc_4v>;
+ vin1-supply = <&reg_vcc_4v>;
+ vin2-supply = <&reg_vcc_4v>;
+ vin3-supply = <&reg_vcc_4v>;
+ vin4-supply = <&reg_vcc_4v>;
+ vin5-supply = <&reg_vcc_4v>;
+ vin6-supply = <&reg_vcc_4v>;
+ aldoin-supply = <&reg_vcc_4v>;
+ dldoin1-supply = <&buck5>;
+ dldoin2-supply = <&buck5>;
regulators {
buck1 {
@@ -131,7 +139,7 @@ buck4 {
regulator-always-on;
};
- buck5 {
+ buck5: buck5 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3450000>;
regulator-ramp-delay = <5000>;