The GICD_SGIR characteristics are:
Controls the generation of SGIs.
This register is available in all configurations of the GIC. If the GIC supports two Security states this register is Common.
GICD_SGIR is a 32-bit register.
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 |
RES0 | TargetListFilter | CPUTargetList | NSATT | RES0 | INTID |
Reserved, RES0.
Determines how the Distributor processes the requested SGI.
TargetListFilter | Meaning |
---|---|
0b00 |
Forward the interrupt to the CPU interfaces specified by GICD_SGIR.CPUTargetList. |
0b01 |
Forward the interrupt to all CPU interfaces except that of the PE that requested the interrupt. |
0b10 |
Forward the interrupt only to the CPU interface of the PE that requested the interrupt. |
0b11 |
Reserved. |
When GICD_SGIR.TargetListFilter is 0b00, this field defines the CPU interfaces to which the Distributor must forward the interrupt.
Each bit of the field refers to the corresponding CPU interface. For example, CPUTargetList[0] corresponds to interface 0. Setting a bit to 1 indicates that the interrupt must be forwarded to the corresponding interface.
If this field is 0b00000000 when GICD_SGIR.TargetListFilter is 0b00, the Distributor does not forward the interrupt to any CPU interface.
Specifies the required group of the SGI.
NSATT | Meaning |
---|---|
0b0 |
Forward the SGI specified in the INTID field to a specified CPU interface only if the SGI is configured as Group 0 on that interface. |
0b1 |
Forward the SGI specified in the INTID field to a specified CPU interface only if the SGI is configured as Group 1 on that interface. |
This field is writable only by a Secure access. Non-secure accesses can also generate Group 0 interrupts, if allowed to do so by GICD_NSACR0. Otherwise, Non-secure writes to GICD_SGIR generate an SGI only if the specified SGI is programmed as Group 1, regardless of the value of bit [15] of the write.
Reserved, RES0.
The INTID of the SGI to forward to the specified CPU interfaces.
This register is used only when affinity routing is not enabled. When affinity routing is enabled, this register is RES0.
It is IMPLEMENTATION DEFINED whether this register has any effect when the forwarding of interrupts by the Distributor is disabled by GICD_CTLR.
Component | Frame | Offset | Instance |
---|---|---|---|
GIC Distributor | Dist_base | 0x0F00 | GICD_SGIR |
Accesses on this interface are WO.
26/03/2024 09:49; 67c0ae5282a7629ba0ea0ba7267b43cd4f7939f6
Copyright © 2010-2024 Arm Limited or its affiliates. All rights reserved. This document is Non-Confidential.