|ARM Technical Support Knowledge Articles|
Applies to: Cortex-A7
Refer to page B1-1199 in the Architecture Reference Manual (rev C): << Pseudocode details of the Wait For Event lock mechanism The WaitForEvent() pseudocode procedure optionally suspends execution until a WFE wake-up event or reset occurs, or until some earlier time if the implementation chooses. It is IMPLEMENTATION DEFINED whether restarting execution after the period of suspension causes a ClearEventRegister() to occur. >> In the case of Cortex-A15, it clears the event register when a wake-up event occurs. In the case of Cortex-A7, it does not clear the event register. These are both valid implementations of the spec. So it requires the execution of two WFE instructions on Cortex-A7 to return to STANDBYWFE state, after an SEV has been received (from another Cortex-A7 CPU or from another cluster). But it only requires a single WFE on Cortex-A15.
Did you find this article helpful? Yes No
How can we improve this article?