This patch series aims to add support for Compare-Match Timer (TIM) module found on RZ/V2M SoC. it is composed of 32 channels and channels 0-7 and 24-32 are reserved for ISP usage. Channel 22 is modelled as clock source and Channel 23 is modelled as clock event driver and the rest of the channels are modelled as counter driver as it provides 1) counter for counting 2) configurable counter value for generating timer interrupt 3) userspace event for each interrupt. logs:- Counter driver: Counter driver is tested by reading counts and interrupts tested by counter-example in tools/counter/counter_example.c Count snapshot value: 3114 Output from counter_example when it triggers interrupts: Timestamp 0: 24142152969 Count 0: 5 Error Message 0: Success Clock source: Clock source driver is tested by clock-source-switch app. [ 1275.703567] clocksource: Switched to clocksource arch_sys_counter [ 1275.710189] clocksource: Switched to clocksource a4000b00.timer [OK] # Totals: pass[ 1275.718112] clocksource: Switched to clocksource arch_sys_counter :0 fail:0 xfail:0 xpass:0 skip:0 error:0 # Totals: pass:0 fail:0 xfail:0 xpass:0 skip:0 error:0 Clock event: clock event driver is tested by changing the rating as 500. Biju Das (6): clk: renesas: r9a09g011: Add TIM clock and reset entries dt-bindings: timer: Add RZ/V2M TIM binding clocksource/drivers/rzv2m-tim: Add Renesas RZ/V2M compare match timer(TIM) driver dt-bindings: counter: Add RZ/V2M TIM counter binding counter: Add Renesas RZ/V2M TIM counter driver arm64: dts: renesas: r9a09g011: Add tim nodes .../counter/renesas,rzv2m-tim-cnt.yaml | 83 +++++ .../bindings/timer/renesas,rzv2m-tim.yaml | 83 +++++ arch/arm64/boot/dts/renesas/r9a09g011.dtsi | 192 ++++++++++ drivers/clk/renesas/r9a09g011-cpg.c | 22 ++ drivers/clocksource/Kconfig | 7 + drivers/clocksource/Makefile | 1 + drivers/clocksource/rzv2m-tim.c | 330 ++++++++++++++++++ drivers/counter/Kconfig | 10 + drivers/counter/Makefile | 1 + drivers/counter/rzv2m-tim-cnt.c | 312 +++++++++++++++++ 10 files changed, 1041 insertions(+) create mode 100644 Documentation/devicetree/bindings/counter/renesas,rzv2m-tim-cnt.yaml create mode 100644 Documentation/devicetree/bindings/timer/renesas,rzv2m-tim.yaml create mode 100644 drivers/clocksource/rzv2m-tim.c create mode 100644 drivers/counter/rzv2m-tim-cnt.c -- 2.25.1