zephyr/drivers/timer
Krzysztof Chruscinski 31b25400ff drivers: timer: nrf_rtc_timer: Prevent prolonged timeout setting
CC setting algorithm is handling a case when CC is too soon (next
tick from now). It was setting CC to one tick further in the future
if that was detected. Step was repeated if counter incremented during
setting CC and CC was behind the counter because of risk of setting
CC too late. In certain scenarios we might spend a lot of time in
that loop, especially if optimization is turned off. Test shown that
loop was executed dozens of time (up. to 700us). To prevent
prolonged execution whenever CC setting fails we set CC to one more
tick further in future.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2022-11-09 10:46:19 +01:00
..
altera_avalon_timer_hal.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
apic_timer.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
apic_tsc.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
arcv2_timer0.c smp: Convert #if to use CONFIG_MP_MAX_NUM_CPUS 2022-10-20 22:04:10 +09:00
arm_arch_timer.c include: add missing irq.h include 2022-10-11 18:05:17 +02:00
cc13x2_cc26x2_rtc_timer.c include: add missing spinlock.h include 2022-10-11 18:05:17 +02:00
CMakeLists.txt intel_adsp: Unify cavs and ace timers 2022-07-06 15:11:07 -04:00
cortex_m_systick.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
esp32c3_sys_timer.c include: add missing spinlock.h include 2022-10-11 18:05:17 +02:00
hpet.c drivers: timer: use sys_read64 to read HPET counter on 64 bits cpu 2022-10-12 18:47:19 +09:00
intel_adsp_timer.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
ite_it8xxx2_timer.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
Kconfig kernel: Option to assert on spin lock time 2022-10-18 14:14:12 +02:00
Kconfig.altera_avalon
Kconfig.apic timer: APIC timer count is a lock free accessor 2022-10-18 14:14:12 +02:00
Kconfig.arcv2
Kconfig.arm_arch
Kconfig.cavs drivers: timer: intel_adsp: Update driver to use dts Kconfig symbol 2022-11-01 09:03:17 +00:00
Kconfig.cc13x2_cc26x2_rtc drivers: timer: Update drivers to use devicetree Kconfig symbol 2022-09-09 09:58:48 +00:00
Kconfig.cortex_m_systick drivers: timer: Update drivers to use devicetree Kconfig symbol 2022-09-09 09:58:48 +00:00
Kconfig.esp32c3_sys
Kconfig.hpet timer: Revert "timer: HPET is also a lock free readable timer" 2022-11-01 23:15:23 +09:00
Kconfig.ite_it8xxx2 drivers: timer: Update drivers to use devicetree Kconfig symbol 2022-09-09 09:58:48 +00:00
Kconfig.leon_gptimer drivers: timer: Update drivers to use devicetree Kconfig symbol 2022-09-09 09:58:48 +00:00
Kconfig.litex drivers: timer: Update drivers to use devicetree Kconfig symbol 2022-09-09 09:58:48 +00:00
Kconfig.mchp_xec_rtos drivers: timer: Update drivers to use devicetree Kconfig symbol 2022-09-09 09:58:48 +00:00
Kconfig.mcux_gpt drivers: timer: Update drivers to use devicetree Kconfig symbol 2022-09-09 09:58:48 +00:00
Kconfig.mcux_lptmr drivers: timer: Update drivers to use devicetree Kconfig symbol 2022-09-09 09:58:48 +00:00
Kconfig.mcux_os drivers: timer: Update drivers to use devicetree Kconfig symbol 2022-09-09 09:58:48 +00:00
Kconfig.mips_cp0
Kconfig.native_posix
Kconfig.npcx_itim drivers: timer: Update drivers to use devicetree Kconfig symbol 2022-09-09 09:58:48 +00:00
Kconfig.nrf_rtc drivers: timer: Increase default user-allocable channel count to 3 2022-08-19 12:08:59 +02:00
Kconfig.rcar_cmt drivers: timer: Update drivers to use devicetree Kconfig symbol 2022-09-09 09:58:48 +00:00
Kconfig.riscv_machine drivers: timers: riscv: don't leak Kconfig symbols 2022-11-02 15:40:59 +09:00
Kconfig.rv32m1_lptmr drivers: timer: Update drivers to use devicetree Kconfig symbol 2022-09-09 09:58:48 +00:00
Kconfig.sam0_rtc drivers: timer: Update drivers to use devicetree Kconfig symbol 2022-09-09 09:58:48 +00:00
Kconfig.stm32_lptim drivers: timer: stm32_lptim: Change clock source config check sanction 2022-09-21 18:39:07 +00:00
Kconfig.xlnx_psttc drivers: timer: Update drivers to use devicetree Kconfig symbol 2022-09-09 09:58:48 +00:00
Kconfig.xtensa
leon_gptimer.c include: add missing irq.h include 2022-10-11 18:05:17 +02:00
litex_timer.c drivers: use unsigned int for irq_lock() 2022-07-14 14:37:13 -05:00
mchp_xec_rtos_timer.c include: add missing irq.h include 2022-10-11 18:05:17 +02:00
mcux_gpt_timer.c include: add missing irq.h include 2022-10-11 18:05:17 +02:00
mcux_lptmr_timer.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
mcux_os_timer.c timer: nxp: Update OS-Timer to use wakeup-source flag 2022-10-27 11:03:13 +02:00
mips_cp0_timer.c include: add missing limits.h include 2022-10-11 18:05:17 +02:00
native_posix_timer.c
npcx_itim_timer.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
nrf_rtc_timer.c drivers: timer: nrf_rtc_timer: Prevent prolonged timeout setting 2022-11-09 10:46:19 +01:00
rcar_cmt_timer.c include: add missing irq.h include 2022-10-11 18:05:17 +02:00
riscv_machine_timer.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
rv32m1_lptmr_timer.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
sam0_rtc_timer.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00
stm32_lptim_timer.c include: add missing irq.h include 2022-10-11 18:05:17 +02:00
sys_clock_init.c
xlnx_psttc_timer_priv.h
xlnx_psttc_timer.c include: add missing sys_clock.h include 2022-10-11 18:05:17 +02:00
xtensa_sys_timer.c include: add missing zephyr/irq.h include 2022-10-17 22:57:39 +09:00