[PATCH v4 3/3] riscv: dts: spacemit: k3: Add UFS support
Yixun Lan
dlan at kernel.org
Tue Sep 8 00:42:05 PDT 2026
Add UFS Host Controller support for SpacemiT K3 SoC, and enable
it both on Pico-ITX and CoM260-IFX boards.
Tested-by: Aurelien Jarno <aurelien at aurel32.net>
Signed-off-by: Yixun Lan <dlan at kernel.org>
---
arch/riscv/boot/dts/spacemit/k3-com260.dtsi | 4 ++++
arch/riscv/boot/dts/spacemit/k3-pico-itx.dts | 4 ++++
arch/riscv/boot/dts/spacemit/k3.dtsi | 22 ++++++++++++++++++++++
3 files changed, 30 insertions(+)
diff --git a/arch/riscv/boot/dts/spacemit/k3-com260.dtsi b/arch/riscv/boot/dts/spacemit/k3-com260.dtsi
index 37627963a649..3251ee8405de 100644
--- a/arch/riscv/boot/dts/spacemit/k3-com260.dtsi
+++ b/arch/riscv/boot/dts/spacemit/k3-com260.dtsi
@@ -220,3 +220,7 @@ &uart0 {
pinctrl-0 = <&uart0_0_cfg>;
status = "okay";
};
+
+&ufshc {
+ status = "okay";
+};
diff --git a/arch/riscv/boot/dts/spacemit/k3-pico-itx.dts b/arch/riscv/boot/dts/spacemit/k3-pico-itx.dts
index b084a35aa00e..6369602e81da 100644
--- a/arch/riscv/boot/dts/spacemit/k3-pico-itx.dts
+++ b/arch/riscv/boot/dts/spacemit/k3-pico-itx.dts
@@ -307,6 +307,10 @@ &uart0 {
status = "okay";
};
+&ufshc {
+ status = "okay";
+};
+
&usb2_host {
#address-cells = <1>;
#size-cells = <0>;
diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spacemit/k3.dtsi
index c3f2dce0969c..436c0e7e2838 100644
--- a/arch/riscv/boot/dts/spacemit/k3.dtsi
+++ b/arch/riscv/boot/dts/spacemit/k3.dtsi
@@ -513,6 +513,28 @@ usb2_phy: phy at c0a20000 {
status = "disabled";
};
+ ufshc: ufshc at c0e00000 {
+ compatible = "spacemit,k3-ufshc";
+ reg = <0x0 0xc0e00000 0x0 0x40000>;
+ clocks = <&syscon_apmu CLK_APMU_UFS_ACLK>,
+ <&syscon_apmu CLK_APMU_UFS_REFCLK>;
+ clock-names = "aclk", "ref_clk";
+ resets = <&syscon_apmu RESET_APMU_UFS_ACLK>;
+ interrupts = <135 IRQ_TYPE_LEVEL_HIGH>;
+ lanes-per-direction = <2>;
+ operating-points-v2 = <&ufs_opp_table>;
+ status = "disabled";
+
+ ufs_opp_table: opp-table {
+ compatible = "operating-points-v2";
+
+ opp-1 {
+ opp-hz = /bits/ 64 <491520000>,
+ /bits/ 64 <19200000>;
+ };
+ };
+ };
+
eth0: ethernet at cac80000 {
compatible = "spacemit,k3-dwmac", "snps,dwmac-5.40a";
reg = <0x0 0xcac80000 0x0 0x2000>;
--
2.55.0
More information about the linux-riscv
mailing list