zephyr/drivers/timer
Stephanos Ioannidis fc941d583e drivers: timer: xlnx_psttc_timer: Implement tickless support
This commit reworks the Xilinx TTC timer driver to use the "match" mode
instead of the "interval" mode which counts up to the specified value
and resets to zero.

Using the "match" mode ensures that the timer keeps counting even after
an interrupt is triggered, and facilitates the tickless mode support
implementation.

This also allows `z_timer_cycle_get_32` to return the correct cycle
count when interrupt is locked; thereby, fixing the k_busy_wait hang
issue.

Note that the TTC "match" mode emulation (and tickless timer operation)
is only stable when the QEMU icount mode is enabled.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2020-03-21 14:20:17 -04: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 Revert "global: Replace BUILD_ASSERT_MSG() with BUILD_ASSERT()" 2020-03-19 18:45:13 +01:00
arcv2_timer0.c arch: arc: bug fixes for running just one core for a multicore target 2020-03-12 13:02:17 -04: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: xlnx_psttc_timer: Implement tickless support 2020-03-21 14:20:17 -04: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 drivers: loapic_timer: simplify TSC read 2020-02-06 23:07:37 -05:00
mchp_xec_rtos_timer.c Revert "global: Replace BUILD_ASSERT_MSG() with BUILD_ASSERT()" 2020-03-19 18:45:13 +01:00
native_posix_timer.c native_posix: timer: Improve arch_busy_wait() doc 2020-02-07 11:48:41 +01: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 riscv machine timer: Timer functions on long running platforms 2020-03-04 23:08:49 +02: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 Revert "global: Replace BUILD_ASSERT_MSG() with BUILD_ASSERT()" 2020-03-19 18:45:13 +01: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 drivers: timer: xlnx_psttc_timer: Implement tickless support 2020-03-21 14:20:17 -04:00
xlnx_psttc_timer_priv.h drivers: timer: xlnx_psttc_timer: Implement tickless support 2020-03-21 14:20:17 -04:00
xtensa_sys_timer.c drivers/timer: Clamp after tick adjustment, not before 2019-11-27 18:43:53 +01:00