From nobody Fri Apr 17 10:42:06 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BD0E236D9EB; Wed, 4 Mar 2026 07:37:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772609838; cv=none; b=TB+jWjL04fZidW8bKoMCRDl22UXARBDrrlOK+0XM7n3UM1QBKuWwlx4yOeUQdZTp/cX/AA+jk419RYxAWfmCtFmkPkFZZFvETfIwNmP8trrDO+NL6WGUVwCxSBf0nvQZixTnvw04RgKhxJNF7lFvjLiZ1Lw66qazrsmcddotcRU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772609838; c=relaxed/simple; bh=jO0M0guSNWEHLzTjxBxCbcuEOMBS1RGGO8p6u7k7qVg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=S8a5g3ZfspDckXfBesYmCY6e0KCNXTvj4QETUN8EkRmbfodRFBrOGoam0ymqSir4ottQkh2yi7pFr3PNrKWtUZCg/OG6FKeb7eL0YHn4YWmfpH6pHVotyduqVYpeROHivbFHcimAmp26DNzwklEeAw61etyrb+ZayYDrrOH/1Jw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ou5kmWfT; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ou5kmWfT" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 51F0AC2BC87; Wed, 4 Mar 2026 07:37:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772609838; bh=jO0M0guSNWEHLzTjxBxCbcuEOMBS1RGGO8p6u7k7qVg=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=ou5kmWfTVNhkQAGuRMx4jAzMHi1sHSIX+7046/pU9Yv2bkr5MtCI4qnCH7V9VEa7E VDnT+eQ/fzWaAXvoV/D5blg3JVNMM9tK+ywKGEpAToWU+VVAW/EHMWAP3mJyqHLGOl JNWRQiFFe3CTf4pzMRnf9AgsUyr93h+oxT6kaFyWyOH8nywTiJbmKOTzgmqCTanWMf h2vSF9gd21JBz3NRewbHNmKpKNocEiHcVW87KOajIzeV7HusTmnBS1dWHv3k/jmeKH v6yxrGg56TxGIY5Oo18y7CJ1k6WZkUlFXqtjFMPU08ti+QMk/z5gu4eHLZZGPn/3AD f9IxJkDNuRW2A== From: Yixun Lan Date: Wed, 04 Mar 2026 07:36:42 +0000 Subject: [PATCH 1/4] riscv: dts: spacemit: k3: add clock tree Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260304-01-dts-uart-full-v1-1-50a0aa53a245@kernel.org> References: <20260304-01-dts-uart-full-v1-0-50a0aa53a245@kernel.org> In-Reply-To: <20260304-01-dts-uart-full-v1-0-50a0aa53a245@kernel.org> To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexandre Ghiti Cc: devicetree@vger.kernel.org, linux-riscv@lists.infradead.org, spacemit@lists.linux.dev, linux-kernel@vger.kernel.org, Yixun Lan X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=3402; i=dlan@kernel.org; h=from:subject:message-id; bh=jO0M0guSNWEHLzTjxBxCbcuEOMBS1RGGO8p6u7k7qVg=; b=owEB6QIW/ZANAwAKATGq6kdZTbvtAcsmYgBpp+EaBnWKf5lfQFWDs7PyaOqPYpQUX9+orzVya wlBUL6K0XaJAq8EAAEKAJkWIQS1urjJwxtxFWcCI9wxqupHWU277QUCaafhGhsUgAAAAAAEAA5t YW51MiwyLjUrMS4xMSwyLDJfFIAAAAAALgAoaXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5 maWZ0aGhvcnNlbWFuLm5ldEI1QkFCOEM5QzMxQjcxMTU2NzAyMjNEQzMxQUFFQTQ3NTk0REJCRU QACgkQMarqR1lNu+1Ieg//ReeuC4zNyy8R8tfDFGVqOd6yom9iwCKlOXMU4KW/9RsBvveOp3D7M AzEVYRl4Uz+o2Ic5Zz5SxmLDxFFZvDFn8pm+66BpKhnUDhpvFCyGO7v8S4NKJwnzaOe3nGz+wWh 9NQfIbn+a/HKqSf3Ti4Jc8z/xc7agehnXRK36diTV6m1kFakW3FVnYdzIABNl53/Url+i08D1UN P7j5IVaKddPRhDBry1R06zt4pbyWjeIdctVf8w+UZ3z7ZjJzb2WIjebXjzKHkjZpyTpw96pejoC y7cPVdP8s+1ETPDgOGIqwUiarndot8z/ko/d44PiPn60Be8AYOWgSyQlEgZpqG+mICyPaGvFsOR bHJ7cSkExV4cR/VlSwacGVNt0qye9EOoI03nkWNEKM+m0BOh/fh+wIJ2ld9Bu0l/USPcuIR2gJw cN6o9BmUewZ7QJLaOB8eKvEAIVJULX+P95eQoToqdpnFAZzkYnsJMXriUYpoWyl71/5tLe0NYtG 8dDhvfG+YQPrgDezq5jYJ60L633w4PMwCW01eg6QetaKOtAHl8nXrli8ujPQxROmuAVoLvU1hH2 YsO9GdDBMDMnV4R4k/j7Uz7e4V+4C3cUjS4KEl1kKnOLoh/qjNWlx4uAULckHL6TBKNHxoj1Qqk QsFFCNy7VI1/egT+7FVGw6onExe40g= X-Developer-Key: i=dlan@kernel.org; a=openpgp; fpr=50B03A1A5CBCD33576EF8CD7920C0DBCAABEFD55 Add clock support to SpacemiT K3 SoC, the clock tree consist of several blocks which are APBC, APMU, DCIU, MPUM. Signed-off-by: Yixun Lan --- arch/riscv/boot/dts/spacemit/k3.dtsi | 75 ++++++++++++++++++++++++++++++++= ++++ 1 file changed, 75 insertions(+) diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spa= cemit/k3.dtsi index b69cf81b5d55..e3d7f3102fd5 100644 --- a/arch/riscv/boot/dts/spacemit/k3.dtsi +++ b/arch/riscv/boot/dts/spacemit/k3.dtsi @@ -4,6 +4,7 @@ * Copyright (c) 2026 Guodong Xu */ =20 +#include #include =20 /dts-v1/; @@ -398,6 +399,36 @@ core3 { }; }; =20 + clocks { + vctcxo_1m: clock-1m { + compatible =3D "fixed-clock"; + clock-frequency =3D <1000000>; + clock-output-names =3D "vctcxo_1m"; + #clock-cells =3D <0>; + }; + + vctcxo_24m: clock-24m { + compatible =3D "fixed-clock"; + clock-frequency =3D <24000000>; + clock-output-names =3D "vctcxo_24m"; + #clock-cells =3D <0>; + }; + + vctcxo_3m: clock-3m { + compatible =3D "fixed-clock"; + clock-frequency =3D <3000000>; + clock-output-names =3D "vctcxo_3m"; + #clock-cells =3D <0>; + }; + + osc_32k: clock-32k { + compatible =3D "fixed-clock"; + clock-frequency =3D <32000>; + clock-output-names =3D "osc_32k"; + #clock-cells =3D <0>; + }; + }; + soc: soc { compatible =3D "simple-bus"; interrupt-parent =3D <&saplic>; @@ -406,6 +437,15 @@ soc: soc { dma-noncoherent; ranges; =20 + syscon_apbc: system-controller@d4015000 { + compatible =3D "spacemit,k3-syscon-apbc"; + reg =3D <0x0 0xd4015000 0x0 0x1000>; + clocks =3D <&osc_32k>, <&vctcxo_1m>, <&vctcxo_3m>, <&vctcxo_24m>; + clock-names =3D "osc", "vctcxo_1m", "vctcxo_3m", "vctcxo_24m"; + #clock-cells =3D <1>; + #reset-cells =3D <1>; + }; + uart0: serial@d4017000 { compatible =3D "spacemit,k3-uart", "intel,xscale-uart"; reg =3D <0x0 0xd4017000 0x0 0x100>; @@ -506,6 +546,41 @@ uart10: serial@d401f000 { status =3D "disabled"; }; =20 + syscon_mpmu: system-controller@d4050000 { + compatible =3D "spacemit,k3-syscon-mpmu"; + reg =3D <0x0 0xd4050000 0x0 0x10000>; + clocks =3D <&osc_32k>, <&vctcxo_1m>, <&vctcxo_3m>, <&vctcxo_24m>; + clock-names =3D "osc", "vctcxo_1m", "vctcxo_3m", "vctcxo_24m"; + #clock-cells =3D <1>; + #power-domain-cells =3D <1>; + #reset-cells =3D <1>; + }; + + pll: clock-controller@d4090000 { + compatible =3D "spacemit,k3-pll"; + reg =3D <0x0 0xd4090000 0x0 0x10000>; + clocks =3D <&vctcxo_24m>; + spacemit,mpmu =3D <&syscon_mpmu>; + #clock-cells =3D <1>; + }; + + syscon_apmu: system-controller@d4282800 { + compatible =3D "spacemit,k3-syscon-apmu"; + reg =3D <0x0 0xd4282800 0x0 0x400>; + clocks =3D <&osc_32k>, <&vctcxo_1m>, <&vctcxo_3m>, <&vctcxo_24m>; + clock-names =3D "osc", "vctcxo_1m", "vctcxo_3m", "vctcxo_24m"; + #clock-cells =3D <1>; + #power-domain-cells =3D <1>; + #reset-cells =3D <1>; + }; + + syscon_dciu: system-controller@d8440000 { + compatible =3D "spacemit,k3-syscon-dciu"; + reg =3D <0x0 0xd8440000 0x0 0xc000>; + #clock-cells =3D <1>; + #reset-cells =3D <1>; + }; + simsic: interrupt-controller@e0400000 { compatible =3D "spacemit,k3-imsics", "riscv,imsics"; reg =3D <0x0 0xe0400000 0x0 0x200000>; --=20 2.53.0 From nobody Fri Apr 17 10:42:06 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 79FCD30ACF0; Wed, 4 Mar 2026 07:37:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772609842; cv=none; b=OemDHEqu7rq1tGiBpEC58w2ns5enEU/ecXK39fpHlC2iPzHpxww85FwZV/KYumgOVJ7DHA0E3QusCL+HgWZyt7xtaeLadtfuH5gCLayjMKinQw5Ns7YLa67EhP5JkyZ0WMx017rBnnJVO+j3Dq01EPIYapizIDnuFsZp8dcLTxE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772609842; c=relaxed/simple; bh=azbr6K57fTqAAumzaPXw5TukZtFjPtItwS5yh3shQsI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Rwp+grpATL3PXpK4R31fSpt6M29TUCOxhq4yo7wc09g6WGrFMvX6XoNmyZvC4eW0DYYCgsW5QnjhjToJ2pVhxZB7qYMaQ76oNk+cXtvrOUXLGtCumyURcfKy+a5GhYxAeF//LuOwXBQZgAl6HpyIpKeG8DyupeqPGiGnFauGDiY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=X1dDJcjj; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="X1dDJcjj" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3CC1FC2BCAF; Wed, 4 Mar 2026 07:37:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772609842; bh=azbr6K57fTqAAumzaPXw5TukZtFjPtItwS5yh3shQsI=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=X1dDJcjj6uuRg3UYUVo486JNbOEhGjz9ohQeZxawZoMXa1fvw0iRwlj828Fw801tz 8QCFsoZ0OGQLY2vhWKa+zaTK1pv/pzAS+fYAgGkB9Efdeaj+C+Elwdl+89nSjzZ0Wj Rck6m+A7vGGpKcrmV/TPNkikgjQLKa5Tc17LdMeSRVvrOsrKKGdh9NpdDriVSwPcfW 1RpBWhzWGsBdguB+m58L1ONCS/4sa2LAWYcgce6b95jf0FyXg/3GXApbZA0hikh61h /IxeCJ1LQcOpyC7Zh6VdHs4aaW3apLfHQExEYUigl/uDFaqTz+3QDmv/H3/51ETK3b qw+sYkD/+6xoQ== From: Yixun Lan Date: Wed, 04 Mar 2026 07:36:43 +0000 Subject: [PATCH 2/4] riscv: dts: spacemit: k3: add pinctrl support Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260304-01-dts-uart-full-v1-2-50a0aa53a245@kernel.org> References: <20260304-01-dts-uart-full-v1-0-50a0aa53a245@kernel.org> In-Reply-To: <20260304-01-dts-uart-full-v1-0-50a0aa53a245@kernel.org> To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexandre Ghiti Cc: devicetree@vger.kernel.org, linux-riscv@lists.infradead.org, spacemit@lists.linux.dev, linux-kernel@vger.kernel.org, Yixun Lan X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=934; i=dlan@kernel.org; h=from:subject:message-id; bh=azbr6K57fTqAAumzaPXw5TukZtFjPtItwS5yh3shQsI=; b=owEB6QIW/ZANAwAKATGq6kdZTbvtAcsmYgBpp+Ed0j7KxYg5TRh3MeN8b6VSOKQTUJkEfgM+b PotX3Co5jiJAq8EAAEKAJkWIQS1urjJwxtxFWcCI9wxqupHWU277QUCaafhHRsUgAAAAAAEAA5t YW51MiwyLjUrMS4xMSwyLDJfFIAAAAAALgAoaXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5 maWZ0aGhvcnNlbWFuLm5ldEI1QkFCOEM5QzMxQjcxMTU2NzAyMjNEQzMxQUFFQTQ3NTk0REJCRU QACgkQMarqR1lNu+1blg/9F7olxaBFWs+VLjqqZXYjbxlga5Jb3wivuArss8iw20X3VsbWGokfi iRs8gXQs7627RQZIj6mpT8v1YVsd0EzpVWY4lsgMNoZKSBgGyPLrv/oso4Qrki+m0d8RvoXBGJ5 YUmLWrvEDgJekEZfkii482jL3Zl1ZYQzvq65I5h44Phy75hp6Y56XndWWhHd0jHH4SYynP2ntOv QDCd4JQf3DVrfpZdNQ99UjQO5ITlfxgaA0sA9liTYJ0yGF0nUyodSF/8fFPSEIFf3Z7DhNx3QnK cqK2YDq/U4l8c5uRiuYdY/X75/CEIult2qkAwPHbX1aZaoDbpUjQVVPtiYKk5+iHSrL+DBe7Ajo ++ZYax7RtdCoY0v6BYliGQxfs8TLHsGLYY7cfOpj5Qsb2BbDeDT3zPQ48bccPppBZKvTqOHWWB6 M8CjWe1KoMZXrIEEYiFzifS81o2Qlxlz7YdrChv1S/OfQFS6tBmdUw8xen9vYqUK1ZS3sx2Nn1c 3CtDMJI6ZI3fQprDn8XwJhK1Nr//zVlXK+3QnBN4eHQUVKINjbq9XRqGRHc665iWxUK7BdIaAmi Sh4E3DLREF6Q6pIyiR8SQyxu0tKcXG1FgkC+jxLOuGgRoZM/8bByNwV5dYRVEX2NVfBieihoLTJ MyXQGsNonITWTQMBQZbUPgairTkzh8= X-Developer-Key: i=dlan@kernel.org; a=openpgp; fpr=50B03A1A5CBCD33576EF8CD7920C0DBCAABEFD55 Populate pinctrl node in Device Tree for SpacemiT K3 SoC, So devices can request pinctrl resource properly. Signed-off-by: Yixun Lan --- arch/riscv/boot/dts/spacemit/k3.dtsi | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spa= cemit/k3.dtsi index e3d7f3102fd5..6449ab056293 100644 --- a/arch/riscv/boot/dts/spacemit/k3.dtsi +++ b/arch/riscv/boot/dts/spacemit/k3.dtsi @@ -536,6 +536,14 @@ uart9: serial@d4017800 { status =3D "disabled"; }; =20 + pinctrl: pinctrl@d401e000 { + compatible =3D "spacemit,k3-pinctrl"; + reg =3D <0x0 0xd401e000 0x0 0x1000>; + clocks =3D <&syscon_apbc CLK_APBC_AIB>, + <&syscon_apbc CLK_APBC_AIB_BUS>; + clock-names =3D "func", "bus"; + }; + uart10: serial@d401f000 { compatible =3D "spacemit,k3-uart", "intel,xscale-uart"; reg =3D <0x0 0xd401f000 0x0 0x100>; --=20 2.53.0 From nobody Fri Apr 17 10:42:06 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 742A335CB7A; Wed, 4 Mar 2026 07:37:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772609845; cv=none; b=IaPFjHGzN9rOeea8MXaGM5NKsPwP2rEReHyrf7+KG+72rmyeUS2vzCgOWsvurmZQ/xDSeNvFlftQsUmDyb/wUzMpBlnVcivjnnvX9XWt3kUFGtNjCelqBQ3H6J4aKqbDMzaezJCkQW7brxHsrrIbhMFLlOydNQ9Jz9hy9tVZUlU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772609845; c=relaxed/simple; bh=M6/tIaGpQbsqPQjD7hrOf0XWL0qa3IzSrofgUGfNqTQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Lgk7iolUXTHh3yA61Q23RFMreB0/T48N6EAibahGRodvjjeWQAlm8L8vwnWVnCbnTX2ACImSNveO6oaCiXf0lSmsjEyNyLFaREjbyVVzek8D0vKF8EehfSODbR7XBS0nMniTzUA2VBQMdkrkWFTb19+NVfLCHkchHyUaARBs2vo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=L+7S9+JH; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="L+7S9+JH" Received: by smtp.kernel.org (Postfix) with ESMTPSA id BF584C19425; Wed, 4 Mar 2026 07:37:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772609845; bh=M6/tIaGpQbsqPQjD7hrOf0XWL0qa3IzSrofgUGfNqTQ=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=L+7S9+JHPelZNg5orKTyfdnixD5qI7mHAqzuq1JBsW40uw5XnUm/cHwMpQRF9w/Z1 9J6YUkxpgFosj0+jCgLZNgNRqq6UWfB9W4AOFZqotvp0KyuOD0QmimJ4gnHhwvQ533 4j1lKRVbFBf9qmvQOnMRsFqEp3TRR2yvukcyI8xE235XrZrPh4A5E0HZfrWRiYAlrX fY40/8gW7Hh+wGt5CZx8pSBOa2jS+T1Choad5lNsm+7dSwcRHfOqcvGvB0wTmaP2i6 vIY/zp5iwFGXCsy+oS5Bt3wPJ5kA4MVurEsEgaAGe2bjJrbHKLJGdTOGc5WRVKc/vd W/NZ5frLDoY9Q== From: Yixun Lan Date: Wed, 04 Mar 2026 07:36:44 +0000 Subject: [PATCH 3/4] riscv: dts: spacemit: k3: add GPIO support Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260304-01-dts-uart-full-v1-3-50a0aa53a245@kernel.org> References: <20260304-01-dts-uart-full-v1-0-50a0aa53a245@kernel.org> In-Reply-To: <20260304-01-dts-uart-full-v1-0-50a0aa53a245@kernel.org> To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexandre Ghiti Cc: devicetree@vger.kernel.org, linux-riscv@lists.infradead.org, spacemit@lists.linux.dev, linux-kernel@vger.kernel.org, Yixun Lan X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=1227; i=dlan@kernel.org; h=from:subject:message-id; bh=M6/tIaGpQbsqPQjD7hrOf0XWL0qa3IzSrofgUGfNqTQ=; b=owEB6QIW/ZANAwAKATGq6kdZTbvtAcsmYgBpp+EhYX8LiWaQjchd79X49uqR73nGt7b08kutr UHEBXjIyxeJAq8EAAEKAJkWIQS1urjJwxtxFWcCI9wxqupHWU277QUCaafhIRsUgAAAAAAEAA5t YW51MiwyLjUrMS4xMSwyLDJfFIAAAAAALgAoaXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5 maWZ0aGhvcnNlbWFuLm5ldEI1QkFCOEM5QzMxQjcxMTU2NzAyMjNEQzMxQUFFQTQ3NTk0REJCRU QACgkQMarqR1lNu+2PAA/+OeiS1kDDFTlS8+1p8iXp7xNY28e8+Et0pJoeXHfGszyuy0eVjlW6x I/HIZNBiyapBuGOxU8HmtKgewnAYQiCAvhGTGAhKbtVxBSmE+65PctZ44zR2lNTGD7St3a3izQJ G+j/3YIG3zh7PLh1Q/HChWR9r2BWe78BiTrh3LZQwbBXUEXYypkkFqlUveajOtAwTvUwRq6eU/c g96+Z7PlI4X9Tiacqi1Tk1KUXrUKBwie2sw97MS01Y8ONU4XC8GuFyRi40dl5TnyvxVPZtN32ag YaCcQypKL7R0ORRJSVphSdnZvDDDo843TOCmuPFVCoppI0UP0RVN2yQbsiUi9jsjddq5aluMij0 BmX8sEvlN/G6JjnuEF8WZAJ48VQlXXUE3tgNCbujDHNEmg1qhJtzec6wHpblcJOPvJFTWG1OJBS JWFnR0skuQP3ZCa2xihpz5nbyD+IsdJmQEOulraAcOw4nbmKXGxh4S7JfR6sbHMH8pQz+YYcjO5 ezEhyPZpXfOP9OROQ/Sb9yNTspCi6i/JyNTX6hIXITnFKbE59gRX0iq/VCW7Y9Dohck7p/Dstgq Q9SO+uN1h7U7Aoh0NG0IG3frCuuWPxSrjCX3QgDS5XsxUB5d3jSLve/cuNY73sbK4ThU7Ob6G2A 0y6KPrcPdbhbc/Yn6sCeRYzAskLSeg= X-Developer-Key: i=dlan@kernel.org; a=openpgp; fpr=50B03A1A5CBCD33576EF8CD7920C0DBCAABEFD55 Add GPIO node in the Device Tree, so devices are able to request GPIO resource properly. Signed-off-by: Yixun Lan --- arch/riscv/boot/dts/spacemit/k3.dtsi | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spa= cemit/k3.dtsi index 6449ab056293..3683a1a65362 100644 --- a/arch/riscv/boot/dts/spacemit/k3.dtsi +++ b/arch/riscv/boot/dts/spacemit/k3.dtsi @@ -536,6 +536,24 @@ uart9: serial@d4017800 { status =3D "disabled"; }; =20 + gpio: gpio@d4019000 { + compatible =3D "spacemit,k3-gpio"; + reg =3D <0x0 0xd4019000 0x0 0x100>; + clocks =3D <&syscon_apbc CLK_APBC_GPIO>, + <&syscon_apbc CLK_APBC_GPIO_BUS>; + clock-names =3D "core", "bus"; + gpio-controller; + #gpio-cells =3D <3>; + interrupts =3D <58 IRQ_TYPE_LEVEL_HIGH>; + interrupt-parent =3D <&saplic>; + interrupt-controller; + #interrupt-cells =3D <3>; + gpio-ranges =3D <&pinctrl 0 0 0 32>, + <&pinctrl 1 0 32 32>, + <&pinctrl 2 0 64 32>, + <&pinctrl 3 0 96 32>; + }; + pinctrl: pinctrl@d401e000 { compatible =3D "spacemit,k3-pinctrl"; reg =3D <0x0 0xd401e000 0x0 0x1000>; --=20 2.53.0 From nobody Fri Apr 17 10:42:06 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 615D335CB7A; Wed, 4 Mar 2026 07:37:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772609848; cv=none; b=oc/2gUEfH8h+fZmGrOlcM40c0tU8VI9yBXRTcJOIzMBcbHOAET9ZUraASkbQMRL1jbarcTvYt7zXcL6IHCthD8FaM/DRBhZXXia4SjlXWg0ebl0HbcT0f4ZqjTYRk4/YpYwJgT2VCpsMZJ7KmTRLtiTG5xp2dmd2EYyXOhSJ6Bs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772609848; c=relaxed/simple; bh=PU9E6pvdIlTXi8fnb6POonhnG/LZrpSiO7afGiZDxCg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=dSH2W0XWUJlXCttNegBVmwg1u9nOpQmZ9TedduQmecl4AtzvDcMiOp2d0TFYVPSmlkQSpdQpo1/FHZzG14gaTn+fYWJD4Z0leCTqc9lPnOIKT5x9Q4p3tHIvkCB6dwpO3rRMMeENL5L/8twlbIAkxUgsj/8kgdrQEM8XoxQF+Cc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=qCVsVDfx; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="qCVsVDfx" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 91910C19423; Wed, 4 Mar 2026 07:37:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772609848; bh=PU9E6pvdIlTXi8fnb6POonhnG/LZrpSiO7afGiZDxCg=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=qCVsVDfxVJvkOi1kDJpbjU+fQLmyFgE3WC6VrTCFKTNAte6PfTthuNIutHSdLEdl5 qlJiVGQG8hopLbM6BolJWGeeQU5Q1CZyOKL3Oz3sKpQjqiSRDCO3JYbYCHL49ePfml RLmpN6dPyRTsjLcz7WrDJbyea2MSvJhf+JsnTBIttfQ4LKwR/0rdEBK4RNXXHNUgX8 Yi9ApvexIkEGifijIb2SuGx7j4P079OX5kyt0GEBoso/o7kNvuc3ME/S+7PYjQEP0V C/NBlDklTzESFQrx7g903Aay5F6tlcZRvji+nirgUD+oJAAwyVTLuOFuzu1v1ORJYj YwhQnMq12YjvA== From: Yixun Lan Date: Wed, 04 Mar 2026 07:36:45 +0000 Subject: [PATCH 4/4] riscv: dts: spacemit: k3: add full resource to UART Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260304-01-dts-uart-full-v1-4-50a0aa53a245@kernel.org> References: <20260304-01-dts-uart-full-v1-0-50a0aa53a245@kernel.org> In-Reply-To: <20260304-01-dts-uart-full-v1-0-50a0aa53a245@kernel.org> To: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexandre Ghiti Cc: devicetree@vger.kernel.org, linux-riscv@lists.infradead.org, spacemit@lists.linux.dev, linux-kernel@vger.kernel.org, Yixun Lan X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=6388; i=dlan@kernel.org; h=from:subject:message-id; bh=PU9E6pvdIlTXi8fnb6POonhnG/LZrpSiO7afGiZDxCg=; b=owEB6QIW/ZANAwAKATGq6kdZTbvtAcsmYgBpp+Ek3f7qT9eVOyes3n8iQaYZedxnfHU0ksOVO NpKTrjye7yJAq8EAAEKAJkWIQS1urjJwxtxFWcCI9wxqupHWU277QUCaafhJBsUgAAAAAAEAA5t YW51MiwyLjUrMS4xMSwyLDJfFIAAAAAALgAoaXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5 maWZ0aGhvcnNlbWFuLm5ldEI1QkFCOEM5QzMxQjcxMTU2NzAyMjNEQzMxQUFFQTQ3NTk0REJCRU QACgkQMarqR1lNu+14cA//TefcIjF+yE61NYbff1LjwKw6K138+XeItfZAjwPC2MG8gme1Yiu4g XW0IvPPA9UljzSCWOj05ZUxxk1yfGPRHDtqPoRvObqRPJlfjZbEZpIFIwXzaTwUBU8+VlU3P1ZJ sgYjUn2id1MkYOJTLxm20rUXGDzIoiIovEbkJFcobobvdvRVUjEj4Sttp5b252h1T4+fofK/R5N q+HLJtb00B7uQhL5dVkhzzR1b8fuKXbqe2zDsI9V7WQrEvt3ZewR0gwNNGhOnwVNcOQA1b1rHMQ SXfGHXw/T+z8IBkKi/xo0low45/iBgUhQ90LsS0HBmb8tbpt0W0FRej7t6dNK8ngFiOhMnv9qN0 pzeLyugDkR7GOU0MYYYM+sI/ENenkxcEkyYE3tgsN0/+urLDl2qjs/IPz74SOhZz9xQudh/a+s/ irsAKqp7Nl3QHtMsRmS6hVxjFAjdxKSS1/RQ8qJSrYiv00pwxtNP7JiQ2j4hiZA8BkON+I8SDsI rytLtuqxskx4my7VnApOuR31+BIihhf17nDu1uMB8hdZo7ZQ4D+4k4rLabXvD7aDh2obLlFSaLg KdW/4gfHcY/c3LoIkLYc3xQ83So1ZCMHVNLOBU1Ayp0Hr23S17BeeQY3d4KwgQU9QDaJi2KRxlt PtLJq999NnXWx0l+5s59B2TlcZE77w= X-Developer-Key: i=dlan@kernel.org; a=openpgp; fpr=50B03A1A5CBCD33576EF8CD7920C0DBCAABEFD55 Previously the UART rely on external bootloader to initialize clock, pinctrl and reset, to solve this, explicitly adding those resource in Device Tree, so UART driver will handle them properly. Signed-off-by: Yixun Lan --- arch/riscv/boot/dts/spacemit/k3-pico-itx.dts | 3 ++ arch/riscv/boot/dts/spacemit/k3-pinctrl.dtsi | 24 +++++++++++++ arch/riscv/boot/dts/spacemit/k3.dtsi | 51 ++++++++++++++++++++++--= ---- 3 files changed, 68 insertions(+), 10 deletions(-) diff --git a/arch/riscv/boot/dts/spacemit/k3-pico-itx.dts b/arch/riscv/boot= /dts/spacemit/k3-pico-itx.dts index b691304d4b74..b098dbd0e7a1 100644 --- a/arch/riscv/boot/dts/spacemit/k3-pico-itx.dts +++ b/arch/riscv/boot/dts/spacemit/k3-pico-itx.dts @@ -5,6 +5,7 @@ */ =20 #include "k3.dtsi" +#include "k3-pinctrl.dtsi" =20 / { model =3D "SpacemiT K3 Pico-ITX"; @@ -25,5 +26,7 @@ memory@100000000 { }; =20 &uart0 { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&uart0_0_cfg>; status =3D "okay"; }; diff --git a/arch/riscv/boot/dts/spacemit/k3-pinctrl.dtsi b/arch/riscv/boot= /dts/spacemit/k3-pinctrl.dtsi new file mode 100644 index 000000000000..efb0f1572188 --- /dev/null +++ b/arch/riscv/boot/dts/spacemit/k3-pinctrl.dtsi @@ -0,0 +1,24 @@ +// SPDX-License-Identifier: GPL-2.0 OR MIT +/* + * Copyright (c) 2026 Yixun Lan + */ + +#include + +#define K3_PADCONF(pin, func) (((pin) << 16) | (func)) + +/* Map GPIO pin to each bank's */ +#define K3_GPIO(x) (x / 32) (x % 32) + +&pinctrl { + /omit-if-no-ref/ + uart0_0_cfg: uart0-0-cfg { + uart0-0-pins { + pinmux =3D , /* uart0 tx */ + ; /* uart0 rx */ + + bias-pull-up =3D <0>; + drive-strength =3D <25>; + }; + }; +}; diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spa= cemit/k3.dtsi index 3683a1a65362..a3a8ceddabec 100644 --- a/arch/riscv/boot/dts/spacemit/k3.dtsi +++ b/arch/riscv/boot/dts/spacemit/k3.dtsi @@ -5,6 +5,7 @@ */ =20 #include +#include #include =20 /dts-v1/; @@ -451,7 +452,10 @@ uart0: serial@d4017000 { reg =3D <0x0 0xd4017000 0x0 0x100>; reg-shift =3D <2>; reg-io-width =3D <4>; - clock-frequency =3D <14700000>; + clocks =3D <&syscon_apbc CLK_APBC_UART0>, + <&syscon_apbc CLK_APBC_UART0_BUS>; + clock-names =3D "core", "bus"; + resets =3D <&syscon_apbc RESET_APBC_UART0>; interrupts =3D <42 IRQ_TYPE_LEVEL_HIGH>; status =3D "disabled"; }; @@ -461,7 +465,10 @@ uart2: serial@d4017100 { reg =3D <0x0 0xd4017100 0x0 0x100>; reg-shift =3D <2>; reg-io-width =3D <4>; - clock-frequency =3D <14700000>; + clocks =3D <&syscon_apbc CLK_APBC_UART2>, + <&syscon_apbc CLK_APBC_UART2_BUS>; + clock-names =3D "core", "bus"; + resets =3D <&syscon_apbc RESET_APBC_UART2>; interrupts =3D <44 IRQ_TYPE_LEVEL_HIGH>; status =3D "disabled"; }; @@ -471,7 +478,10 @@ uart3: serial@d4017200 { reg =3D <0x0 0xd4017200 0x0 0x100>; reg-shift =3D <2>; reg-io-width =3D <4>; - clock-frequency =3D <14700000>; + clocks =3D <&syscon_apbc CLK_APBC_UART3>, + <&syscon_apbc CLK_APBC_UART3_BUS>; + clock-names =3D "core", "bus"; + resets =3D <&syscon_apbc RESET_APBC_UART3>; interrupts =3D <45 IRQ_TYPE_LEVEL_HIGH>; status =3D "disabled"; }; @@ -481,7 +491,10 @@ uart4: serial@d4017300 { reg =3D <0x0 0xd4017300 0x0 0x100>; reg-shift =3D <2>; reg-io-width =3D <4>; - clock-frequency =3D <14700000>; + clocks =3D <&syscon_apbc CLK_APBC_UART4>, + <&syscon_apbc CLK_APBC_UART4_BUS>; + clock-names =3D "core", "bus"; + resets =3D <&syscon_apbc RESET_APBC_UART4>; interrupts =3D <46 IRQ_TYPE_LEVEL_HIGH>; status =3D "disabled"; }; @@ -491,7 +504,10 @@ uart5: serial@d4017400 { reg =3D <0x0 0xd4017400 0x0 0x100>; reg-shift =3D <2>; reg-io-width =3D <4>; - clock-frequency =3D <14700000>; + clocks =3D <&syscon_apbc CLK_APBC_UART5>, + <&syscon_apbc CLK_APBC_UART5_BUS>; + clock-names =3D "core", "bus"; + resets =3D <&syscon_apbc RESET_APBC_UART5>; interrupts =3D <47 IRQ_TYPE_LEVEL_HIGH>; status =3D "disabled"; }; @@ -501,7 +517,10 @@ uart6: serial@d4017500 { reg =3D <0x0 0xd4017500 0x0 0x100>; reg-shift =3D <2>; reg-io-width =3D <4>; - clock-frequency =3D <14700000>; + clocks =3D <&syscon_apbc CLK_APBC_UART6>, + <&syscon_apbc CLK_APBC_UART6_BUS>; + clock-names =3D "core", "bus"; + resets =3D <&syscon_apbc RESET_APBC_UART6>; interrupts =3D <48 IRQ_TYPE_LEVEL_HIGH>; status =3D "disabled"; }; @@ -511,7 +530,10 @@ uart7: serial@d4017600 { reg =3D <0x0 0xd4017600 0x0 0x100>; reg-shift =3D <2>; reg-io-width =3D <4>; - clock-frequency =3D <14700000>; + clocks =3D <&syscon_apbc CLK_APBC_UART7>, + <&syscon_apbc CLK_APBC_UART7_BUS>; + clock-names =3D "core", "bus"; + resets =3D <&syscon_apbc RESET_APBC_UART7>; interrupts =3D <49 IRQ_TYPE_LEVEL_HIGH>; status =3D "disabled"; }; @@ -521,7 +543,10 @@ uart8: serial@d4017700 { reg =3D <0x0 0xd4017700 0x0 0x100>; reg-shift =3D <2>; reg-io-width =3D <4>; - clock-frequency =3D <14700000>; + clocks =3D <&syscon_apbc CLK_APBC_UART8>, + <&syscon_apbc CLK_APBC_UART8_BUS>; + clock-names =3D "core", "bus"; + resets =3D <&syscon_apbc RESET_APBC_UART8>; interrupts =3D <50 IRQ_TYPE_LEVEL_HIGH>; status =3D "disabled"; }; @@ -531,7 +556,10 @@ uart9: serial@d4017800 { reg =3D <0x0 0xd4017800 0x0 0x100>; reg-shift =3D <2>; reg-io-width =3D <4>; - clock-frequency =3D <14700000>; + clocks =3D <&syscon_apbc CLK_APBC_UART9>, + <&syscon_apbc CLK_APBC_UART9_BUS>; + clock-names =3D "core", "bus"; + resets =3D <&syscon_apbc RESET_APBC_UART9>; interrupts =3D <51 IRQ_TYPE_LEVEL_HIGH>; status =3D "disabled"; }; @@ -567,7 +595,10 @@ uart10: serial@d401f000 { reg =3D <0x0 0xd401f000 0x0 0x100>; reg-shift =3D <2>; reg-io-width =3D <4>; - clock-frequency =3D <14700000>; + clocks =3D <&syscon_apbc CLK_APBC_UART10>, + <&syscon_apbc CLK_APBC_UART10_BUS>; + clock-names =3D "core", "bus"; + resets =3D <&syscon_apbc RESET_APBC_UART10>; interrupts =3D <281 IRQ_TYPE_LEVEL_HIGH>; status =3D "disabled"; }; --=20 2.53.0