The GITS_CTLR characteristics are:
Controls the operation of an ITS.
This register is part of the GIC ITS registers functional group.
This register is accessible as follows:
Security disabled | Secure | Non-secure |
---|---|---|
RW | RW | RW |
Some or all RW fields of this register have defined reset values.
The ITS_Number (bits [7:4]) and bit [1] fields apply only in GICv4 implementations, and are RES0 in GICv3 implementations.
GITS_CTLR is a 32-bit register.
The GITS_CTLR 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 |
Quiescent | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | ITS_Number | 0 | 0 | ImDe | Enabled |
Read-only. Indicates completion of all ITS operations when GITS_CTLR.Enabled == 0.
Quiescent | Meaning |
---|---|
0 |
The ITS is not quiescent and cannot be powered down. |
1 |
The ITS is quiescent and can be powered down. |
For the ITS to be quiescent, there must be no transactions in progress. In addition, all operations required to ensure that mapping data is consistent with external memory must be complete.
In distributed GIC implementations, this bit is set to 1 only after the ITS forwards any operations that have not yet been completed to the Redistributors and receives confirmation that all such operations have reached the appropriate Redistributor.
When GITS_CTLR.Enabled==1 the value of GITS_CTLR.Quiescent is UNKNOWN.
When this register has an architecturally-defined reset value, this field resets to 1.
Reserved, RES0.
In GICv3 implementations this field is RES0.
In GICv4 implementations with more than one ITS instance, this field indicates the ITS number for use with VMOVP.
It is IMPLEMENTATION DEFINED whether this field is programmable or RO.
If this field is programmable, changing this field when GITS_CTLR.Quiescent==0 or GITS_CTLR.Enabled==1 is UNPREDICTABLE.
When this register has an architecturally-defined reset value, if this field is implemented as an RW field, it resets to a value that is architecturally UNKNOWN.
Reserved, RES0.
In GICv3 implementations this bit is RES0.
In GICv4 implementations this bit is IMPLEMENTATION DEFINED.
When this register has an architecturally-defined reset value, if this field is implemented as an RW field, it resets to 0.
Controls whether the ITS is enabled:
Enabled | Meaning |
---|---|
0 |
The ITS is not enabled. Writes to GITS_TRANSLATER are ignored and no further command queue entries are processed. |
1 |
The ITS is enabled. Writes to GITS_TRANSLATER result in interrupt translations and the command queue is processed. |
If a write to this register changes this field from 1 to 0, the ITS must ensure that both:
When this register has an architecturally-defined reset value, this field resets to 0.
GITS_CTLR can be accessed through its memory-mapped interface:
Component | Offset |
---|---|
GIC ITS control | 0x0000 |
02/05/2017 15:43
Copyright © 2010-2017 ARM Limited or its affiliates. All rights reserved. This document is Non-Confidential.