zephyr/drivers
Daniel DeGrasse f3a35c58d8 drivers: timer: mcux_gpt_timer: rewrite timer to use free run mode
GPT timer driver previously used "restart mode", where the timer would
count to a given value, then rollover. In this mode,  "Any write access
to the Compare register of Channel 1 will reset the GPT counter". Since
a write to the compare register takes affect after 1 cycle of the
module's bus clock, and the bus clock is not synchonized with the GPT
module's low frequency counter clock, writing to the compare register
will induce a counter reset, and can cause the GPT to lose time
synchronization. This can induce time drift over time.

To fix this, rework the GPT driver to use "free run" mode. Note that
free run mode is not used directly, rather the GPT is configured to
reset on a tick boundary at boot, and then the second compare register
is used to set capture points. This way, the GPT interrupt will always
fire at a tick boundary, and no calculations are needed to handle
the counter rollover.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2023-03-30 09:51:04 +02:00
..
adc adc: adc_mchp_xec: fix CONFIG_PM_DEVICE compilation 2023-03-28 17:36:32 -04:00
audio drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
bbram drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
bluetooth drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
cache drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
can drivers: can: mcux: flexcan: add missing mutex unlock in error path 2023-03-28 21:45:43 +00:00
clock_control drivers: clock_control: stm32: remove duplicate #include 2023-03-29 15:53:08 +00:00
console armclang: fix compiler warnings with isprint() 2023-03-17 09:30:01 +01:00
coredump drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
counter drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
crypto drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
dac drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
dai drivers: dmic: clear MIC_MUTE bit for ACE 2023-03-28 16:34:40 -04:00
debug
disk drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
display drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
dma drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
edac drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
eeprom drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
entropy drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
espi drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
ethernet drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
flash drivers: flash: Add ex ops for STM32 option/control register block 2023-03-28 15:43:16 +00:00
fpga drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
fuel_gauge drivers: Added fuel gauge max17048 2023-03-22 14:51:33 -04:00
gpio drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
hwinfo drivers: hwinfo: modification into hwinfo_get_reset_cause() 2023-03-30 09:50:55 +02:00
i2c drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
i2s drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
i3c drivers: i3c: cdns: add attach/detach api implementation 2023-03-29 07:46:37 -04:00
ieee802154 drivers: ieee802154: remove not useful log 2023-03-28 15:07:33 +02:00
input drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
interrupt_controller drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
ipm drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
kscan kscan: input: add input to kscan adapter 2023-03-28 20:57:53 -04:00
led drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
led_strip drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
lora drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
mbox drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
mdio drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
memc drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
mipi_dsi drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
misc drivers: tests: replace usage of spi_is_ready with spi_is_ready_dt 2022-12-07 09:40:23 -06:00
mm drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
modem drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
net drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
neural_net drivers: intel_gna: use cache APIs directly 2023-03-28 18:14:37 -04:00
pcie drivers: pcie: late initialization of pcie when PCIe controller is used 2022-12-10 09:47:26 +01:00
peci drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
pinctrl drivers: pinctrl: pinctrl_kinetis: Fix port array 2023-03-28 10:23:46 +02:00
pm_cpu_ops arm64: implement arch_system_halt 2022-11-23 11:37:08 +01:00
power_domain power_domain: intel_adsp: wait for the power domain wake up 2023-03-29 19:59:07 -04:00
ps2 drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
ptp_clock drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
pwm drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
regulator drivers: regulator: Added initial voltage configuration 2023-03-22 21:19:51 +01:00
reset drivers: reset: Add support for reset clear register 2022-12-09 09:43:36 -08:00
retained_mem drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
sdhc drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
sensor drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
serial drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
smbus drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
spi drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
syscon drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
timer drivers: timer: mcux_gpt_timer: rewrite timer to use free run mode 2023-03-30 09:51:04 +02:00
usb drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
usb_c usb-c: tcpc: Disable Dead Battery after system starts 2023-03-09 09:20:35 +01:00
video drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
virtualization drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
w1 drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
watchdog drivers: wdt: Add wdt_intel_adsp driver 2023-03-29 09:45:49 -04:00
wifi drivers: kconfig: unify menuconfig title strings 2023-03-28 15:06:06 +02:00
xen
CMakeLists.txt smbus: Introduce SMBus subsystem driver API 2023-03-22 08:16:23 -04:00
Kconfig smbus: Introduce SMBus subsystem driver API 2023-03-22 08:16:23 -04:00