DBGAUTHSTATUS, Debug Authentication Status register

The DBGAUTHSTATUS characteristics are:

Purpose

Provides information about the state of the IMPLEMENTATION DEFINED authentication interface for debug.

Configuration

AArch32 System register DBGAUTHSTATUS bits [31:0] are architecturally mapped to AArch64 System register DBGAUTHSTATUS_EL1[31:0].

AArch32 System register DBGAUTHSTATUS bits [31:0] are architecturally mapped to External register DBGAUTHSTATUS_EL1[31:0].

This register is present only when EL1 is capable of using AArch32. Otherwise, direct accesses to DBGAUTHSTATUS are UNDEFINED.

This register is required in all implementations.

Attributes

DBGAUTHSTATUS is a 32-bit register.

Field descriptions

313029282726252423222120191817161514131211109876543210
RES0SNIDSIDNSNIDNSID

Bits [31:8]

Reserved, RES0.

SNID, bits [7:6]
When FEAT_Debugv8p4 is implemented:

Secure Non-Invasive Debug.

This field has the same value as DBGAUTHSTATUS.SID.


Otherwise:

Secure Non-Invasive Debug.

SNIDMeaning
0b00

Not implemented. EL3 is not implemented and the Effective value of SCR.NS is 1.

0b10

Implemented and disabled. ExternalSecureNoninvasiveDebugEnabled() == FALSE.

0b11

Implemented and enabled. ExternalSecureNoninvasiveDebugEnabled() == TRUE.

All other values are reserved.

SID, bits [5:4]

Secure Invasive Debug.

SIDMeaning
0b00

Not implemented. EL3 is not implemented and the Effective value of SCR_EL3.NS is 1.

0b10

Implemented and disabled. ExternalSecureInvasiveDebugEnabled() == FALSE.

0b11

Implemented and enabled. ExternalSecureInvasiveDebugEnabled() == TRUE.

All other values are reserved.

NSNID, bits [3:2]
When FEAT_Debugv8p4 is implemented:

Non-secure Non-invasive debug.

NSNIDMeaning
0b00

Not implemented. EL3 is not implemented and the Effective value of SCR.NS is 0.

0b11

Implemented and enabled. EL3 is implemented or the Effective value of SCR.NS is 1.

All other values are reserved.


Otherwise:

Non-secure Non-Invasive Debug.

NSNIDMeaning
0b00

Not implemented. EL3 is not implemented and the Effective value of SCR.NS is 0

0b10

Implemented and disabled. ExternalNoninvasiveDebugEnabled() == FALSE.

0b11

Implemented and enabled. ExternalNoninvasiveDebugEnabled() == TRUE.

All other values are reserved.

NSID, bits [1:0]

Non-secure Invasive Debug.

NSIDMeaning
0b00

Not implemented. EL3 is not implemented or the Effective value of SCR_EL3.NS is 0.

0b10

Implemented and disabled. ExternalInvasiveDebugEnabled() == FALSE.

0b11

Implemented and enabled. ExternalInvasiveDebugEnabled() == TRUE.

All other values are reserved.

Accessing DBGAUTHSTATUS

Accesses to this register use the following encodings in the System register encoding space:

MRC{<c>}{<q>} <coproc>, {#}<opc1>, <Rt>, <CRn>, <CRm>{, {#}<opc2>}

coprocopc1CRnCRmopc2
0b11100b0000b01110b11100b110

if PSTATE.EL == EL0 then UNDEFINED; elsif PSTATE.EL == EL1 then if Halted() && HaveEL(EL3) && EDSCR.SDD == '1' && boolean IMPLEMENTATION_DEFINED "EL3 trap priority when SDD == '1'" && !ELUsingAArch32(EL3) && MDCR_EL3.TDA == '1' then UNDEFINED; elsif EL2Enabled() && !ELUsingAArch32(EL2) && MDCR_EL2.<TDE,TDA> != '00' then AArch64.AArch32SystemAccessTrap(EL2, 0x05); elsif EL2Enabled() && ELUsingAArch32(EL2) && HDCR.<TDE,TDA> != '00' then AArch32.TakeHypTrapException(0x05); elsif HaveEL(EL3) && !ELUsingAArch32(EL3) && MDCR_EL3.TDA == '1' then if Halted() && EDSCR.SDD == '1' then UNDEFINED; else AArch64.AArch32SystemAccessTrap(EL3, 0x05); else R[t] = DBGAUTHSTATUS; elsif PSTATE.EL == EL2 then if Halted() && HaveEL(EL3) && EDSCR.SDD == '1' && boolean IMPLEMENTATION_DEFINED "EL3 trap priority when SDD == '1'" && !ELUsingAArch32(EL3) && MDCR_EL3.TDA == '1' then UNDEFINED; elsif HaveEL(EL3) && !ELUsingAArch32(EL3) && MDCR_EL3.TDA == '1' then if Halted() && EDSCR.SDD == '1' then UNDEFINED; else AArch64.AArch32SystemAccessTrap(EL3, 0x05); else R[t] = DBGAUTHSTATUS; elsif PSTATE.EL == EL3 then R[t] = DBGAUTHSTATUS;


05/07/2022 17:08; b0421fa9a8865165f9b91af9b4a566111f866305

Copyright © 2010-2022 Arm Limited or its affiliates. All rights reserved. This document is Non-Confidential.