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

From: 周琰杰
Date: Fri Jun 25 2021 - 08:14:13 EST


于 Fri, 25 Jun 2021 12:31:17 +0100
Paul Cercueil <paul@xxxxxxxxxxxxxxx> 写道:

> Hi Zhou,
>
> Le jeu., juin 24 2021 at 23:06:29 +0800, 周琰杰 (Zhou Yanjie)
> <zhouyanjie@xxxxxxxxxxxxxx> a écrit :
> > 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.
>
> >
> > Signed-off-by: 周琰杰 (Zhou Yanjie) <zhouyanjie@xxxxxxxxxxxxxx>
> > ---
> >
> > 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
>
> > +};
> > +
> > &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
> >
>