zephyrproject-rtos / zephyr

Primary Git Repository for the Zephyr Project. Zephyr is a new generation, scalable, optimized, secure RTOS for multiple hardware architectures.
https://docs.zephyrproject.org
Apache License 2.0
10.58k stars 6.47k forks source link

cortex-m systick: Missing "external" clock support #56117

Open avolkov-1221 opened 1 year ago

avolkov-1221 commented 1 year ago

Hello,

Current Systick driver for Cortex-M chips is lack of support so called by ARM "external" clock, only CPU's one is supported. The implementation of "external" clock depends of the chip's manufacturer and usually have some interesting futures like less power dissipation.

However the "external" clock reference usually have different, CPU's unrelated frequency, as an result the time calculation logic shall be changed substantially.

As an example, we can consider the RA2 chip's family from Renesas, in which the frequency of the "external" clock is 32KHz, while main clock is up to 64 MHz. But the external clock is powered by a low-power domain, and accordingly significantly reduces idle consumption.

avolkov-1221 commented 1 year ago

PS. A fix for the issue has been implemented in this pull request: https://github.com/zephyrproject-rtos/zephyr/pull/55762

github-actions[bot] commented 1 year ago

This issue has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this issue will automatically be closed in 14 days. Note, that you can always re-open a closed issue at any time.