Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stop using the trusted watchdog for OSC16M calibration #199

Closed
smaeul opened this issue Nov 4, 2021 · 0 comments
Closed

Stop using the trusted watchdog for OSC16M calibration #199

smaeul opened this issue Nov 4, 2021 · 0 comments

Comments

@smaeul
Copy link
Member

smaeul commented Nov 4, 2021

Type of issue

Enhancement

Description

Linux likes to turn off the TWD clock. One way to get around this is to not use the TWD. However, the TWD is currently used as the 24 MHz counter for OSC16M calibration. So some alternative must be found before the TWD can be disabled.

Everything except A64/H5 has a "timestamp status" MMIO range with a free-running 64-bit counter running at 24 MHz. There is also a latched 64-bit counter in the R_CPUCFG space. This latched counter could be used if the calibration procedure was flipped, to delay using OSC16M and count OSC24M cycles (whereas now it delays using OSC24M and counts OSC16M cycles).

There are other timers available, but one concern is their availability during sleep. See #198.

smaeul added a commit that referenced this issue Jun 11, 2022
Now that a system counter driver is available on all supported
platforms, use that instead of the trusted watchdog.

Closes: #199
Signed-off-by: Samuel Holland <[email protected]>
@smaeul smaeul closed this as completed in 06d33d2 Jun 12, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant