* [PATCH v2 0/2] riscv: dts: spacemit: Add clocks to pinctrl and UART
@ 2025-04-24 7:48 Yixun Lan
2025-04-24 7:48 ` [PATCH v2 1/2] riscv: dts: spacemit: Acquire clocks for pinctrl Yixun Lan
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Yixun Lan @ 2025-04-24 7:48 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Alexandre Ghiti
Cc: Alex Elder, Haylen Chu, devicetree, linux-riscv, spacemit,
linux-kernel, Yixun Lan
Populate clock property for pinctrl and UART controller.
The pinctrl's clock dt-binding patch is still waiting to be merged[1].
The UART's dt-binding and driver code has already been accepted[2],
so we now are only sending the DT part patch.
These two patches are abased on SpacemiT SoC tree's for-next branch[3]
Link: https://lore.kernel.org/r/20250416-02-k1-pinctrl-clk-v2-0-2b5fcbd4183c@gentoo.org [1]
Link: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/log/?h=tty-next [2]
Link: https://github.com/spacemit-com/linux/tree/for-next [3]
Signed-off-by: Yixun Lan <dlan@gentoo.org>
---
Changes in v2:
- collect review tags
- order DT properties
- improve commit message
- Link to v1: https://lore.kernel.org/r/20250419-05-dts-clock-v1-0-1cce5d59aba2@gentoo.org
---
Yixun Lan (2):
riscv: dts: spacemit: Acquire clocks for pinctrl
riscv: dts: spacemit: Acquire clocks for UART
arch/riscv/boot/dts/spacemit/k1.dtsi | 39 +++++++++++++++++++++++++++---------
1 file changed, 30 insertions(+), 9 deletions(-)
---
base-commit: 279d51ad9f6dc0c667f6f141a669b2c921277d1a
change-id: 20250419-05-dts-clock-026bfca75e5b
Best regards,
--
Yixun Lan
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH v2 1/2] riscv: dts: spacemit: Acquire clocks for pinctrl
2025-04-24 7:48 [PATCH v2 0/2] riscv: dts: spacemit: Add clocks to pinctrl and UART Yixun Lan
@ 2025-04-24 7:48 ` Yixun Lan
2025-04-24 7:48 ` [PATCH v2 2/2] riscv: dts: spacemit: Acquire clocks for UART Yixun Lan
2025-04-25 23:35 ` [PATCH v2 0/2] riscv: dts: spacemit: Add clocks to pinctrl and UART Yixun Lan
2 siblings, 0 replies; 4+ messages in thread
From: Yixun Lan @ 2025-04-24 7:48 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Alexandre Ghiti
Cc: Alex Elder, Haylen Chu, devicetree, linux-riscv, spacemit,
linux-kernel, Yixun Lan
Pinctrl of K1 SoC need two clocks, so explicitly acquire them.
Reviewed-by: Alex Elder <elder@riscstar.com>
Signed-off-by: Yixun Lan <dlan@gentoo.org>
---
arch/riscv/boot/dts/spacemit/k1.dtsi | 3 +++
1 file changed, 3 insertions(+)
diff --git a/arch/riscv/boot/dts/spacemit/k1.dtsi b/arch/riscv/boot/dts/spacemit/k1.dtsi
index 584f0dbc60f5b0d078c7127cc4021ad6022cb182..153fd1160182b42fe1a2f7f042c9c1da90f63b0c 100644
--- a/arch/riscv/boot/dts/spacemit/k1.dtsi
+++ b/arch/riscv/boot/dts/spacemit/k1.dtsi
@@ -450,6 +450,9 @@ uart9: serial@d4017800 {
pinctrl: pinctrl@d401e000 {
compatible = "spacemit,k1-pinctrl";
reg = <0x0 0xd401e000 0x0 0x400>;
+ clocks = <&syscon_apbc CLK_AIB>,
+ <&syscon_apbc CLK_AIB_BUS>;
+ clock-names = "func", "bus";
};
syscon_mpmu: system-controller@d4050000 {
--
2.49.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH v2 2/2] riscv: dts: spacemit: Acquire clocks for UART
2025-04-24 7:48 [PATCH v2 0/2] riscv: dts: spacemit: Add clocks to pinctrl and UART Yixun Lan
2025-04-24 7:48 ` [PATCH v2 1/2] riscv: dts: spacemit: Acquire clocks for pinctrl Yixun Lan
@ 2025-04-24 7:48 ` Yixun Lan
2025-04-25 23:35 ` [PATCH v2 0/2] riscv: dts: spacemit: Add clocks to pinctrl and UART Yixun Lan
2 siblings, 0 replies; 4+ messages in thread
From: Yixun Lan @ 2025-04-24 7:48 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Alexandre Ghiti
Cc: Alex Elder, Haylen Chu, devicetree, linux-riscv, spacemit,
linux-kernel, Yixun Lan
The K1 SoC features two clocks for UART controller, Acquire them
explicitly in the driver. Also it is required to remove the
clock-frequency properties from the uart node, otherwise the new
clock properties are ignored by of_platform_serial_setup() in "8250_of.c".
Reviewed-by: Alex Elder <elder@riscstar.com>
Reviewed-by: Haylen Chu <heylenay@4d2.org>
Signed-off-by: Yixun Lan <dlan@gentoo.org>
---
arch/riscv/boot/dts/spacemit/k1.dtsi | 36 +++++++++++++++++++++++++++---------
1 file changed, 27 insertions(+), 9 deletions(-)
diff --git a/arch/riscv/boot/dts/spacemit/k1.dtsi b/arch/riscv/boot/dts/spacemit/k1.dtsi
index 153fd1160182b42fe1a2f7f042c9c1da90f63b0c..7793fd37841ab432c66629b95b94c195b379ecd9 100644
--- a/arch/riscv/boot/dts/spacemit/k1.dtsi
+++ b/arch/riscv/boot/dts/spacemit/k1.dtsi
@@ -360,8 +360,10 @@ syscon_apbc: system-control@d4015000 {
uart0: serial@d4017000 {
compatible = "spacemit,k1-uart", "intel,xscale-uart";
reg = <0x0 0xd4017000 0x0 0x100>;
+ clocks = <&syscon_apbc CLK_UART0>,
+ <&syscon_apbc CLK_UART0_BUS>;
+ clock-names = "core", "bus";
interrupts = <42>;
- clock-frequency = <14857000>;
reg-shift = <2>;
reg-io-width = <4>;
status = "disabled";
@@ -370,8 +372,10 @@ uart0: serial@d4017000 {
uart2: serial@d4017100 {
compatible = "spacemit,k1-uart", "intel,xscale-uart";
reg = <0x0 0xd4017100 0x0 0x100>;
+ clocks = <&syscon_apbc CLK_UART2>,
+ <&syscon_apbc CLK_UART2_BUS>;
+ clock-names = "core", "bus";
interrupts = <44>;
- clock-frequency = <14857000>;
reg-shift = <2>;
reg-io-width = <4>;
status = "disabled";
@@ -380,8 +384,10 @@ uart2: serial@d4017100 {
uart3: serial@d4017200 {
compatible = "spacemit,k1-uart", "intel,xscale-uart";
reg = <0x0 0xd4017200 0x0 0x100>;
+ clocks = <&syscon_apbc CLK_UART3>,
+ <&syscon_apbc CLK_UART3_BUS>;
+ clock-names = "core", "bus";
interrupts = <45>;
- clock-frequency = <14857000>;
reg-shift = <2>;
reg-io-width = <4>;
status = "disabled";
@@ -390,8 +396,10 @@ uart3: serial@d4017200 {
uart4: serial@d4017300 {
compatible = "spacemit,k1-uart", "intel,xscale-uart";
reg = <0x0 0xd4017300 0x0 0x100>;
+ clocks = <&syscon_apbc CLK_UART4>,
+ <&syscon_apbc CLK_UART4_BUS>;
+ clock-names = "core", "bus";
interrupts = <46>;
- clock-frequency = <14857000>;
reg-shift = <2>;
reg-io-width = <4>;
status = "disabled";
@@ -400,8 +408,10 @@ uart4: serial@d4017300 {
uart5: serial@d4017400 {
compatible = "spacemit,k1-uart", "intel,xscale-uart";
reg = <0x0 0xd4017400 0x0 0x100>;
+ clocks = <&syscon_apbc CLK_UART5>,
+ <&syscon_apbc CLK_UART5_BUS>;
+ clock-names = "core", "bus";
interrupts = <47>;
- clock-frequency = <14857000>;
reg-shift = <2>;
reg-io-width = <4>;
status = "disabled";
@@ -410,8 +420,10 @@ uart5: serial@d4017400 {
uart6: serial@d4017500 {
compatible = "spacemit,k1-uart", "intel,xscale-uart";
reg = <0x0 0xd4017500 0x0 0x100>;
+ clocks = <&syscon_apbc CLK_UART6>,
+ <&syscon_apbc CLK_UART6_BUS>;
+ clock-names = "core", "bus";
interrupts = <48>;
- clock-frequency = <14857000>;
reg-shift = <2>;
reg-io-width = <4>;
status = "disabled";
@@ -420,8 +432,10 @@ uart6: serial@d4017500 {
uart7: serial@d4017600 {
compatible = "spacemit,k1-uart", "intel,xscale-uart";
reg = <0x0 0xd4017600 0x0 0x100>;
+ clocks = <&syscon_apbc CLK_UART7>,
+ <&syscon_apbc CLK_UART7_BUS>;
+ clock-names = "core", "bus";
interrupts = <49>;
- clock-frequency = <14857000>;
reg-shift = <2>;
reg-io-width = <4>;
status = "disabled";
@@ -430,8 +444,10 @@ uart7: serial@d4017600 {
uart8: serial@d4017700 {
compatible = "spacemit,k1-uart", "intel,xscale-uart";
reg = <0x0 0xd4017700 0x0 0x100>;
+ clocks = <&syscon_apbc CLK_UART8>,
+ <&syscon_apbc CLK_UART8_BUS>;
+ clock-names = "core", "bus";
interrupts = <50>;
- clock-frequency = <14857000>;
reg-shift = <2>;
reg-io-width = <4>;
status = "disabled";
@@ -440,8 +456,10 @@ uart8: serial@d4017700 {
uart9: serial@d4017800 {
compatible = "spacemit,k1-uart", "intel,xscale-uart";
reg = <0x0 0xd4017800 0x0 0x100>;
+ clocks = <&syscon_apbc CLK_UART9>,
+ <&syscon_apbc CLK_UART9_BUS>;
+ clock-names = "core", "bus";
interrupts = <51>;
- clock-frequency = <14857000>;
reg-shift = <2>;
reg-io-width = <4>;
status = "disabled";
--
2.49.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v2 0/2] riscv: dts: spacemit: Add clocks to pinctrl and UART
2025-04-24 7:48 [PATCH v2 0/2] riscv: dts: spacemit: Add clocks to pinctrl and UART Yixun Lan
2025-04-24 7:48 ` [PATCH v2 1/2] riscv: dts: spacemit: Acquire clocks for pinctrl Yixun Lan
2025-04-24 7:48 ` [PATCH v2 2/2] riscv: dts: spacemit: Acquire clocks for UART Yixun Lan
@ 2025-04-25 23:35 ` Yixun Lan
2 siblings, 0 replies; 4+ messages in thread
From: Yixun Lan @ 2025-04-25 23:35 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Paul Walmsley,
Palmer Dabbelt, Albert Ou, Alexandre Ghiti, Yixun Lan
Cc: Alex Elder, Haylen Chu, devicetree, linux-riscv, spacemit,
linux-kernel
On Thu, 24 Apr 2025 15:48:07 +0800, Yixun Lan wrote:
> Populate clock property for pinctrl and UART controller.
>
> The pinctrl's clock dt-binding patch is still waiting to be merged[1].
>
> The UART's dt-binding and driver code has already been accepted[2],
> so we now are only sending the DT part patch.
>
> [...]
Applied, thanks!
[1/2] riscv: dts: spacemit: Acquire clocks for pinctrl
https://github.com/spacemit-com/linux/commit/1fa2b7dd8e3efb7b50a24d13f91dc04b25adc43d
[2/2] riscv: dts: spacemit: Acquire clocks for UART
https://github.com/spacemit-com/linux/commit/fe066af241681269d809ece2ad663f334a0d8120
Best regards,
--
Yixun Lan
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2025-04-25 23:36 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-24 7:48 [PATCH v2 0/2] riscv: dts: spacemit: Add clocks to pinctrl and UART Yixun Lan
2025-04-24 7:48 ` [PATCH v2 1/2] riscv: dts: spacemit: Acquire clocks for pinctrl Yixun Lan
2025-04-24 7:48 ` [PATCH v2 2/2] riscv: dts: spacemit: Acquire clocks for UART Yixun Lan
2025-04-25 23:35 ` [PATCH v2 0/2] riscv: dts: spacemit: Add clocks to pinctrl and UART Yixun Lan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).