* [PATCH v3 1/6] riscv: dts: spacemit: k1-musepi-pro: add PMIC and power infrastructure
[not found] <20260513071958.29574-1-a.heider@gmail.com>
@ 2026-05-13 7:19 ` Andre Heider
2026-05-13 7:48 ` Yixun Lan
` (2 more replies)
2026-05-13 7:19 ` [PATCH v3 2/6] riscv: dts: spacemit: k1-musepi-pro: add 24c02 eeprom Andre Heider
` (4 subsequent siblings)
5 siblings, 3 replies; 10+ messages in thread
From: Andre Heider @ 2026-05-13 7:19 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Alexandre Ghiti, Yixun Lan
Cc: devicetree, linux-riscv, spacemit, linux-kernel
Enable i2c8 and add the connected SpacemiT P1 PMIC with its related regulators
for the board's power infrastructure and voltage regulation support.
Signed-off-by: Andre Heider <a.heider@gmail.com>
---
.../riscv/boot/dts/spacemit/k1-musepi-pro.dts | 134 ++++++++++++++++++
1 file changed, 134 insertions(+)
diff --git a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
index 29e333b670cf0..e0b585c50014b 100644
--- a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
+++ b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
@@ -17,6 +17,7 @@ / {
aliases {
ethernet0 = ð0;
serial0 = &uart0;
+ i2c8 = &i2c8;
};
chosen {
@@ -33,6 +34,15 @@ led1 {
default-state = "on";
};
};
+
+ reg_vcc_4v0: regulator-vcc-4v0 {
+ compatible = "regulator-fixed";
+ regulator-name = "VCC4V0";
+ regulator-min-microvolt = <4000000>;
+ regulator-max-microvolt = <4000000>;
+ regulator-boot-on;
+ regulator-always-on;
+ };
};
&emmc {
@@ -72,6 +82,130 @@ &pdma {
status = "okay";
};
+&i2c8 {
+ pinctrl-0 = <&i2c8_cfg>;
+ pinctrl-names = "default";
+ status = "okay";
+
+ pmic@41 {
+ compatible = "spacemit,p1";
+ reg = <0x41>;
+ interrupts = <64>;
+ vin1-supply = <®_vcc_4v0>;
+ vin2-supply = <®_vcc_4v0>;
+ vin3-supply = <®_vcc_4v0>;
+ vin4-supply = <®_vcc_4v0>;
+ vin5-supply = <®_vcc_4v0>;
+ vin6-supply = <®_vcc_4v0>;
+ aldoin-supply = <®_vcc_4v0>;
+ dldoin1-supply = <&buck5>;
+ dldoin2-supply = <&buck5>;
+
+ regulators {
+ buck1 {
+ regulator-min-microvolt = <500000>;
+ regulator-max-microvolt = <3450000>;
+ regulator-ramp-delay = <5000>;
+ regulator-always-on;
+ };
+
+ buck2 {
+ regulator-min-microvolt = <500000>;
+ regulator-max-microvolt = <3450000>;
+ regulator-ramp-delay = <5000>;
+ regulator-always-on;
+ };
+
+ buck3_1v8: buck3 {
+ regulator-min-microvolt = <500000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-ramp-delay = <5000>;
+ regulator-always-on;
+ };
+
+ buck4_3v3: buck4 {
+ regulator-min-microvolt = <500000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-ramp-delay = <5000>;
+ regulator-always-on;
+ };
+
+ buck5: buck5 {
+ regulator-min-microvolt = <500000>;
+ regulator-max-microvolt = <3450000>;
+ regulator-ramp-delay = <5000>;
+ regulator-always-on;
+ };
+
+ buck6 {
+ regulator-min-microvolt = <500000>;
+ regulator-max-microvolt = <3450000>;
+ regulator-ramp-delay = <5000>;
+ regulator-always-on;
+ };
+
+ aldo1 {
+ regulator-min-microvolt = <500000>;
+ regulator-max-microvolt = <3400000>;
+ regulator-boot-on;
+ };
+
+ aldo2 {
+ regulator-min-microvolt = <500000>;
+ regulator-max-microvolt = <3400000>;
+ };
+
+ aldo3 {
+ regulator-min-microvolt = <500000>;
+ regulator-max-microvolt = <3400000>;
+ };
+
+ aldo4 {
+ regulator-min-microvolt = <500000>;
+ regulator-max-microvolt = <3400000>;
+ };
+
+ dldo1 {
+ regulator-min-microvolt = <500000>;
+ regulator-max-microvolt = <3400000>;
+ regulator-boot-on;
+ };
+
+ dldo2 {
+ regulator-min-microvolt = <500000>;
+ regulator-max-microvolt = <3400000>;
+ };
+
+ dldo3 {
+ regulator-min-microvolt = <500000>;
+ regulator-max-microvolt = <3400000>;
+ };
+
+ dldo4 {
+ regulator-min-microvolt = <500000>;
+ regulator-max-microvolt = <3400000>;
+ regulator-always-on;
+ };
+
+ dldo5 {
+ regulator-min-microvolt = <500000>;
+ regulator-max-microvolt = <3400000>;
+ };
+
+ dldo6 {
+ regulator-min-microvolt = <500000>;
+ regulator-max-microvolt = <3400000>;
+ regulator-always-on;
+ };
+
+ dldo7 {
+ regulator-min-microvolt = <500000>;
+ regulator-max-microvolt = <3400000>;
+ };
+ };
+ };
+};
+
&uart0 {
pinctrl-0 = <&uart0_2_cfg>;
pinctrl-names = "default";
--
2.53.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH v3 2/6] riscv: dts: spacemit: k1-musepi-pro: add 24c02 eeprom
[not found] <20260513071958.29574-1-a.heider@gmail.com>
2026-05-13 7:19 ` [PATCH v3 1/6] riscv: dts: spacemit: k1-musepi-pro: add PMIC and power infrastructure Andre Heider
@ 2026-05-13 7:19 ` Andre Heider
2026-05-13 7:19 ` [PATCH v3 3/6] riscv: dts: spacemit: k1-musepi-pro: enable QSPI and add SPI NOR Andre Heider
` (3 subsequent siblings)
5 siblings, 0 replies; 10+ messages in thread
From: Andre Heider @ 2026-05-13 7:19 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Alexandre Ghiti, Yixun Lan
Cc: devicetree, linux-riscv, spacemit, linux-kernel
Enable i2c2 and add the connected GT24C02B EEPROM.
It contains an ONIE TLV table:
=> tlv_eeprom
TLV: 0
[ 12.162] TlvInfo Header:
[ 12.162] Id String: TlvInfo
[ 12.165] Version: 1
[ 12.168] Total Length: 58
[ 12.171] TLV Name Code Len Value
[ 12.175] -------------------- ---- --- -----
[ 12.179] Product Name 0x21 16 k1-x_MUSE-Pi-Pro
[ 12.184] Serial Number 0x23 17 BPMIMXXXXXXXXXXXX
[ 12.189] Unknown 0x41 1 0x02
[ 12.194] Base MAC Address 0x24 6 FE:FE:FE:XX:XX:XX
[ 12.199] MAC Addresses 0x2A 2 2
[ 12.203] CRC-32 0xFE 4 0x395ECD34
[ 12.207] Checksum is valid.
(With 0x41 as TLV_CODE_DDR_CSNUM)
Signed-off-by: Andre Heider <a.heider@gmail.com>
---
.../riscv/boot/dts/spacemit/k1-musepi-pro.dts | 33 +++++++++++++++++++
1 file changed, 33 insertions(+)
diff --git a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
index e0b585c50014b..41d7d6d20a797 100644
--- a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
+++ b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
@@ -17,6 +17,7 @@ / {
aliases {
ethernet0 = ð0;
serial0 = &uart0;
+ i2c2 = &i2c2;
i2c8 = &i2c8;
};
@@ -82,6 +83,38 @@ &pdma {
status = "okay";
};
+&i2c2 {
+ pinctrl-0 = <&i2c2_0_cfg>;
+ pinctrl-names = "default";
+ status = "okay";
+
+ eeprom@50 {
+ compatible = "atmel,24c02";
+ reg = <0x50>;
+ vcc-supply = <&buck3_1v8>; /* EEPROM_VCC1V8 */
+ pagesize = <8>;
+ read-only;
+ size = <256>;
+
+ nvmem-layout {
+ compatible = "onie,tlv-layout";
+
+ product-name {
+ };
+
+ serial-number {
+ };
+
+ mac-address {
+ #nvmem-cell-cells = <1>;
+ };
+
+ num-macs {
+ };
+ };
+ };
+};
+
&i2c8 {
pinctrl-0 = <&i2c8_cfg>;
pinctrl-names = "default";
--
2.53.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH v3 3/6] riscv: dts: spacemit: k1-musepi-pro: enable QSPI and add SPI NOR
[not found] <20260513071958.29574-1-a.heider@gmail.com>
2026-05-13 7:19 ` [PATCH v3 1/6] riscv: dts: spacemit: k1-musepi-pro: add PMIC and power infrastructure Andre Heider
2026-05-13 7:19 ` [PATCH v3 2/6] riscv: dts: spacemit: k1-musepi-pro: add 24c02 eeprom Andre Heider
@ 2026-05-13 7:19 ` Andre Heider
2026-05-14 2:53 ` sashiko-bot
2026-05-13 7:19 ` [PATCH v3 4/6] riscv: dts: spacemit: k1-musepi-pro: enable USB 3 ports Andre Heider
` (2 subsequent siblings)
5 siblings, 1 reply; 10+ messages in thread
From: Andre Heider @ 2026-05-13 7:19 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Alexandre Ghiti, Yixun Lan
Cc: devicetree, linux-riscv, spacemit, linux-kernel
Add the QSPI controller node and describe the attached SPI NOR flash
(Winbond W25Q64FWSSAQ).
Add a corresponding vendor flash partition layout.
Signed-off-by: Andre Heider <a.heider@gmail.com>
---
.../riscv/boot/dts/spacemit/k1-musepi-pro.dts | 50 +++++++++++++++++++
1 file changed, 50 insertions(+)
diff --git a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
index 41d7d6d20a797..b0f66f49db4b7 100644
--- a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
+++ b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
@@ -44,6 +44,15 @@ reg_vcc_4v0: regulator-vcc-4v0 {
regulator-boot-on;
regulator-always-on;
};
+
+ reg_qspi_vcc1v833: regulator-qspi-vcc1v833 {
+ compatible = "regulator-fixed";
+ regulator-name = "QSPI_VCC1833";
+ regulator-min-microvolt = <1833000>;
+ regulator-max-microvolt = <1833000>;
+ regulator-always-on;
+ vin-supply = <&buck4_3v3>;
+ };
};
&emmc {
@@ -239,6 +248,47 @@ dldo7 {
};
};
+&qspi {
+ pinctrl-names = "default";
+ pinctrl-0 = <&qspi_cfg>;
+ status = "okay";
+
+ flash@0 {
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ spi-max-frequency = <26500000>;
+ spi-rx-bus-width = <4>;
+ spi-tx-bus-width = <4>;
+ vcc-supply = <®_qspi_vcc1v833>;
+ m25p,fast-read;
+
+ partitions {
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ bootinfo@0 {
+ reg = <0x0 0x10000>;
+ };
+ private@10000 {
+ reg = <0x10000 0x10000>;
+ };
+ fsbl@20000 {
+ reg = <0x20000 0x40000>;
+ };
+ env@60000 {
+ reg = <0x60000 0x10000>;
+ };
+ opensbi@70000 {
+ reg = <0x70000 0x30000>;
+ };
+ uboot@a0000 {
+ reg = <0xa0000 0x760000>;
+ };
+ };
+ };
+};
+
&uart0 {
pinctrl-0 = <&uart0_2_cfg>;
pinctrl-names = "default";
--
2.53.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH v3 4/6] riscv: dts: spacemit: k1-musepi-pro: enable USB 3 ports
[not found] <20260513071958.29574-1-a.heider@gmail.com>
` (2 preceding siblings ...)
2026-05-13 7:19 ` [PATCH v3 3/6] riscv: dts: spacemit: k1-musepi-pro: enable QSPI and add SPI NOR Andre Heider
@ 2026-05-13 7:19 ` Andre Heider
2026-05-13 7:19 ` [PATCH v3 5/6] riscv: dts: spacemit: k1-musepi-pro: enable PCIe ports Andre Heider
2026-05-13 7:19 ` [PATCH v3 6/6] riscv: dts: spacemit: k1-musepi-pro: set default console baud rate Andre Heider
5 siblings, 0 replies; 10+ messages in thread
From: Andre Heider @ 2026-05-13 7:19 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Yixun Lan,
Paul Walmsley, Palmer Dabbelt, Albert Ou, Alexandre Ghiti
Cc: devicetree, linux-riscv, spacemit, linux-kernel
Enable the DWC3 USB 3.0 controller, its associated combo_phy (USB 3 PHY)
and usbphy2 (USB 2 PHY) on the MusePi Pro board.
The board uses a VLI VL817 hub, providing four ports.
Signed-off-by: Andre Heider <a.heider@gmail.com>
---
.../riscv/boot/dts/spacemit/k1-musepi-pro.dts | 52 +++++++++++++++++++
1 file changed, 52 insertions(+)
diff --git a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
index b0f66f49db4b7..b24b378b1b220 100644
--- a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
+++ b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
@@ -53,6 +53,26 @@ reg_qspi_vcc1v833: regulator-qspi-vcc1v833 {
regulator-always-on;
vin-supply = <&buck4_3v3>;
};
+
+ reg_5v_vbus: regulator-5v-vbus {
+ compatible = "regulator-fixed";
+ regulator-name = "5V_VBUS";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-always-on;
+ gpio = <&gpio K1_GPIO(79) GPIO_ACTIVE_HIGH>; /* USB3_PWREN */
+ enable-active-high;
+ };
+
+ reg_vcc5v_hub: regulator-vcc5v-hub {
+ compatible = "regulator-fixed";
+ regulator-name = "VCC5V0_HUB";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-always-on;
+ gpio = <&gpio K1_GPIO(127) GPIO_ACTIVE_HIGH>; /* HUB_PWREN */
+ enable-active-high;
+ };
};
&emmc {
@@ -65,6 +85,10 @@ &emmc {
status = "okay";
};
+&combo_phy {
+ status = "okay";
+};
+
ð0 {
phy-handle = <&rgmii0>;
phy-mode = "rgmii-id";
@@ -294,3 +318,31 @@ &uart0 {
pinctrl-names = "default";
status = "okay";
};
+
+&usbphy2 {
+ status = "okay";
+};
+
+&usb_dwc3 {
+ dr_mode = "host";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ vbus-supply = <®_5v_vbus>;
+ status = "okay";
+
+ hub_2_0: hub@1 {
+ compatible = "usb2109,2817";
+ reg = <0x1>;
+ vdd-supply = <®_vcc5v_hub>;
+ peer-hub = <&hub_3_0>;
+ reset-gpios = <&gpio K1_GPIO(123) GPIO_ACTIVE_LOW>; /* HUB_RST */
+ };
+
+ hub_3_0: hub@2 {
+ compatible = "usb2109,817";
+ reg = <0x2>;
+ vdd-supply = <®_vcc5v_hub>;
+ peer-hub = <&hub_2_0>;
+ reset-gpios = <&gpio K1_GPIO(123) GPIO_ACTIVE_LOW>; /* HUB_RST */
+ };
+};
--
2.53.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH v3 5/6] riscv: dts: spacemit: k1-musepi-pro: enable PCIe ports
[not found] <20260513071958.29574-1-a.heider@gmail.com>
` (3 preceding siblings ...)
2026-05-13 7:19 ` [PATCH v3 4/6] riscv: dts: spacemit: k1-musepi-pro: enable USB 3 ports Andre Heider
@ 2026-05-13 7:19 ` Andre Heider
2026-05-13 7:19 ` [PATCH v3 6/6] riscv: dts: spacemit: k1-musepi-pro: set default console baud rate Andre Heider
5 siblings, 0 replies; 10+ messages in thread
From: Andre Heider @ 2026-05-13 7:19 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Alexandre Ghiti, Yixun Lan
Cc: devicetree, linux-riscv, spacemit, linux-kernel
Enable the two PCIe controllers along with their associated PHYs. They
are routed to the M.2 M-key connector and to the PCIe slot.
Signed-off-by: Andre Heider <a.heider@gmail.com>
---
.../riscv/boot/dts/spacemit/k1-musepi-pro.dts | 38 +++++++++++++++++++
1 file changed, 38 insertions(+)
diff --git a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
index b24b378b1b220..953c0ff6a0d34 100644
--- a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
+++ b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
@@ -36,6 +36,14 @@ led1 {
};
};
+ reg_pcie_vcc_3v3: regulator-pcie-vcc3v3 {
+ compatible = "regulator-fixed";
+ regulator-name = "PCIE_VCC3V3";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
reg_vcc_4v0: regulator-vcc-4v0 {
compatible = "regulator-fixed";
regulator-name = "VCC4V0";
@@ -272,6 +280,36 @@ dldo7 {
};
};
+&pcie1_phy {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pcie1_3_cfg>;
+ status = "okay";
+};
+
+&pcie1_port {
+ phys = <&pcie1_phy>;
+ vpcie3v3-supply = <®_pcie_vcc_3v3>;
+};
+
+&pcie1 {
+ status = "okay";
+};
+
+&pcie2_phy {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pcie2_4_cfg>;
+ status = "okay";
+};
+
+&pcie2_port {
+ phys = <&pcie2_phy>;
+ vpcie3v3-supply = <®_pcie_vcc_3v3>;
+};
+
+&pcie2 {
+ status = "okay";
+};
+
&qspi {
pinctrl-names = "default";
pinctrl-0 = <&qspi_cfg>;
--
2.53.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH v3 6/6] riscv: dts: spacemit: k1-musepi-pro: set default console baud rate
[not found] <20260513071958.29574-1-a.heider@gmail.com>
` (4 preceding siblings ...)
2026-05-13 7:19 ` [PATCH v3 5/6] riscv: dts: spacemit: k1-musepi-pro: enable PCIe ports Andre Heider
@ 2026-05-13 7:19 ` Andre Heider
5 siblings, 0 replies; 10+ messages in thread
From: Andre Heider @ 2026-05-13 7:19 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Alexandre Ghiti, Yixun Lan
Cc: Yixun Lan, devicetree, linux-riscv, spacemit, linux-kernel
Allow serial output with the same uboot/opensbi settings so the
console works without providing a cmdline.
Signed-off-by: Andre Heider <a.heider@gmail.com>
Reviewed-by: Yixun Lan <dlan@kernel.org>
---
arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
index 953c0ff6a0d34..ce7caf6950dc0 100644
--- a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
+++ b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
@@ -22,7 +22,7 @@ aliases {
};
chosen {
- stdout-path = "serial0";
+ stdout-path = "serial0:115200n8";
};
leds {
--
2.53.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH v3 1/6] riscv: dts: spacemit: k1-musepi-pro: add PMIC and power infrastructure
2026-05-13 7:19 ` [PATCH v3 1/6] riscv: dts: spacemit: k1-musepi-pro: add PMIC and power infrastructure Andre Heider
@ 2026-05-13 7:48 ` Yixun Lan
2026-05-13 8:02 ` Yixun Lan
2026-05-14 2:28 ` sashiko-bot
2 siblings, 0 replies; 10+ messages in thread
From: Yixun Lan @ 2026-05-13 7:48 UTC (permalink / raw)
To: Andre Heider
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Alexandre Ghiti, Yixun Lan, devicetree,
linux-riscv, spacemit, linux-kernel
On 09:19 Wed 13 May , Andre Heider wrote:
> Enable i2c8 and add the connected SpacemiT P1 PMIC with its related regulators
got a warning here, commit message should limit to 75 characters..
> for the board's power infrastructure and voltage regulation support.
>
> Signed-off-by: Andre Heider <a.heider@gmail.com>
--
Yixun Lan (dlan)
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v3 1/6] riscv: dts: spacemit: k1-musepi-pro: add PMIC and power infrastructure
2026-05-13 7:19 ` [PATCH v3 1/6] riscv: dts: spacemit: k1-musepi-pro: add PMIC and power infrastructure Andre Heider
2026-05-13 7:48 ` Yixun Lan
@ 2026-05-13 8:02 ` Yixun Lan
2026-05-14 2:28 ` sashiko-bot
2 siblings, 0 replies; 10+ messages in thread
From: Yixun Lan @ 2026-05-13 8:02 UTC (permalink / raw)
To: Andre Heider
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Alexandre Ghiti, Yixun Lan, devicetree,
linux-riscv, spacemit, linux-kernel
Hi Andre,
On 09:19 Wed 13 May , Andre Heider wrote:
> Enable i2c8 and add the connected SpacemiT P1 PMIC with its related regulators
> for the board's power infrastructure and voltage regulation support.
>
> Signed-off-by: Andre Heider <a.heider@gmail.com>
> ---
> .../riscv/boot/dts/spacemit/k1-musepi-pro.dts | 134 ++++++++++++++++++
> 1 file changed, 134 insertions(+)
>
> diff --git a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
> index 29e333b670cf0..e0b585c50014b 100644
> --- a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
> +++ b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
> @@ -17,6 +17,7 @@ / {
> aliases {
> ethernet0 = ð0;
> serial0 = &uart0;
> + i2c8 = &i2c8;
> };
>
> chosen {
> @@ -33,6 +34,15 @@ led1 {
> default-state = "on";
> };
> };
> +
..
> + reg_vcc_4v0: regulator-vcc-4v0 {
I prefer to keep this name same as other boards, so let's change it
to reg_vcc_4v ..
> + compatible = "regulator-fixed";
> + regulator-name = "VCC4V0";
> + regulator-min-microvolt = <4000000>;
> + regulator-max-microvolt = <4000000>;
> + regulator-boot-on;
> + regulator-always-on;
> + };
> };
--
Yixun Lan (dlan)
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v3 1/6] riscv: dts: spacemit: k1-musepi-pro: add PMIC and power infrastructure
2026-05-13 7:19 ` [PATCH v3 1/6] riscv: dts: spacemit: k1-musepi-pro: add PMIC and power infrastructure Andre Heider
2026-05-13 7:48 ` Yixun Lan
2026-05-13 8:02 ` Yixun Lan
@ 2026-05-14 2:28 ` sashiko-bot
2 siblings, 0 replies; 10+ messages in thread
From: sashiko-bot @ 2026-05-14 2:28 UTC (permalink / raw)
To: Andre Heider; +Cc: krzk+dt, devicetree, robh, conor+dt
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] Regulator minimum voltage constraints are set too loosely on fixed board rails, risking hardware brownouts.
--
commit 823adf1d7b0f1286cdd0e228119b713b02c36d2e
Author: Andre Heider <a.heider@gmail.com>
riscv: dts: spacemit: k1-musepi-pro: add PMIC and power infrastructure
This commit enables i2c8 and adds the connected SpacemiT P1 PMIC with its
related regulators for the board's power infrastructure and voltage
regulation support.
> diff --git a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
> index 29e333b670cf0..e0b585c50014b 100644
> --- a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
> +++ b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
[ ... ]
> @@ -72,6 +82,130 @@ &pdma {
> status = "okay";
> };
>
> +&i2c8 {
> + pinctrl-0 = <&i2c8_cfg>;
> + pinctrl-names = "default";
> + status = "okay";
> +
> + pmic@41 {
> + compatible = "spacemit,p1";
> + reg = <0x41>;
> + interrupts = <64>;
[ ... ]
> + dldoin1-supply = <&buck5>;
> + dldoin2-supply = <&buck5>;
> +
> + regulators {
[ ... ]
> + buck3_1v8: buck3 {
> + regulator-min-microvolt = <500000>;
> + regulator-max-microvolt = <1800000>;
Should these minimum bounds be restricted to match the exact hardware layout
of the board?
The labels buck3_1v8 and buck4_3v3 indicate these rails are wired for fixed
1.8V and 3.3V usage, but the regulator-min-microvolt allows them to scale
down to 0.5V. Could this loose constraint risk hardware brownouts if a driver
attempts dynamic voltage scaling on these rails?
> + regulator-ramp-delay = <5000>;
> + regulator-always-on;
> + };
> +
> + buck4_3v3: buck4 {
> + regulator-min-microvolt = <500000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-ramp-delay = <5000>;
> + regulator-always-on;
> + };
> +
> + buck5: buck5 {
> + regulator-min-microvolt = <500000>;
> + regulator-max-microvolt = <3450000>;
Since buck5 is used as the parent supply for the DLDOs (dldoin1-supply and
dldoin2-supply), could the wide 0.5V minimum constraint allow the OS to drop
its voltage below the necessary headroom needed to power the downstream
DLDOs?
> + regulator-ramp-delay = <5000>;
> + regulator-always-on;
> + };
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260513071958.29574-1-a.heider@gmail.com?part=1
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v3 3/6] riscv: dts: spacemit: k1-musepi-pro: enable QSPI and add SPI NOR
2026-05-13 7:19 ` [PATCH v3 3/6] riscv: dts: spacemit: k1-musepi-pro: enable QSPI and add SPI NOR Andre Heider
@ 2026-05-14 2:53 ` sashiko-bot
0 siblings, 0 replies; 10+ messages in thread
From: sashiko-bot @ 2026-05-14 2:53 UTC (permalink / raw)
To: Andre Heider; +Cc: robh, krzk+dt, conor+dt, devicetree
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Low] Partition nodes use specific functional names instead of generic names.
--
commit ead14b17b1685d70e44f6cab4060557873642eb6
Author: Andre Heider <a.heider@gmail.com>
riscv: dts: spacemit: k1-musepi-pro: enable QSPI and add SPI NOR
This commit adds the QSPI controller node and describes the attached SPI
NOR flash. It also adds a corresponding vendor flash partition layout.
> diff --git a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
> index 41d7d6d20a797..b0f66f49db4b7 100644
> --- a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
> +++ b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
[ ... ]
> +&qspi {
> + pinctrl-names = "default";
> + pinctrl-0 = <&qspi_cfg>;
> + status = "okay";
> +
> + flash@0 {
> + compatible = "jedec,spi-nor";
[ ... ]
> + partitions {
> + compatible = "fixed-partitions";
> + #address-cells = <1>;
> + #size-cells = <1>;
> +
> + bootinfo@0 {
> + reg = <0x0 0x10000>;
> + };
> + private@10000 {
> + reg = <0x10000 0x10000>;
> + };
> + fsbl@20000 {
> + reg = <0x20000 0x40000>;
> + };
> + env@60000 {
> + reg = <0x60000 0x10000>;
> + };
> + opensbi@70000 {
> + reg = <0x70000 0x30000>;
> + };
> + uboot@a0000 {
> + reg = <0xa0000 0x760000>;
> + };
Should these partition nodes use the generic partition@ naming convention
instead of specific functional names?
The device tree schema for fixed-partitions expects child nodes to match the
pattern ^partition@[0-9a-f]+$. Using specific names like bootinfo@0 might
trigger dtc and schema validation warnings.
Could these functional names be provided via the label property instead,
while keeping the node names generic?
> + };
> + };
> +};
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260513071958.29574-1-a.heider@gmail.com?part=3
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2026-05-14 2:53 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20260513071958.29574-1-a.heider@gmail.com>
2026-05-13 7:19 ` [PATCH v3 1/6] riscv: dts: spacemit: k1-musepi-pro: add PMIC and power infrastructure Andre Heider
2026-05-13 7:48 ` Yixun Lan
2026-05-13 8:02 ` Yixun Lan
2026-05-14 2:28 ` sashiko-bot
2026-05-13 7:19 ` [PATCH v3 2/6] riscv: dts: spacemit: k1-musepi-pro: add 24c02 eeprom Andre Heider
2026-05-13 7:19 ` [PATCH v3 3/6] riscv: dts: spacemit: k1-musepi-pro: enable QSPI and add SPI NOR Andre Heider
2026-05-14 2:53 ` sashiko-bot
2026-05-13 7:19 ` [PATCH v3 4/6] riscv: dts: spacemit: k1-musepi-pro: enable USB 3 ports Andre Heider
2026-05-13 7:19 ` [PATCH v3 5/6] riscv: dts: spacemit: k1-musepi-pro: enable PCIe ports Andre Heider
2026-05-13 7:19 ` [PATCH v3 6/6] riscv: dts: spacemit: k1-musepi-pro: set default console baud rate Andre Heider
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox