System Control
ARM DDI 0500D
Copyright © 2013-2014 ARM. All rights reserved.
4-213
ID021414
Non-Confidential
Table 4-202 HCR bit assignments
Bits
Name
Function
[31]
-
Reserved,
RES
0.
[30]
TRVM
Trap Read of Virtual Memory controls.
When 1, this causes Reads to the EL1 virtual memory control registers from EL1 to be trapped to EL2. This covers
the following registers:
SCTLR, TTBR0, TTBR1, TTBCR, DACR, DFSR, IFSR, DFAR, IFAR, ADFSR, AIFSR, PRRR/MAIR0,
NMRR/MAIR1, AMAIR0, AMAIR1, and CONTEXTIDR.
The reset value is 0.
[29]
HCD
Hyp Call Disable. The HCD value is:
0
HVC is enabled at EL1 or EL2.
1
HVC is
UNDEFINED
at all exception levels.
[28]
-
Reserved,
RES
0.
[27]
TGE
Trap General Exceptions. If this bit is set, and SCR_EL3.NS is set, then:
All exceptions that would be routed to EL1 are routed to EL2.
•
The SCTLR.M bit is treated as 0 regardless of its actual state, other than for the purpose of reading the bit.
•
The HCR.FMO, IMO, and AMO bits are treated as 1 regardless of their actual state, other than for the
purpose of reading the bits.
•
All virtual interrupts are disabled.
•
Any implementation defined mechanisms for signalling virtual interrupts are disabled.
•
An exception return to EL1 is treated as an illegal exception return.
Additionally, if HCR.TGE is 1, the HDCR.{TDRA,TDOSA,TDA} bits are ignored and the processor behaves as
if they are set to 1, other than for the value read back from HDCR.
The reset value is 0.
[26]
TVM
Trap Virtual Memory controls. When 1, this causes Writes to the EL1 virtual memory control registers from EL1
to be trapped to EL2. This covers the following registers:
SCTLR, TTBR0, TTBR1, TTBCR, DACR, DFSR, IFSR, DFAR, IFAR, ADFSR, AIFSR, PRRR/MAIR0,
NMRR/MAIR1, AMAIR0, AMAIR1, and CONTEXTIDR.
The reset value is 0.
[25]
TTLB
Trap TLB maintenance instructions. When
1
, this causes TLB maintenance instructions executed from EL1 that
are not
UNDEFINED
to be trapped to EL2. This covers the following instructions:
TLBIALLIS
,
TLBIMVAIS
,
TLBIASIDIS
,
TLBIMVAAIS
,
TLBIALL
,
TLBIMVA
,
TLBIASID
,
TLBIMVAA
,
TLBIMVALIS
,
TLBIMVAALIS
,
TLBIMVAL
, and
TLBIMVAAL
.
The reset value is 0.
[24]
TPU
Trap Cache maintenance instructions to Point of Unification. When 1, this causes Cache maintenance instructions
to the point of unification executed from EL1 or EL0 that are not
UNDEFINED
to be trapped to EL2. This covers
the following instructions:
ICIMVAU
,
ICIALLU
,
ICIALLUIS
, and
DCCMVAU
.
The reset value is 0.
[23]
TPC
Trap Data/Unified Cache maintenance operations to Point of Coherency. When 1, this causes Data or Unified
Cache maintenance instructions by address to the point of coherency executed from EL1 or EL0 that are not
UNDEFINED
to be trapped to EL2. This covers the following instructions:
DCIMVAC
,
DCCIMVAC
, and
DCCMVAC
.
The reset value is 0.