System Control Coprocessor
ARM DDI 0301H
Copyright © 2004-2009 ARM Limited. All rights reserved.
3-53
ID012310
Non-Confidential, Unrestricted Access
Note
When the core runs in Secure Monitor mode the state is considered Secure regardless of the state
of the NS bit. However, Monitor mode code can access nonsecure banked copies of registers if
the NS bit is set to 1. See the
ARM Architecture Reference Manual
for information on the effect
of the Security Extensions on the CP15 registers.
The permutations of the bits in the Secure Configuration Register have certain security
implications. Table 3-47 lists the results for combinations of the FW and FIQ bits.
Table 3-48 lists the results for combinations of the AW and EA bits.
For more details on the use of Secure Monitor mode, see
The NS bit and Secure Monitor mode
on page 2-4.
[3]
EA
Determines External Abort behavior for Secure and Non-secure worlds:
0 = Branch to abort mode on an External Abort exception, reset value
1 = Branch to Secure Monitor mode on an External Abort exception.
[2]
FIQ
Determines FIQ behavior for Secure and Non-secure worlds:
0 = Branch to FIQ mode on an FIQ exception, reset value
1 = Branch to Secure Monitor mode on an FIQ exception.
[1]
IRQ
Determines IRQ behavior for Secure and Non-secure worlds:
0 = Branch to IRQ mode on an IRQ exception, reset value
1 = Branch to Secure Monitor mode on an IRQ exception.
[0]
NS bit
Defines the world for the processor:
0 = Secure, reset value
1 = Non-secure.
Table 3-46 Secure Configuration Register bit functions (continued)
Bits
Field name
Function
Table 3-47 Operation of the FW and FIQ bits
FW
FIQ
Function
1
0
FIQs handled locally.
0
1
FIQs can be configured to give deterministic Secure interrupts.
1
1
Non-secure world able to make denial of service attack, avoid use of this function.
0
0
Avoid because the core might enter an infinite loop for Non-secure FIQ.
Table 3-48 Operation of the AW and EA bits
AW
EA
Function
1
0
Aborts handled locally.
0
1
All external aborts trapped to Secure Monitor.
1
1
All external imprecise data aborts trapped to Secure Monitor but the Non-secure world can hide Secure
aborts from the Secure Monitor, avoid use of this function.
0
0
Avoid because the core can unexpectedly enter an abort mode in the Non-secure world.