Linux SpacemiT device drivers
 help / color / mirror / Atom feed
* [PATCH 0/4] riscv: dts: spacemit: improve Milk-V Jupiter device tree
@ 2026-05-14 15:56 Aurelien Jarno
  2026-05-14 15:56 ` [PATCH 1/4] riscv: dts: spacemit: set console baud rate on Milk-V Jupiter Aurelien Jarno
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Aurelien Jarno @ 2026-05-14 15:56 UTC (permalink / raw)
  To: linux-kernel, Paul Walmsley, Palmer Dabbelt, Albert Ou,
	Alexandre Ghiti, Yixun Lan
  Cc: Aurelien Jarno, open list:RISC-V ARCHITECTURE:Keyword:riscv,
	open list:RISC-V SPACEMIT SoC Support:Keyword:spacemit

This patchset updates the Milk-V Jupiter device tree to align with the
changes recently done for other SpacemiT K1 based boards.

In addition the last patch enables SD card support, but it depends on
the SD card support series for the K1 SoC to be merged first:
https://lore.kernel.org/linux-riscv/20260511-orangepi-sd-card-uhs-v9-0-ae48c0b2b2cf@gmail.com/

Aurelien Jarno (4):
  riscv: dts: spacemit: set console baud rate on Milk-V Jupiter
  riscv: dts: spacemit: sort aliases on Milk-V Jupiter
  riscv: dts: spacemit: enable eMMC on Milk-V Jupiter
  riscv: dts: spacemit: enable SD card support on Milk-V Jupiter

 .../boot/dts/spacemit/k1-milkv-jupiter.dts    | 35 +++++++++++++++++--
 1 file changed, 32 insertions(+), 3 deletions(-)

-- 
2.53.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 1/4] riscv: dts: spacemit: set console baud rate on Milk-V Jupiter
  2026-05-14 15:56 [PATCH 0/4] riscv: dts: spacemit: improve Milk-V Jupiter device tree Aurelien Jarno
@ 2026-05-14 15:56 ` Aurelien Jarno
  2026-05-14 15:56 ` [PATCH 2/4] riscv: dts: spacemit: sort aliases " Aurelien Jarno
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 7+ messages in thread
From: Aurelien Jarno @ 2026-05-14 15:56 UTC (permalink / raw)
  To: linux-kernel, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Yixun Lan, Paul Walmsley, Palmer Dabbelt, Albert Ou,
	Alexandre Ghiti, Javier Martinez Canillas
  Cc: Aurelien Jarno,
	open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
	open list:RISC-V SPACEMIT SoC Support,
	open list:RISC-V SPACEMIT SoC Support

Because the default console's baud rate is not set, defconfig kernels do
not have any serial output on this platform. Set the baud rate to
115200, matching what is used by U-Boot etc on this platform.

See-also: 24c12ca43b12c ("dts: spacemit: set console baud rate on bpif3")
Fixes: 5b90a3d6092d9 ("riscv: dts: spacemit: Add Milk-V Jupiter board device tree")
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
---
 arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
index 95c35154da96d..9b1dfddf2bac5 100644
--- a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
+++ b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
@@ -21,7 +21,7 @@ aliases {
 	};
 
 	chosen {
-		stdout-path = "serial0";
+		stdout-path = "serial0:115200n8";
 	};
 
 	leds {
-- 
2.53.0


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 2/4] riscv: dts: spacemit: sort aliases on Milk-V Jupiter
  2026-05-14 15:56 [PATCH 0/4] riscv: dts: spacemit: improve Milk-V Jupiter device tree Aurelien Jarno
  2026-05-14 15:56 ` [PATCH 1/4] riscv: dts: spacemit: set console baud rate on Milk-V Jupiter Aurelien Jarno
@ 2026-05-14 15:56 ` Aurelien Jarno
  2026-05-14 15:56 ` [PATCH 3/4] riscv: dts: spacemit: enable eMMC " Aurelien Jarno
  2026-05-14 15:56 ` [PATCH 4/4] riscv: dts: spacemit: enable SD card support " Aurelien Jarno
  3 siblings, 0 replies; 7+ messages in thread
From: Aurelien Jarno @ 2026-05-14 15:56 UTC (permalink / raw)
  To: linux-kernel, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Paul Walmsley, Palmer Dabbelt, Albert Ou, Alexandre Ghiti,
	Yixun Lan
  Cc: Aurelien Jarno,
	open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
	open list:RISC-V SPACEMIT SoC Support,
	open list:RISC-V SPACEMIT SoC Support

Before adding more aliases, just sort them.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
---
 arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
index 9b1dfddf2bac5..450d28e438293 100644
--- a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
+++ b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
@@ -15,9 +15,9 @@ / {
 	aliases {
 		ethernet0 = &eth0;
 		ethernet1 = &eth1;
-		serial0 = &uart0;
 		i2c2 = &i2c2;
 		i2c8 = &i2c8;
+		serial0 = &uart0;
 	};
 
 	chosen {
-- 
2.53.0


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 3/4] riscv: dts: spacemit: enable eMMC on Milk-V Jupiter
  2026-05-14 15:56 [PATCH 0/4] riscv: dts: spacemit: improve Milk-V Jupiter device tree Aurelien Jarno
  2026-05-14 15:56 ` [PATCH 1/4] riscv: dts: spacemit: set console baud rate on Milk-V Jupiter Aurelien Jarno
  2026-05-14 15:56 ` [PATCH 2/4] riscv: dts: spacemit: sort aliases " Aurelien Jarno
@ 2026-05-14 15:56 ` Aurelien Jarno
  2026-05-15  6:49   ` E Shattow
  2026-05-14 15:56 ` [PATCH 4/4] riscv: dts: spacemit: enable SD card support " Aurelien Jarno
  3 siblings, 1 reply; 7+ messages in thread
