Page MenuHomeFreeBSD

ARM: generic timer minimum period too low
ClosedPublic

Authored by bz on May 4 2016, 3:28 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Oct 10, 7:23 PM
Unknown Object (File)
Wed, Oct 8, 1:33 PM
Unknown Object (File)
Sep 13 2025, 3:13 PM
Unknown Object (File)
Sep 11 2025, 1:53 AM
Unknown Object (File)
Aug 17 2025, 3:33 AM
Unknown Object (File)
Aug 14 2025, 7:18 AM
Unknown Object (File)
Aug 2 2025, 12:06 PM
Unknown Object (File)
Aug 2 2025, 1:47 AM
Subscribers

Details

Summary

The ARM generic timer keeps ticking even if disabled or it expired.
In case of updating it with a very low value it might expire again
after writing the tval but before updating ctrl. In that case we do
lose the status bit saying that the timer expired and we will consequently
not get an interrupt for it, leaving the timer in a "dead" state.

In order to solve this increase the minimum period with what the timer
can be loaded to something higher.

Debugged with: andrew
Found with: gem5
Sponsored by: DARPA/AFRL

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

bz retitled this revision from to ARM: generic timer minimum period too low.
bz updated this object.
bz edited the test plan for this revision. (Show Details)
bz added reviewers: andrew, br.
bz set the repository for this revision to rS FreeBSD src repository - subversion.
bz added a subscriber: ARM.
andrew edited edge metadata.
This revision is now accepted and ready to land.May 4 2016, 3:38 PM
This revision was automatically updated to reflect the committed changes.