[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <eaa5347b-af52-4de3-be58-f7b932c8fe01@freeshell.de>
Date: Thu, 23 Oct 2025 04:53:53 -0700
From: E Shattow <e@...eshell.de>
To: Troy Mitchell <troy.mitchell@...ux.spacemit.com>,
Rob Herring <robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>, Yixun Lan <dlan@...too.org>,
Paul Walmsley <paul.walmsley@...ive.com>, Palmer Dabbelt
<palmer@...belt.com>, Albert Ou <aou@...s.berkeley.edu>,
Alexandre Ghiti <alex@...ti.fr>, Yangyu Chen <cyy@...self.name>,
Paul Walmsley <pjw@...nel.org>
Cc: devicetree@...r.kernel.org, linux-riscv@...ts.infradead.org,
spacemit@...ts.linux.dev, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v4 2/2] riscv: dts: spacemit: add MusePi Pro board device
tree
On 10/23/25 00:28, Troy Mitchell wrote:
> Add initial device tree support for the MusePi Pro board [1].
> The board is using the SpacemiT K1/M1 SoC.
>
> This device tree is adapted from the SpacemiT vendor tree [2] and
> enables basic board functionality, including UART console, LED, eMMC,
> Ethernet, and PDMA.
>
> Link: https://developer.spacemit.com/documentation?token=YJtdwnvvViPVcmkoPDpcvwfVnrh&type=pdf [1]
> Link: https://gitee.com/bianbu-linux/linux-6.6/blob/k1-bl-v2.2.y/arch/riscv/boot/dts/spacemit/k1-x_MUSE-Pi-Pro.dts [2]
> Signed-off-by: Troy Mitchell <troy.mitchell@...ux.spacemit.com>
> ---
> Changelog in v4:
> - modify commit message
> - add SpacemiT copyright
> - Link to v3: https://lore.kernel.org/all/20251017-k1-musepi-pro-dts-v3-2-40b05491699f@linux.spacemit.com/
>
> Changelog in v3:
> - sort dts node
> - add ethernet alias
> - add emmc, pdma, and eth0 node (a squash of patches 3–5 from v2)
> - Link to v2: https://lore.kernel.org/all/20251010-k1-musepi-pro-dts-v2-2-6e1b491f6f3e@linux.spacemit.com/
>
> Changelog in v2:
> - modify commit message
> - swap pinctrl-names and pinctrl-0 properties in uart0 node
> - rename model: "MusePi Pro" -> "SpacemiT MusePi Pro"
> - keep the dtb-$(CONFIG_ARCH_SPACEMIT) entries in alphabetical order
> - Link to v1: https://lore.kernel.org/all/20250928-k1-musepi-pro-dts-v1-2-5efcca0ce3ae@linux.spacemit.com/
> ---
> arch/riscv/boot/dts/spacemit/Makefile | 1 +
> arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts | 79 ++++++++++++++++++++++++++
> 2 files changed, 80 insertions(+)
>
> diff --git a/arch/riscv/boot/dts/spacemit/Makefile b/arch/riscv/boot/dts/spacemit/Makefile
> index 152832644870624d8fd77684ef33addb42b0baf3..942ecb38bea034ef5fbf2cef74e682ee0b6ad8f4 100644
> --- a/arch/riscv/boot/dts/spacemit/Makefile
> +++ b/arch/riscv/boot/dts/spacemit/Makefile
> @@ -1,4 +1,5 @@
> # SPDX-License-Identifier: GPL-2.0
> dtb-$(CONFIG_ARCH_SPACEMIT) += k1-bananapi-f3.dtb
> dtb-$(CONFIG_ARCH_SPACEMIT) += k1-milkv-jupiter.dtb
> +dtb-$(CONFIG_ARCH_SPACEMIT) += k1-musepi-pro.dtb
> dtb-$(CONFIG_ARCH_SPACEMIT) += k1-orangepi-rv2.dtb
> diff --git a/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
> new file mode 100644
> index 0000000000000000000000000000000000000000..29e333b670cf0a5c4ed852668460db475b9c44cb
> --- /dev/null
> +++ b/arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
> @@ -0,0 +1,79 @@
> +// SPDX-License-Identifier: (GPL-2.0 OR MIT)
> +/*
> + * Copyright (C) 2024 Yangyu Chen <cyy@...self.name>
> + * Copyright (C) 2025 SpacemiT, Inc
> + * Copyright (C) 2025 Troy Mitchell <troy.mitchell@...ux.spacemit.com>
> + */
> +
> +/dts-v1/;
> +
> +#include "k1.dtsi"
> +#include "k1-pinctrl.dtsi"
> +
> +/ {
> + model = "SpacemiT MusePi Pro";
> + compatible = "spacemit,musepi-pro", "spacemit,k1";
> +
> + aliases {
> + ethernet0 = ð0;
> + serial0 = &uart0;
> + };
> +
> + chosen {
> + stdout-path = "serial0";
> + };
> +
> + leds {
> + compatible = "gpio-leds";
> +
> + led1 {
> + label = "sys-led";
> + gpios = <&gpio K1_GPIO(96) GPIO_ACTIVE_HIGH>;
> + linux,default-trigger = "heartbeat";
> + default-state = "on";
> + };
> + };
> +};
> +
> +&emmc {
> + bus-width = <8>;
> + mmc-hs400-1_8v;
> + mmc-hs400-enhanced-strobe;
> + non-removable;
> + no-sd;
> + no-sdio;
I doubt very much that 'no-sd' or 'no-sdio' are appropriate here. These
are not general properties, they are useful only for specific
workarounds of hardware that reacts badly to commands. Is the hardware
broken that it needs these properties?
-E
> + status = "okay";
> +};
> +
> +ð0 {
> + phy-handle = <&rgmii0>;
> + phy-mode = "rgmii-id";
> + pinctrl-0 = <&gmac0_cfg>;
> + pinctrl-names = "default";
> + rx-internal-delay-ps = <0>;
> + tx-internal-delay-ps = <0>;
> + status = "okay";
> +
> + mdio-bus {
> + #address-cells = <0x1>;
> + #size-cells = <0x0>;
> +
> + reset-gpios = <&gpio K1_GPIO(110) GPIO_ACTIVE_LOW>;
> + reset-delay-us = <10000>;
> + reset-post-delay-us = <100000>;
> +
> + rgmii0: phy@1 {
> + reg = <0x1>;
> + };
> + };
> +};
> +
> +&pdma {
> + status = "okay";
> +};
> +
> +&uart0 {
> + pinctrl-0 = <&uart0_2_cfg>;
> + pinctrl-names = "default";
> + status = "okay";
> +};
>
Powered by blists - more mailing lists