From: Aurelien Jarno @ 2026-05-14 15:56 UTC (permalink / raw)
  To: linux-kernel, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Paul Walmsley, Palmer Dabbelt, Albert Ou, Alexandre Ghiti,
	Yixun Lan
  Cc: Aurelien Jarno,
	open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
	open list:RISC-V ARCHITECTURE,
	open list:RISC-V SPACEMIT SoC Support

The Milk-V Jupiter board has a connector for an eMMC module. Add an
entry for it in the device tree and alias it mmc0. As it is not
populated by default, do no mark it as non-removable.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
---
 arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
index 450d28e438293..b9b8ddc8e7fb0 100644
--- a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
+++ b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
@@ -17,6 +17,7 @@ aliases {
 		ethernet1 = &eth1;
 		i2c2 = &i2c2;
 		i2c8 = &i2c8;
+		mmc0 = &emmc;
 		serial0 = &uart0;
 	};
 
@@ -138,6 +139,15 @@ &cpu_7 {
 	cpu-supply = <&buck1_3v45>;
 };
 
+&emmc {
+	bus-width = <8>;
+	mmc-hs400-1_8v;
+	mmc-hs400-enhanced-strobe;
+	no-sd;
+	no-sdio;
+	status = "okay";
+};
+
 &eth0 {
 	phy-handle = <&rgmii0>;
 	phy-mode = "rgmii-id";
-- 
2.53.0


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 4/4] riscv: dts: spacemit: enable SD card support on Milk-V Jupiter
  2026-05-14 15:56 [PATCH 0/4] riscv: dts: spacemit: improve Milk-V Jupiter device tree Aurelien Jarno
                   ` (2 preceding siblings ...)
  2026-05-14 15:56 ` [PATCH 3/4] riscv: dts: spacemit: enable eMMC " Aurelien Jarno
@ 2026-05-14 15:56 ` Aurelien Jarno
  3 siblings, 0 replies; 7+ messages in thread
From: Aurelien Jarno @ 2026-05-14 15:56 UTC (permalink / raw)
  To: linux-kernel, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Yixun Lan, Paul Walmsley, Palmer Dabbelt, Albert Ou,
	Alexandre Ghiti
  Cc: Aurelien Jarno,
	open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
	open list:RISC-V ARCHITECTURE,
	open list:RISC-V SPACEMIT SoC Support

Add complete SD card controller support with UHS high-speed modes.

- Enable sdhci0 controller with 4-bit bus width
- Configure card detect GPIO with pull-up
- Connect vmmc-supply to buck4 for 3.3V card power
- Connect vqmmc-supply to aldo1 for 1.8V/3.3V I/O switching
- Add dual pinctrl states for voltage-dependent pin configuration
- Support UHS-I SDR25, SDR50, and SDR104 modes
- Alias it as mmc1

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
---
 .../boot/dts/spacemit/k1-milkv-jupiter.dts    | 21 ++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)

diff --git a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
index b9b8ddc8e7fb0..7cf77437e0c2d 100644
--- a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
+++ b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
@@ -18,6 +18,7 @@ aliases {
 		i2c2 = &i2c2;
 		i2c8 = &i2c8;
 		mmc0 = &emmc;
+		mmc1 = &sdhci0;
 		serial0 = &uart0;
 	};
 
@@ -282,7 +283,7 @@ buck6 {
 				regulator-always-on;
 			};
 
-			aldo1 {
+			aldo1: aldo1 {
 				regulator-min-microvolt = <500000>;
 				regulator-max-microvolt = <3400000>;
 				regulator-boot-on;
@@ -417,6 +418,24 @@ uboot@a00000 {
 	};
 };
 
+&sdhci0 {
+	pinctrl-names = "default", "uhs";
+	pinctrl-0 = <&mmc1_cfg>;
+	pinctrl-1 = <&mmc1_uhs_cfg>;
+	bus-width = <4>;
+	cd-gpios = <&gpio K1_GPIO(80) (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
+	no-mmc;
+	no-sdio;
+	disable-wp;
+	cap-sd-highspeed;
+	vmmc-supply = <&buck4_3v3>;
+	vqmmc-supply = <&aldo1>;
+	sd-uhs-sdr25;
+	sd-uhs-sdr50;
+	sd-uhs-sdr104;
+	status = "okay";
+};
+
 &uart0 {
 	pinctrl-names = "default";
 	pinctrl-0 = <&uart0_2_cfg>;
-- 
2.53.0


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH 3/4] riscv: dts: spacemit: enable eMMC on Milk-V Jupiter
  2026-05-14 15:56 ` [PATCH 3/4] riscv: dts: spacemit: enable eMMC " Aurelien Jarno
