zephyr/drivers/timer
Andy Ross e4a455b25d drivers/cavs_timer: Cleanup & simplification pass
General refactoring to clean up and futureproof this driver.

Remove false dependency on CONFIG_CAVS_ICTL.  This requires the CAVS
interrupt mask API, but doesn't touch the interrupt controller driver.

Remove a racy check for simultaneous interrupts.  This seems to have
been well intentioned, but it's needless: the spinlock around the
last_count computation guarantees that colliding interrupts will
correctly compute elapsed ticks (i.e. the last will compute and
announce zero ticks, which is correct and expected).  And this opened
a tiny window where you could incorrectly ignore a just-set timeout.

Factor out the specific registers used (there are only five) into
pointer-valued macros instead of banging them directly.

Unify interrupt initialization for main and auxiliary cores.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2022-01-05 15:01:45 -05:00
..
altera_avalon_timer_hal.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05:00
apic_timer.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05:00
apic_tsc.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05:00
arcv2_timer0.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05:00
arm_arch_timer.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05:00
cavs_timer.c drivers/cavs_timer: Cleanup & simplification pass 2022-01-05 15:01:45 -05:00
cc13x2_cc26x2_rtc_timer.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05:00
CMakeLists.txt drivers: mcux_gpt_timer: Added GPT timer for HW clock 2021-12-13 20:13:21 -05:00
cortex_m_systick.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05:00
esp32c3_sys_timer.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05:00
hpet.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05:00
ite_it8xxx2_timer.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05:00
Kconfig drivers: mcux_gpt_timer: Added GPT timer for HW clock 2021-12-13 20:13:21 -05:00
Kconfig.altera_avalon drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
Kconfig.apic drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
Kconfig.arcv2 drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
Kconfig.arm_arch drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
Kconfig.cavs drivers/cavs_timer: Cleanup & simplification pass 2022-01-05 15:01:45 -05:00
Kconfig.cc13x2_cc26x2_rtc drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
Kconfig.cortex_m_systick drivers: timer: cortex_m_systick: improve ISR installation 2021-12-04 07:34:53 -05:00
Kconfig.esp32c3_sys drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
Kconfig.hpet drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
Kconfig.ite_it8xxx2 drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
Kconfig.leon_gptimer drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
Kconfig.litex drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
Kconfig.mchp_xec_rtos drivers: timer: improve sys_timer_disable usage 2021-12-04 07:34:53 -05:00
Kconfig.mcux_gpt drivers: mcux_gpt_timer: Added GPT timer for HW clock 2021-12-13 20:13:21 -05:00
Kconfig.mcux_lptmr drivers: timer: improve sys_timer_disable usage 2021-12-04 07:34:53 -05:00
Kconfig.mcux_os drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
Kconfig.native_posix drivers: timer: improve sys_timer_disable usage 2021-12-04 07:34:53 -05:00
Kconfig.npcx_itim drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
Kconfig.nrf_rtc drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
Kconfig.rcar_cmt drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
Kconfig.riscv_machine riscv_machine_timer: Enable to use divided clock for the machine timer 2021-12-20 17:51:30 +01:00
Kconfig.rv32m1_lptmr drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
Kconfig.sam0_rtc drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
Kconfig.stm32_lptim kconfig: drivers: experimental settings now uses select EXPERIMENTAL 2021-10-25 10:46:48 +02:00
Kconfig.xlnx_psttc drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
Kconfig.xtensa drivers: timer: split Kconfig 2021-12-04 07:34:53 -05:00
leon_gptimer.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05:00
litex_timer.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05:00
mchp_xec_rtos_timer.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05:00
mcux_gpt_timer.c drivers: mcux_gpt_timer: Added GPT timer for HW clock 2021-12-13 20:13:21 -05:00
mcux_lptmr_timer.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05:00
mcux_os_timer.c drivers: timer: fix MISRA 5.7 violation 2021-12-04 07:34:53 -05:00
native_posix_timer.c drivers: timer: improve sys_timer_disable usage 2021-12-04 07:34:53 -05:00
npcx_itim_timer.c driver: timer: npcx: fix the racing condition when getting current uptime 2022-01-04 20:46:26 -05:00
nrf_rtc_timer.c drivers: timer: extend nrf_rtc_timer 2022-01-04 17:44:32 +01:00
rcar_cmt_timer.c drivers: timer: fix MISRA 5.7 violation 2021-12-04 07:34:53 -05:00
riscv_machine_timer.c riscv_machine_timer: Enable to use divided clock for the machine timer 2021-12-20 17:51:30 +01:00
rv32m1_lptmr_timer.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05:00
sam0_rtc_timer.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05:00
stm32_lptim_timer.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05:00
sys_clock_init.c drivers: timer: cortex_m_systick: improve ISR installation 2021-12-04 07:34:53 -05:00
xlnx_psttc_timer.c drivers: timer: move initialization setup to drivers 2021-12-04 07:34:53 -05: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: move initialization setup to drivers 2021-12-04 07:34:53 -05:00