AArch32 Registers | AArch64 Registers | AArch32 Instructions | AArch64 Instructions | Index by Encoding | External Registers | External Registers by Offset | Registers by Functional Group | Proprietary Notice

# 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 required in all implementations.

## Attributes

DBGAUTHSTATUS is a 32-bit register.

## Field descriptions

The DBGAUTHSTATUS bit assignments are:

31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0
RES0 | SNID | SID | NSNID | NSID

#### Bits [31:8]

Reserved, RES0.

#### SNID, bits [7:6]
When ARMv8.4-Debug is implemented:

Secure Non-Invasive Debug.

This field has the same value as DBGAUTHSTATUS.SID.

####
Otherwise:

Secure Non-Invasive Debug.

SNID | Meaning
--- | ---
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.

SID | Meaning
--- | ---
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 ARMv8.4-Debug is implemented:

Non-secure Non-invasive debug.

NSNID | Meaning
--- | ---
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.

NSNID | Meaning
--- | ---
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.

NSID | Meaning
--- | ---
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 the DBGAUTHSTATUS

Accesses to this register use the following encodings:

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

coproc | opc1 | CRn | CRm | opc2
--- | --- | --- | --- | ---
0b1110 | 0b000 | 0b0111 | 0b1110 | 0b110

if PSTATE.EL == EL0 then UNDEFINED; elsif PSTATE.EL == EL1 then if 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 AArch64.AArch32SystemAccessTrap(EL3, 0x05); else return DBGAUTHSTATUS; elsif PSTATE.EL == EL2 then if HaveEL(EL3) && !ELUsingAArch32(EL3) && MDCR_EL3.TDA == '1' then AArch64.AArch32SystemAccessTrap(EL3, 0x05); else return DBGAUTHSTATUS; elsif PSTATE.EL == EL3 then return DBGAUTHSTATUS;

AArch32 Registers | AArch64 Registers | AArch32 Instructions | AArch64 Instructions | Index by Encoding | External Registers | External Registers by Offset | Registers by Functional Group | Proprietary Notice

15/04/2019 16:47; 8c23526ba8a13a72aada4137daf3e3977b49036e

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