← Home

TRCAUTHSTATUS: Trace Authentication Status Register

Purpose

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

For additional information, see the CoreSight Architecture Specification.

Configuration

External register TRCAUTHSTATUS bits [31:0] are architecturally mapped to AArch64 System register TRCAUTHSTATUS[31:0].

This register is present only when FEAT_ETE is implemented and FEAT_TRC_EXT is implemented. Otherwise, direct accesses to TRCAUTHSTATUS are RES0.

Attributes

TRCAUTHSTATUS is a 32-bit register.

Field descriptions

313029282726252423222120191817161514131211109876543210
RES0RTNIDRTIDRES0RLNIDRLIDHNIDHIDSNIDSIDNSNIDNSID

Bits [31:28]

Reserved, RES0.

RTNID, bits [27:26]

Root non-invasive debug.

This field has the same value as DBGAUTHSTATUS_EL1.RTNID.

This field has an IMPLEMENTATION DEFINED value.

Access to this field is RO.

RTID, bits [25:24]

Root invasive debug.

RTIDMeaning
0b00

Not implemented.

Bits [23:16]

Reserved, RES0.

RLNID, bits [15:14]

Realm non-invasive debug.

This field has the same value as DBGAUTHSTATUS_EL1.RLNID.

This field has an IMPLEMENTATION DEFINED value.

Access to this field is RO.

RLID, bits [13:12]

Realm invasive debug.

RLIDMeaning
0b00

Not implemented.

HNID, bits [11:10]

Hyp Non-invasive Debug. Indicates whether a separate enable control for EL2 non-invasive debug features is implemented and enabled.

The value of this field is an IMPLEMENTATION DEFINED choice of:

HNIDMeaning
0b00

Separate Hyp non-invasive debug enable not implemented, or EL2 non-invasive debug features not implemented.

0b10

Implemented and disabled.

0b11

Implemented and enabled.

All other values are reserved.

This field reads as 0b00.

Access to this field is RO.

HID, bits [9:8]

Hyp Invasive Debug. Indicates whether a separate enable control for EL2 invasive debug features is implemented and enabled.

The value of this field is an IMPLEMENTATION DEFINED choice of:

HIDMeaning
0b00

Separate Hyp invasive debug enable not implemented, or EL2 invasive debug features not implemented.

0b10

Implemented and disabled.

0b11

Implemented and enabled.

All other values are reserved.

This field reads as 0b00.

Access to this field is RO.

SNID, bits [7:6]

Secure Non-invasive Debug. Indicates whether Secure non-invasive debug features are implemented and enabled.

The value of this field is an IMPLEMENTATION DEFINED choice of:

SNIDMeaning
0b00

Secure non-invasive debug features not implemented.

0b10

Implemented and disabled.

0b11

Implemented and enabled.

All other values are reserved.

When Secure state is implemented, this field reads as 0b10 or 0b11 depending whether Secure non-invasive debug is enabled.

When Secure state is not implemented, this field reads as 0b00.

Access to this field is RO.

SID, bits [5:4]

Secure Invasive Debug. Indicates whether Secure invasive debug features are implemented and enabled.

The value of this field is an IMPLEMENTATION DEFINED choice of:

SIDMeaning
0b00

Secure invasive debug features not implemented.

0b10

Implemented and disabled.

0b11

Implemented and enabled.

All other values are reserved.

This field reads as 0b00.

Access to this field is RO.

NSNID, bits [3:2]

Non-secure Non-invasive Debug. Indicates whether Non-secure non-invasive debug features are implemented and enabled.

The value of this field is an IMPLEMENTATION DEFINED choice of:

NSNIDMeaning
0b00

Non-secure non-invasive debug features not implemented.

0b10

Implemented and disabled.

0b11

Implemented and enabled.

All other values are reserved.

When Non-secure state is implemented, this field reads as 0b11.

When Non-secure state is not implemented, this field reads as 0b00.

Access to this field is RO.

NSID, bits [1:0]

Non-secure Invasive Debug. Indicates whether Non-secure invasive debug features are implemented and enabled.

The value of this field is an IMPLEMENTATION DEFINED choice of:

NSIDMeaning
0b00

Non-secure invasive debug features not implemented.

0b10

Implemented and disabled.

0b11

Implemented and enabled.

All other values are reserved.

This field reads as 0b00.

Access to this field is RO.

Accessing TRCAUTHSTATUS

For implementations that support multiple access mechanisms, different access mechanisms can return different values for reads of TRCAUTHSTATUS if the authentication signals have changed and that change has not yet been synchronized by a Context synchronization event. This scenario can happen if, for example, the external debugger view is implemented separately from the system instruction view to allow for separate power domains, and so observes changes on the signals differently.

External debugger accesses to this register are unaffected by the OS Lock.

TRCAUTHSTATUS can be accessed through the external debug interface:

ComponentOffsetInstance
ETE0xFB8TRCAUTHSTATUS

This interface is accessible as follows: