8.12.7.11 SECUMOD JTAG Protection Control Register

Note: Reset value is:
  • 0x00000001 when fuse DEFDBG is programmed.
  • 0x00000009 when fuse DEFDBG is not programmed.
Name: SECUMOD_JTAGCR
Offset: 0x0070
Reset: see Note
Property: Read/Write

Bit 3130292827262524 
          
Access  
Reset  
Bit 2322212019181716 
          
Access  
Reset  
Bit 15141312111098 
        FNTRST_BSD 
Access R/W 
Reset  
Bit 76543210 
    PROC_DEBUG_MONPROC_DEBUG_MODE[2:0]FNTRST_DEBUG 
Access R/WR/WR/WR/WR/W 
Reset  

Bit 8 – FNTRST_BSD Force Boundary JTAG NTRST

ValueDescription
0Boundary JTAG are not blocked by the SECUMOD.
1Boundary JTAG reset are held low, preventing Boundary JTAG to work.

Bit 4 – PROC_DEBUG_MON Debug Acknowledge (DBGACK) Monitoring

ValueDescription
0The Arm processor pin DBGACK is not monitored; as a consequence, the software can access debug features of the processor without causing an intrusion in the SECUMOD.
1The Arm processor pin DBGACK is monitored. Processor entering in Debug mode triggers an intrusion.

Bits 3:1 – PROC_DEBUG_MODE[2:0] Invasive/Non-Invasive Secure/Non-Secure Debug Permissions

This field is used to set different debug permission levels. For instance, it can be used to prevent debug on secure parts of the code. The table below shows the effect of the field value on the processor pins (SPIDEN, DBGEN, SPNIDEN and NIDEN).

PROC_DEBUG_MODE ValueDebug PermissionsSPIDENDBGENSPNIDENNIDEN
b000No Debug0000
b001Non-Invasive, Non-Secure0001
b010Full Non-Secure (Invasive and Non-Invasive)0100
b011Full Non-Secure + Non-Invasive Secure0111
b100Full Debug allowed1111

Bit 0 – FNTRST_DEBUG Force ARM Processor’s TAP NTRST

ValueDescription
0The ARM processor’s TAP controller access is not blocked by the SECUMOD.
1nDBGRESET of the ARM processor’s TAP controller is held low, preventing the processor to switch to Debug state.