zephyr/drivers/timer
Carlo Caione 6f36300219 drivers: timer: Add per-core ARM architected timer
ARM cores may have a per-core architected timer, which provides per-cpu
timers, attached to a GIC to deliver its per-processor interrupts via
PPIs. This is the most common case supported by QEMU in the virt
platform.

This patch introduces support for this timer abstracting the way the
timer registers are actually accessed. This is needed because different
architectures (for example ARMv7-R vs ARMv8-A) use different registers
and even the same architecture (ARMv8-A) can actually use different
timers (ELx physical timers vs ELx virtual timers).

So we introduce the common driver here but the actual SoC / architecture
/ board must provide the three helpers (arm_arch_timer_set_compare(),
arm_arch_timer_toggle(), arm_arch_timer_count()) using an header file
imported through the arch/cpu.h header file.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2020-02-01 08:08:43 -05:00
..
altera_avalon_timer_hal.c kernel/sys_clock.h: Deprecate and convert uses of old conversions 2019-11-08 11:08:58 +01:00
apic_timer.c drivers: apic_timer: fix include of system_timer.h 2019-06-27 10:51:32 -07:00
arcv2_timer0.c drivers: timer: fix the bug for SMP 2019-11-13 12:04:18 -08:00
arm_arch_timer.c drivers: timer: Add per-core ARM architected timer 2020-02-01 08:08:43 -05:00
cc13x2_cc26x2_rtc_timer.c drivers/timer: Clamp after tick adjustment, not before 2019-11-27 18:43:53 +01:00
CMakeLists.txt drivers: timer: Add per-core ARM architected timer 2020-02-01 08:08:43 -05:00
cortex_m_systick.c arch: arm: Move ARM code to AArch32 sub-directory 2019-12-20 11:40:59 -05:00
hpet.c drivers/timer: Clamp after tick adjustment, not before 2019-11-27 18:43:53 +01:00
Kconfig drivers: timer: Add per-core ARM architected timer 2020-02-01 08:08:43 -05:00
Kconfig.stm32_lptim kconfig: Fix up newly-introduced copy-pasted headers 2019-11-19 15:25:08 -05:00
legacy_api.h kernel: kconfig: Fix broken references to TICKLESS_KERNEL 2020-01-25 08:14:55 -05:00
litex_timer.c kernel/sys_clock.h: Deprecate and convert uses of old conversions 2019-11-08 11:08:58 +01:00
loapic_timer.c kernel/sys_clock.h: Deprecate and convert uses of old conversions 2019-11-08 11:08:58 +01:00
mchp_xec_rtos_timer.c kernel: rename z_arch_ to arch_ 2019-11-07 15:21:46 -08:00
native_posix_timer.c kernel: rename z_arch_ to arch_ 2019-11-07 15:21:46 -08:00
nrf_rtc_timer.c kernel: kconfig: Fix broken references to TICKLESS_KERNEL 2020-01-25 08:14:55 -05:00
riscv_machine_timer.c drivers/timer: Clamp after tick adjustment, not before 2019-11-27 18:43:53 +01:00
rv32m1_lptmr_timer.c drivers: timer: Do not use CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC 2019-07-24 15:10:02 +02:00
sam0_rtc_timer.c timer: sam0_rtc_timer: Add support for SAME54 2019-12-21 11:15:52 -05:00
stm32_lptim_timer.c driver: timer: st_stm32: add lptimer management to stm32xx series 2019-11-08 10:04:21 -06:00
sys_clock_init.c include: move system timer headers to include/drivers/timer/ 2019-06-25 15:27:00 -04:00
xlnx_psttc_timer.c kernel/sys_clock.h: Deprecate and convert uses of old conversions 2019-11-08 11:08:58 +01:00
xtensa_sys_timer.c drivers/timer: Clamp after tick adjustment, not before 2019-11-27 18:43:53 +01:00