The purpose of the Secure Debug Enable Register is to provide control of permissions for debug in secure User mode. See Chapter 12 Debug for more details.
The Secure Debug Enable Register is:
a register in the Secure state only
accessible in secure privileged modes only.
Figure 3.24 shows the bit arrangement of the Secure Debug Enable Register.
Table 3.56 shows how the bit values correspond with the Secure Debug Enable Register functions.
|Reserved. UNP, SBZP.|
Enables secure User noninvasive debug:
0 = noninvasive debug is not permitted in secure User mode, reset value
1 = noninvasive debug is permitted in secure User mode.
Enables secure User invasive debug:
0 = invasive debug is not permitted in secure User mode, reset value
1 = invasive debug is permitted in secure User mode.
Table 3.57 shows the results of attempted access for each mode.
|Secure privileged||Nonsecure privileged||Secure User||Nonsecure User|
 An entry of Undefined in the table means that the access gives an Undefined Instruction exception when the coprocessor instruction is executed.
To access the Secure Debug Enable Register, read or write CP15 with:
MRC p15, 0, <Rd>, c1, c1, 1 ; Read Secure Debug Enable Register
MCR p15, 0, <Rd>, c1, c1, 1 ; Write Secure Debug Enable Register