On 9/27/19 1:22 PM, Marc Zyngier wrote: > On 2019-09-27 09:48, Benjamin Gaignard wrote: >> Adding always-on makes arm arch_timer claim to be an high resolution >> timer. >> That is possible because power mode won't stop clocking the timer. > > The "always-on" is not about the clock. It is about the comparator. > The clock itself is *guaranteed* to always tick. If it didn't, that'd be > an integration bug, and a pretty bad one. > > What you're claiming here is that your CPU never enters a low-power mode? > Ever? I find this very hard to believe. > > Furthermore, claiming that always-on is the way to force the arch-timer > to be an hrtimer is factually wrong. This is what happens *if* this is > the only timer in the system. The only case this is true is for virtual > machines. Anything else has a global timer somewhere that will allow > the arch timers to be used as an hrtimer. > > I'm pretty sure you too have a global timer somewhere in your system. > Enable it, and enjoy hrtimers without having to lie about the properties > of your system! ;-) Hi Marc, This SoC doesn't have any other global timer. Use arch_time is the only we have to provide hrtimer on this system. Benjamin > > M. > >> >> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@xxxxxx> >> --- >> arch/arm/boot/dts/stm32mp157c.dtsi | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/arch/arm/boot/dts/stm32mp157c.dtsi >> b/arch/arm/boot/dts/stm32mp157c.dtsi >> index 9b11654a0a39..74f64745d60d 100644 >> --- a/arch/arm/boot/dts/stm32mp157c.dtsi >> +++ b/arch/arm/boot/dts/stm32mp157c.dtsi >> @@ -50,6 +50,7 @@ >> <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | >> IRQ_TYPE_LEVEL_LOW)>, >> <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | >> IRQ_TYPE_LEVEL_LOW)>; >> interrupt-parent = <&intc>; >> + always-on; >> }; >> >> clocks { >