CNTEL0ACR, Counter-timer EL0 Access Control Register
The CNTEL0ACR characteristics are:
Purpose
An implementation of CNTEL0ACR in the frame at CNTBaseN controls whether the CNTPCT, CNTVCT, CNTFRQ, EL1 Physical Timer, and Virtual Timer registers are visible in the frame at CNTEL0BaseN.
Configuration
The power domain of CNTEL0ACR is IMPLEMENTATION DEFINED.
Implementation of this register is OPTIONAL.
For more information, see 'Power and reset domains for the system level implementation of the Generic Timer'.
Attributes
CNTEL0ACR is a 32-bit register.
Field descriptions
The CNTEL0ACR bit assignments are:
Bits [31:10]
Reserved, RES0.
EL0PTEN, bit [9]
Second view read/write access control for the EL1 Physical Timer registers. This bit controls whether the CNTP_CVAL, CNTP_TVAL, and CNTP_CTL registers in the current CNTBaseN frame are also accessible in the corresponding CNTEL0BaseN frame. The possible values of this bit are:
EL0PTEN | Meaning |
---|---|
0b0 |
No access. Registers are RES0 in the second view. |
0b1 |
Access permitted. If the registers are accessible in the current frame then they are accessible in the second view. |
This field resets to an architecturally UNKNOWN value.
EL0VTEN, bit [8]
Second view read/write access control for the Virtual Timer registers. This bit controls whether the CNTV_CVAL, CNTV_TVAL, and CNTV_CTL registers in the current CNTBaseN frame are also accessible in the corresponding CNTEL0BaseN frame. The possible values of this bit are:
EL0VTEN | Meaning |
---|---|
0b0 |
No access. Registers are RES0 in the second view. |
0b1 |
Access permitted. If the registers are accessible in the current frame then they are accessible in the second view. |
The definition of this bit means that, if the Virtual Timer registers are not implemented in the current CNTBaseN frame, then the Virtual Timer register addresses are RES0 in the corresponding CNTEL0BaseN frame, regardless of the value of this bit.
This field resets to an architecturally UNKNOWN value.
Bits [7:2]
Reserved, RES0.
EL0VCTEN, bit [1]
Second view read access control for CNTVCT and CNTFRQ. The possible values of this bit are:
EL0VCTEN | Meaning |
---|---|
0b0 |
CNTVCT is not visible in the second view. If EL0PCTEN is set to 0, CNTFRQ is not visible in the second view. |
0b1 |
Access permitted. If CNTVCT and CNTFRQ are visible in the current frame then they are visible in the second view. |
This field resets to an architecturally UNKNOWN value.
EL0PCTEN, bit [0]
Second view read access control for CNTPCT and CNTFRQ. The possible values of this bit are:
EL0PCTEN | Meaning |
---|---|
0b0 |
CNTPCT is not visible in the second view. If EL0VCTEN is set to 0, CNTFRQ is not visible in the second view. |
0b1 |
Access permitted. If CNTPCT and CNTFRQ are visible in the current frame then they are visible in the second view. |
This field resets to an architecturally UNKNOWN value.
Accessing the CNTEL0ACR
CNTEL0ACR can be implemented in any implemented CNTBaseN frame.
'CNTCTLBase status and control fields for the CNTBaseN and CNTEL0BaseN frames' describes the status fields that identify whether a CNTBaseN frame is implemented, and for an implemented frame:
- Whether the CNTBaseN frame has virtual timer capability.
- Whether the corresponding CNTEL0BaseN frame is implemented.
- For an implementation that recognizes two Security states, whether the CNTBaseN frame, and any corresponding CNTEL0BaseN frame, is accessible by Non-secure accesses.
If CNTEL0ACR is not implemented in an implemented CNTBaseN frame:
- The register location in that frame is RAZ/WI.
- If the corresponding CNTEL0BaseN frame is implemented, the registers CNTFRQ, CNTP_CTL, CNTP_CVAL, CNTP_TVAL, CNTPCT, CNTV_CTL, CNTV_CVAL, CNTV_TVAL, and CNTVCT are not visible in that frame.
CNTEL0ACR can be accessed through the memory-mapped interfaces:
Component | Frame | Offset | Instance |
---|---|---|---|
Timer | CNTBaseN | 0x014 | CNTEL0ACR |
Accesses on this interface are RW.