Module ruspiro_arch_aarch64::register::el2::hcr_el2 [−][src]
Expand description
HCR_EL2 - Hypervisor Configuration Register
Provides configuration control for virtualization, including whether various Non-secure operations are trapped to EL2.
Usage Constraints
EL0 | EL1 (NS) | EL1(S) | EL2 | EL3(NS) | EL3(S) |
---|---|---|---|---|---|
- | - | - | R/W | R/W | R/W |
Modules
Async Abort and Error exception routing to EL2
Barrier sharability upgrade
disable stage 2 data cache
default cacheable
Forces broadcast
physical FIQ routing to EL2
disable stage 2 instruction cache
phyiscal IRQ routing to EL2
register width control for lower exception levels
trap auxiliry control registers
trap dc zva instruction
trap generel exceptions
trap ID group 0 registers
trap ID group 1 registers
trap ID group 2 registers
trap ID group 3 registers
trap implementation depended instructions
trap data or unified cache maintenance instructions to Point of Coherency
trap data or nuified cache maintenance instructions to Point of Unification
trap reads of virtual memory controls
trap SMC instruction
trap data or unified cache maintenenace instructions by set or way
trap ttlb maintenance instructions
trap virtual memory control
trap WFE if there is no pending WFE event
trap WFI if there is no pending WFI event
virtual FIQ pending
virtual IRQ pending
enable second stage of translation
virtual system error/async abort pending
Functions
Read the raw register contents using the appropriate assembly
Read the contents of a specific RegisterField
. The returned value is already shifted
to the right to start at bit 0. This means for a field value stored in the register at
bit offset 3, the returned value is already shifted by 3 bits to the right.
For example:
If register raw value is 0b10110, the returned value for a register field specified as
bits[4:3] would be 0b01. No further “masking” or “bit-shift” required
Write the raw register contents using the appropriate contents
Update the contents of a register from the RegisterFieldValue
given. This will
only change the bits the RegisterField
definition specifies.