EasyManua.ls Logo

ARM Cortex-A53 MPCore - Page 442

ARM Cortex-A53 MPCore
635 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Debug
ARM DDI 0500D Copyright © 2013-2014 ARM. All rights reserved. 11-40
ID021414 Non-Confidential
11.10.4 Changing the authentication signals
The NIDEN, DBGEN, SPIDEN, and SPNIDEN input signals are either tied off to some fixed
value or controlled by some external device.
If software running on the processor has control over an external device that drives the
authentication signals, it must make the change using a safe sequence:
1. Execute an implementation-specific sequence of instructions to change the signal value.
For example, this might be a single
STR
instruction that writes certain value to a control
register in a system peripheral.
2. If step 1 involves any memory operation, issue a
DSB
instruction.
3. Issue an
ISB
instruction or exception entry or exception return.
4. Poll the DBGAUTHSTATUS_EL1 to check whether the processor has already detected
the changed value of these signals. This is required because the system might not issue the
signal change to the processor until several cycles after the
DSB
instruction completes.
The software cannot perform debug or analysis operations that depend on the new value of the
authentication signals until this procedure is complete. The same rules apply when the debugger
has control of the processor through the Instruction Transfer Register, EDITR, while in debug
state. The relevant combinations of the DBGEN, NIDEN, SPIDEN, and SPNIDEN values can
be determined by polling DBGAUTHSTATUS_EL1.

Table of Contents

Related product manuals