GRTC is implemented with split security, meaning it handles access from both secure and non-secure code. Individual GRTC SYSCOUNTER compare/capture channels and interrupts can have independent security settings that define them as secure or non-secure.
SYSCOUNTER compare/capture channels
- Secure — The channel and its associated registers, trigger/subscribe tasks, and receive/publish events can only be accessed by secure code.
- Non-secure — The channel and its associated registers, trigger/subscribe tasks, and receive/publish events can be accessed by secure and non-secure code.
GRTC interrupts
GRTC interrupts can be defined as secure or non-secure.
A security fault is triggered when an invalid access targets registers INTEN/INTENSET/INTENCLR/INTPEND associated with an GRTC interrupt.
GRTC interrupt can only be generated by a COMPARE[j] event if the interrupt and channel have the correct security attribute.
A secure GRTC interrupt can be triggered by a secure or non-secure GRTC channel.
A non-secure GRTC interrupt can be triggered by an event generated by non-secure GRTC channel. An event generated by secure GRTC channel cannot trigger the interrupt.