[PATCH] board: spacemit: Add SpacemiT MUSE Pi Pro
Yao Zi
ziyao at disroot.org
Mon Jul 28 11:58:51 CEST 2025
On Mon, Jul 28, 2025 at 04:25:47PM +0800, Niu Zhihong wrote:
> MUSE Pi Pro uses spacemit K1,
> a new generation of octa-core 64-bit RISC-V processor,
> which includes octa-core X60.
>
> Features tested on a MUSE Pi Pro 16GB:
> - SD-card boot
> - eMMC boot
I don't think either SD or eMMC is supported in mainline U-Boot for
SpacemiT K1. Does this mean "boot from SD/eMMC" is working? If so maybe
it's better to make the words more clear.
> Signed-off-by: Niu Zhihong <zhihong at nzhnb.com>
> ---
> arch/riscv/Kconfig | 4 ++
> arch/riscv/dts/Makefile | 1 +
> arch/riscv/dts/k1-muse-pi-pro.dts | 27 ++++++++
> board/spacemit/muse-pi-pro/Kconfig | 37 +++++++++++
> board/spacemit/muse-pi-pro/MAINTAINERS | 6 ++
> board/spacemit/muse-pi-pro/Makefile | 3 +
> board/spacemit/muse-pi-pro/board.c | 8 +++
> configs/muse-pi-pro_defconfig | 6 ++
> doc/board/spacemit/index.rst | 1 +
> doc/board/spacemit/muse-pi-pro.rst | 85 ++++++++++++++++++++++++++
> include/configs/muse-pi-pro.h | 11 ++++
> 11 files changed, 189 insertions(+)
> create mode 100644 arch/riscv/dts/k1-muse-pi-pro.dts
> create mode 100644 board/spacemit/muse-pi-pro/Kconfig
> create mode 100644 board/spacemit/muse-pi-pro/MAINTAINERS
> create mode 100644 board/spacemit/muse-pi-pro/Makefile
> create mode 100644 board/spacemit/muse-pi-pro/board.c
> create mode 100644 configs/muse-pi-pro_defconfig
> create mode 100644 doc/board/spacemit/muse-pi-pro.rst
> create mode 100644 include/configs/muse-pi-pro.h
...
> diff --git a/arch/riscv/dts/Makefile b/arch/riscv/dts/Makefile
> index 2b10c2d6c01..f959f174f21 100644
> --- a/arch/riscv/dts/Makefile
> +++ b/arch/riscv/dts/Makefile
> @@ -2,6 +2,7 @@
>
> dtb-$(CONFIG_TARGET_ANDES_AE350) += ae350_32.dtb ae350_64.dtb
> dtb-$(CONFIG_TARGET_BANANAPI_F3) += k1-bananapi-f3.dtb
> +dtb-$(CONFIG_TARGET_MUSE_PI_PRO) += k1-muse-pi-pro.dtb
> dtb-$(CONFIG_TARGET_K230_CANMV) += k230-canmv.dtb
> dtb-$(CONFIG_TARGET_MICROCHIP_ICICLE) += mpfs-icicle-kit.dtb
> dtb-$(CONFIG_TARGET_MILKV_DUO) += cv1800b-milkv-duo.dtb
> diff --git a/arch/riscv/dts/k1-muse-pi-pro.dts b/arch/riscv/dts/k1-muse-pi-pro.dts
> new file mode 100644
> index 00000000000..5e32d696b63
> --- /dev/null
> +++ b/arch/riscv/dts/k1-muse-pi-pro.dts
> @@ -0,0 +1,27 @@
> +/*
> + * Copyright The U-Boot Contributors
> + */
> +
> +#include "k1.dtsi"
> +#include "binman.dtsi"
> +#include "k1-pinctrl.dtsi"
> +
> +/ {
> + model = "MUSE Pi Pro";
> + compatible = "muse-pi-pro", "spacemit,k1";
Compatible strings usually come in form of "<manufacturer>,<model>", as
states in devicetree specification,
> The recommended format is "manufacturer,model", where manufacturer is
> a string describing the name of the manufacturer (such as a stock
> ticker symbol), and model specifies the model number
Do you have any information about the board's manufacturer?
> diff --git a/board/spacemit/muse-pi-pro/board.c b/board/spacemit/muse-pi-pro/board.c
> new file mode 100644
> index 00000000000..599e20117e3
> --- /dev/null
> +++ b/board/spacemit/muse-pi-pro/board.c
> @@ -0,0 +1,8 @@
> +/*
> + * Copyright The U-Boot Contributors
> + */
> +
> +int board_init(void)
> +{
> + return 0;
> +}
Empty board_init() function could just be omitted, as long as you set
CONFIG_BOARD_INIT to n. Please refer to this patch[1] for more
information.
...
> diff --git a/doc/board/spacemit/muse-pi-pro.rst b/doc/board/spacemit/muse-pi-pro.rst
> new file mode 100644
> index 00000000000..4aa2eab5917
> --- /dev/null
> +++ b/doc/board/spacemit/muse-pi-pro.rst
> @@ -0,0 +1,85 @@
...
> + U-Boot 2025.07-00902-gf2f451d9d6d3-dirty (Jul 28 2025 - 14:38:51 +0800)
> +
> + DRAM: 16 GiB
> + Core: 21 devices, 9 uclasses, devicetree: separate
> + Loading Environment from nowhere... OK
> + In: serial at d4017000
> + Out: serial at d4017000
> + Err: serial at d4017000
> + Net: No ethernet found.
> + => cpu list
> + 0: cpu at 0 spacemit,x60
> + 1: cpu at 1 spacemit,x60
> + 2: cpu at 2 spacemit,x60
> + 3: cpu at 3 spacemit,x60
> + 4: cpu at 4 spacemit,x60
> + 5: cpu at 5 spacemit,x60
> + 6: cpu at 6 spacemit,x60
> + 7: cpu at 7 spacemit,x60
> + =>
> \ No newline at end of file
Please restore the EOL :)
Regards,
Yao Zi
[1]: https://lore.kernel.org/u-boot/20250717024426.26953-1-semen.protsenko@linaro.org/
More information about the U-Boot
mailing list