Thread (11 messages) 11 messages, 2 authors, 2021-06-25

Re: [PATCH v3 4/4] MIPS: CI20: Add second percpu timer for SMP.

From: 周琰杰 <hidden>
Date: 2021-06-25 12:14:13
Also in: linux-clk, linux-mips, lkml

于 Fri, 25 Jun 2021 12:31:17 +0100
Paul Cercueil [off-list ref] 写道:
Hi Zhou,

Le jeu., juin 24 2021 at 23:06:29 +0800, 周琰杰 (Zhou Yanjie) 
[off-list ref] a écrit :
quoted
1.Add a new TCU channel as the percpu timer of core1, this is to
  prepare for the subsequent SMP support. The newly added channel
  will not adversely affect the current single-core state.
2.Adjust the position of TCU node to make it consistent with the
  order in jz4780.dtsi file.  
That's a bit superfluous, the order matters when adding new nodes,
but once they are added, moving them around only cause annoyance.
quoted
Signed-off-by: 周琰杰 (Zhou Yanjie) <redacted>
---

Notes:
    v2:
    New patch.

    v2->v3:
    No change.

 arch/mips/boot/dts/ingenic/ci20.dts | 21 +++++++++++----------
 1 file changed, 11 insertions(+), 10 deletions(-)
diff --git a/arch/mips/boot/dts/ingenic/ci20.dts 
b/arch/mips/boot/dts/ingenic/ci20.dts
index 8877c62..70005cc 100644
--- a/arch/mips/boot/dts/ingenic/ci20.dts
+++ b/arch/mips/boot/dts/ingenic/ci20.dts
@@ -118,6 +118,17 @@
 	assigned-clock-rates = <48000000>;
 };

+&tcu {
+	/*
+	 * 750 kHz for the system timers and 3 MHz for the
clocksources,
+	 * use channel #0 and #1 for the per cpu system timers,
and use
+	 * channel #2 for the clocksource.
+	 */
+	assigned-clocks = <&tcu TCU_CLK_TIMER0>, <&tcu
TCU_CLK_TIMER1>,
+					  <&tcu TCU_CLK_TIMER2>,
<&tcu TCU_CLK_OST>;
+	assigned-clock-rates = <750000>, <750000>, <3000000>,
<3000000>;  
Ideally you'd set TIMER1 to 3 MHz and TIMER2 to 750 kHz, otherwise it 
kind of breaks support for older kernels (they would still boot, but 
with a very slow clocksource). So in the new DTS you could use the 
timer0 clock for CPU #0, timer1 for the clocksource, and timer2+ for 
cpus > 0.
Sure, I will change it in v4.

Thanks and best regards!
Cheers,
-Paul
quoted
+};
+
 &mmc0 {
 	status = "okay";
@@ -522,13 +533,3 @@
 		bias-disable;
 	};
 };
-
-&tcu {
-	/*
-	 * 750 kHz for the system timer and 3 MHz for the
clocksource,
-	 * use channel #0 for the system timer, #1 for the
clocksource.
-	 */
-	assigned-clocks = <&tcu TCU_CLK_TIMER0>, <&tcu
TCU_CLK_TIMER1>,
-					  <&tcu TCU_CLK_OST>;
-	assigned-clock-rates = <750000>, <3000000>, <3000000>;
-};
--
2.7.4
  
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help