@ 2026-05-15  6:49   ` E Shattow
  2026-05-15  7:48     ` Aurelien Jarno
  0 siblings, 1 reply; 7+ messages in thread
From: E Shattow @ 2026-05-15  6:49 UTC (permalink / raw)
  To: Aurelien Jarno, linux-kernel, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Paul Walmsley, Palmer Dabbelt, Albert Ou,
	Alexandre Ghiti, Yixun Lan
  Cc: open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
	open list:RISC-V ARCHITECTURE,
	open list:RISC-V SPACEMIT SoC Support

On 5/14/26 08:56, Aurelien Jarno wrote:
> The Milk-V Jupiter board has a connector for an eMMC module. Add an
> entry for it in the device tree and alias it mmc0. As it is not
> populated by default, do no mark it as non-removable.
> 

The meaning of "non-removable" here is whether it is expected to be
added and removed during use, requiring to be probed again; not whether
it is a user configurable module or soldered down part.

> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
> ---
>  arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
> index 450d28e438293..b9b8ddc8e7fb0 100644
> --- a/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
> +++ b/arch/riscv/boot/dts/spacemit/k1-milkv-jupiter.dts
> @@ -17,6 +17,7 @@ aliases {
>  		ethernet1 = &eth1;
>  		i2c2 = &i2c2;
>  		i2c8 = &i2c8;
> +		mmc0 = &emmc;
>  		serial0 = &uart0;
>  	};
>  
> @@ -138,6 +139,15 @@ &cpu_7 {
>  	cpu-supply = <&buck1_3v45>;
>  };
>  
> +&emmc {
> +	bus-width = <8>;
> +	mmc-hs400-1_8v;
> +	mmc-hs400-enhanced-strobe;
> +	no-sd;
> +	no-sdio;
> +	status = "okay";
> +};
> +
>  &eth0 {
>  	phy-handle = <&rgmii0>;
>  	phy-mode = "rgmii-id";

With that, LGTM

(no R-by tag, I would want to test this I do not have the hardware though)

-E

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 3/4] riscv: dts: spacemit: enable eMMC on Milk-V Jupiter
  2026-05-15  6:49   ` E Shattow
@ 2026-05-15  7:48     ` Aurelien Jarno
  0 siblings, 0 replies; 7+ messages in thread
From: Aurelien Jarno @ 2026-05-15  7:48 UTC (permalink / raw)
  To: E Shattow
  Cc: linux-kernel, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Paul Walmsley, Palmer Dabbelt, Albert Ou, Alexandre Ghiti,
	Yixun Lan,
	open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
	open list:RISC-V ARCHITECTURE,
	open list:RISC-V SPACEMIT SoC Support

On 2026-05-14 23:49, E Shattow wrote:
> On 5/14/26 08:56, Aurelien Jarno wrote:
> > The Milk-V Jupiter board has a connector for an eMMC module. Add an
> > entry for it in the device tree and alias it mmc0. As it is not
> > populated by default, do no mark it as non-removable.
> > 
> 
> The meaning of "non-removable" here is whether it is expected to be
> added and removed during use, requiring to be probed again; not whether
> it is a user configurable module or soldered down part.

Not connecting the eMMC module and larking it as non-removable causes this info
message to appears in the logs:

mmc0: SDHCI controller on d4281000.mmc [d4281000.mmc] using ADMA
mmc0: Failed to initialize a non-removable card

Regards
Aurelien

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
aurelien@aurel32.net                     http://aurel32.net

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2026-05-15  7:48 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-14 15:56 [PATCH 0/4] riscv: dts: spacemit: improve Milk-V Jupiter device tree Aurelien Jarno
2026-05-14 15:56 ` [PATCH 1/4] riscv: dts: spacemit: set console baud rate on Milk-V Jupiter Aurelien Jarno
2026-05-14 15:56 ` [PATCH 2/4] riscv: dts: spacemit: sort aliases " Aurelien Jarno
2026-05-14 15:56 ` [PATCH 3/4] riscv: dts: spacemit: enable eMMC " Aurelien Jarno
2026-05-15  6:49   ` E Shattow
2026-05-15  7:48     ` Aurelien Jarno
2026-05-14 15:56 ` [PATCH 4/4] riscv: dts: spacemit: enable SD card support " Aurelien Jarno

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox