[PATCH v1 4/4] riscv: dts: starfive: add Milk-V Mars CM Lite system-on-module
Hal Feng
hal.feng at linux.starfivetech.com
Wed Aug 20 19:40:13 PDT 2025
On 7/24/2025 5:48 PM, E Shattow wrote:
> Milk-V Mars CM Lite is a System-on-Module based on the Milk-V Mars CM
> without the onboard eMMC storage component populated and configured
> instead for SD3.0 Card Slot on that interface via 100-pin connector.
>
> Link to Milk-V Mars CM Lite schematics: https://github.com/milkv-mars/mars-files/tree/main/Mars-CM_Hardware_Schematices
> Link to StarFive JH7110 Technical Reference Manual: https://doc-en.rvspace.org/JH7110/TRM/index.html
> Link to Raspberry Pi CM4IO datasheet: https://datasheets.raspberrypi.com/cm4io/cm4io-datasheet.pdf
>
> Add the devicetree file to make use of StarFive JH7110 common supported
> features PMIC, EEPROM, UART, I2C, GPIO, PCIe, QSPI Flash, PWM, and
> Ethernet. Also configure the eMMC interface mmc0 for SD Card use and
> configure the common SD Card interface mmc1 for onboard SDIO BT+WiFi.
>
> Signed-off-by: E Shattow <e at freeshell.de>
> ---
> arch/riscv/boot/dts/starfive/Makefile | 1 +
> .../dts/starfive/jh7110-milkv-marscm-lite.dts | 176 ++++++++++++++++++
> 2 files changed, 177 insertions(+)
> create mode 100644 arch/riscv/boot/dts/starfive/jh7110-milkv-marscm-lite.dts
>
> diff --git a/arch/riscv/boot/dts/starfive/Makefile b/arch/riscv/boot/dts/starfive/Makefile
> index 79742617ddab..62b659f89ba7 100644
> --- a/arch/riscv/boot/dts/starfive/Makefile
> +++ b/arch/riscv/boot/dts/starfive/Makefile
> @@ -11,6 +11,7 @@ dtb-$(CONFIG_ARCH_STARFIVE) += jh7100-starfive-visionfive-v1.dtb
> dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-deepcomputing-fml13v01.dtb
> dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-milkv-mars.dtb
> dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-milkv-marscm-emmc.dtb
> +dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-milkv-marscm-lite.dtb
> dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-pine64-star64.dtb
> dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-starfive-visionfive-2-v1.2a.dtb
> dtb-$(CONFIG_ARCH_STARFIVE) += jh7110-starfive-visionfive-2-v1.3b.dtb
> diff --git a/arch/riscv/boot/dts/starfive/jh7110-milkv-marscm-lite.dts b/arch/riscv/boot/dts/starfive/jh7110-milkv-marscm-lite.dts
> new file mode 100644
> index 000000000000..e110146f0b76
> --- /dev/null
> +++ b/arch/riscv/boot/dts/starfive/jh7110-milkv-marscm-lite.dts
> @@ -0,0 +1,176 @@
> +// SPDX-License-Identifier: GPL-2.0 OR MIT
> +/*
> + * Copyright (C) 2025 E Shattow <e at freeshell.de>
> + */
> +
> +/dts-v1/;
> +#include <dt-bindings/pinctrl/starfive,jh7110-pinctrl.h>
> +#include <dt-bindings/interrupt-controller/irq.h>
> +#include "jh7110-common.dtsi"
You can just include "jh7110-milkv-marscm-emmc.dts" instead of "jh7110-common.dtsi".
And then adding mmc0 changes will be enough.
Best regards,
Hal
...
> +&mmc0 {
> + bus-width = <4>;
> + cd-gpios = <&sysgpio 41 GPIO_ACTIVE_LOW>;
> +};
> +
> +&mmc0_pins {
> + pwren-pins {
> + pinmux = <GPIOMUX(22, GPOUT_HIGH,
> + GPOEN_ENABLE,
> + GPI_NONE)>;
> + };
> +};
> +
...
More information about the linux-riscv
mailing list