PMCNTENCLR_EL0, Performance Monitors Count Enable Clear register
The PMCNTENCLR_EL0 characteristics are:
Purpose
Disables the Cycle Count Register, PMCCNTR_EL0, and any implemented event counters PMEVCNTR<n>. Reading this register shows which counters are enabled.
Configuration
External register PMCNTENCLR_EL0 bits [31:0] are architecturally mapped to AArch64 System register PMCNTENCLR_EL0[31:0] .
External register PMCNTENCLR_EL0 bits [31:0] are architecturally mapped to AArch32 System register PMCNTENCLR[31:0] .
PMCNTENCLR_EL0 is in the Core power domain.
Attributes
PMCNTENCLR_EL0 is a 32-bit register.
Field descriptions
The PMCNTENCLR_EL0 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 |
C | P<n>, bit [n] |
C, bit [31]
PMCCNTR_EL0 disable bit. Disables the cycle counter register. Possible values are:
C | Meaning |
---|---|
0b0 |
When read, means the cycle counter is disabled. When written, has no effect. |
0b1 |
When read, means the cycle counter is enabled. When written, disables the cycle counter. |
On a Warm reset, this field resets to an architecturally UNKNOWN value.
P<n>, bit [n], for n = 0 to 30
Event counter disable bit for PMEVCNTR<n>_EL0.
If PMCFGR.N is less than 31, bits [30:PMCFGR.N] are RAZ/WI.
P<n> | Meaning |
---|---|
0b0 |
When read, means that PMEVCNTR<n>_EL0 is disabled. When written, has no effect. |
0b1 |
When read, means that PMEVCNTR<n>_EL0 is enabled. When written, disables PMEVCNTR<n>_EL0. |
On a Warm reset, this field resets to an architecturally UNKNOWN value.
Accessing the PMCNTENCLR_EL0
SoftwareLockStatus() depends on the type of access attempted and AllowExternalPMUAccess() has a new definition from Armv8.4. Refer to the Pseudocode definitions for more information.
PMCNTENCLR_EL0 can be accessed through the external debug interface:
Component | Offset | Instance |
---|---|---|
PMU | 0xC20 | PMCNTENCLR_EL0 |
This interface is accessible as follows:
- When IsCorePowered(), !DoubleLockStatus(), !OSLockStatus(), AllowExternalPMUAccess() and SoftwareLockStatus() accesses to this register are RO.
- When IsCorePowered(), !DoubleLockStatus(), !OSLockStatus(), AllowExternalPMUAccess() and !SoftwareLockStatus() accesses to this register are RW.
- Otherwise accesses to this register generate an error response.