[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20260116100001.208334-1-amadeus@jmu.edu.cn>
Date: Fri, 16 Jan 2026 18:00:00 +0800
From: Chukun Pan <amadeus@....edu.cn>
To: Yixun Lan <dlan@...too.org>
Cc: Rob Herring <robh@...nel.org>,
Paul Walmsley <pjw@...nel.org>,
Alexandre Ghiti <alex@...ti.fr>,
Albert Ou <aou@...s.berkeley.edu>,
Palmer Dabbelt <palmer@...belt.com>,
Conor Dooley <conor+dt@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
linux-riscv@...ts.infradead.org,
linux-kernel@...r.kernel.org,
spacemit@...ts.linux.dev,
Chukun Pan <amadeus@....edu.cn>
Subject: [PATCH 1/2] riscv: dts: spacemit: add common board dtsi for OrangePi
The OrangePi R2S and OrangePi RV2 boards share many similarities, the
difference being that the RV2 board has more peripherals, such as HDMI
and Wi-Fi. Create a dtsi for shared parts to reduce duplication.
Signed-off-by: Chukun Pan <amadeus@....edu.cn>
---
.../boot/dts/spacemit/k1-orangepi-r2s.dts | 69 +----------------
.../boot/dts/spacemit/k1-orangepi-rv2.dts | 69 +----------------
arch/riscv/boot/dts/spacemit/k1-orangepi.dtsi | 76 +++++++++++++++++++
3 files changed, 78 insertions(+), 136 deletions(-)
create mode 100644 arch/riscv/boot/dts/spacemit/k1-orangepi.dtsi
diff --git a/arch/riscv/boot/dts/spacemit/k1-orangepi-r2s.dts b/arch/riscv/boot/dts/spacemit/k1-orangepi-r2s.dts
index 58098c4a2aab..393270641b04 100644
--- a/arch/riscv/boot/dts/spacemit/k1-orangepi-r2s.dts
+++ b/arch/riscv/boot/dts/spacemit/k1-orangepi-r2s.dts
@@ -5,22 +5,11 @@
/dts-v1/;
-#include "k1.dtsi"
-#include "k1-pinctrl.dtsi"
+#include "k1-orangepi.dtsi"
/ {
model = "OrangePi R2S";
compatible = "xunlong,orangepi-r2s", "spacemit,k1";
-
- aliases {
- serial0 = &uart0;
- ethernet0 = ð0;
- ethernet1 = ð1;
- };
-
- chosen {
- stdout-path = "serial0";
- };
};
&emmc {
@@ -32,59 +21,3 @@ &emmc {
no-sdio;
status = "okay";
};
-
-ð0 {
- phy-handle = <&rgmii0>;
- phy-mode = "rgmii-id";
- pinctrl-names = "default";
- pinctrl-0 = <&gmac0_cfg>;
- 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>;
- };
- };
-};
-
-ð1 {
- phy-handle = <&rgmii1>;
- phy-mode = "rgmii-id";
- pinctrl-names = "default";
- pinctrl-0 = <&gmac1_cfg>;
- rx-internal-delay-ps = <0>;
- tx-internal-delay-ps = <250>;
- status = "okay";
-
- mdio-bus {
- #address-cells = <0x1>;
- #size-cells = <0x0>;
-
- reset-gpios = <&gpio K1_GPIO(115) GPIO_ACTIVE_LOW>;
- reset-delay-us = <10000>;
- reset-post-delay-us = <100000>;
-
- rgmii1: phy@1 {
- reg = <0x1>;
- };
- };
-};
-
-&pdma {
- status = "okay";
-};
-
-&uart0 {
- pinctrl-names = "default";
- pinctrl-0 = <&uart0_2_cfg>;
- status = "okay";
-};
diff --git a/arch/riscv/boot/dts/spacemit/k1-orangepi-rv2.dts b/arch/riscv/boot/dts/spacemit/k1-orangepi-rv2.dts
index 41dc8e35e6eb..e53f52e27477 100644
--- a/arch/riscv/boot/dts/spacemit/k1-orangepi-rv2.dts
+++ b/arch/riscv/boot/dts/spacemit/k1-orangepi-rv2.dts
@@ -6,23 +6,12 @@
/dts-v1/;
-#include "k1.dtsi"
-#include "k1-pinctrl.dtsi"
+#include "k1-orangepi.dtsi"
/ {
model = "OrangePi RV2";
compatible = "xunlong,orangepi-rv2", "spacemit,k1";
- aliases {
- serial0 = &uart0;
- ethernet0 = ð0;
- ethernet1 = ð1;
- };
-
- chosen {
- stdout-path = "serial0";
- };
-
leds {
compatible = "gpio-leds";
@@ -34,59 +23,3 @@ led1 {
};
};
};
-
-ð0 {
- phy-handle = <&rgmii0>;
- phy-mode = "rgmii-id";
- pinctrl-names = "default";
- pinctrl-0 = <&gmac0_cfg>;
- 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>;
- };
- };
-};
-
-ð1 {
- phy-handle = <&rgmii1>;
- phy-mode = "rgmii-id";
- pinctrl-names = "default";
- pinctrl-0 = <&gmac1_cfg>;
- rx-internal-delay-ps = <0>;
- tx-internal-delay-ps = <250>;
- status = "okay";
-
- mdio-bus {
- #address-cells = <0x1>;
- #size-cells = <0x0>;
-
- reset-gpios = <&gpio K1_GPIO(115) GPIO_ACTIVE_LOW>;
- reset-delay-us = <10000>;
- reset-post-delay-us = <100000>;
-
- rgmii1: phy@1 {
- reg = <0x1>;
- };
- };
-};
-
-&pdma {
- status = "okay";
-};
-
-&uart0 {
- pinctrl-names = "default";
- pinctrl-0 = <&uart0_2_cfg>;
- status = "okay";
-};
diff --git a/arch/riscv/boot/dts/spacemit/k1-orangepi.dtsi b/arch/riscv/boot/dts/spacemit/k1-orangepi.dtsi
new file mode 100644
index 000000000000..b4808f258adf
--- /dev/null
+++ b/arch/riscv/boot/dts/spacemit/k1-orangepi.dtsi
@@ -0,0 +1,76 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright (C) 2024 Yangyu Chen <cyy@...self.name>
+ * Copyright (C) 2025 Hendrik Hamerlinck <hendrik.hamerlinck@...mernet.be>
+ */
+
+#include "k1.dtsi"
+#include "k1-pinctrl.dtsi"
+
+/ {
+ aliases {
+ ethernet0 = ð0;
+ ethernet1 = ð1;
+ serial0 = &uart0;
+ };
+
+ chosen {
+ stdout-path = "serial0";
+ };
+};
+
+ð0 {
+ phy-handle = <&rgmii0>;
+ phy-mode = "rgmii-id";
+ pinctrl-names = "default";
+ pinctrl-0 = <&gmac0_cfg>;
+ 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>;
+ };
+ };
+};
+
+ð1 {
+ phy-handle = <&rgmii1>;
+ phy-mode = "rgmii-id";
+ pinctrl-names = "default";
+ pinctrl-0 = <&gmac1_cfg>;
+ rx-internal-delay-ps = <0>;
+ tx-internal-delay-ps = <250>;
+ status = "okay";
+
+ mdio-bus {
+ #address-cells = <0x1>;
+ #size-cells = <0x0>;
+
+ reset-gpios = <&gpio K1_GPIO(115) GPIO_ACTIVE_LOW>;
+ reset-delay-us = <10000>;
+ reset-post-delay-us = <100000>;
+
+ rgmii1: phy@1 {
+ reg = <0x1>;
+ };
+ };
+};
+
+&pdma {
+ status = "okay";
+};
+
+&uart0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart0_2_cfg>;
+ status = "okay";
+};
--
2.25.1
Powered by blists - more mailing lists