GICR_ICPENDR0, Interrupt Clear-Pending Register 0
The GICR_ICPENDR0 characteristics are:
Removes the pending state from the corresponding SGI or PPI.
RW fields in this register reset to architecturally UNKNOWN values.
A copy of this register is provided for each Redistributor.
GICR_ICPENDR0 is a 32-bit register.
The GICR_ICPENDR0 bit assignments are:
|Clear_pending_bit<x>, bit [x], for x = 0 to 31|
Clear_pending_bit<x>, bit [x], for x = 0 to 31
Removes the pending state from interrupt number x. Reads and writes have the following behavior:
If read, indicates that the corresponding interrupt is not pending.
If written, has no effect.
If read, indicates that the corresponding interrupt is pending, or active and pending.
If written, changes the state of the corresponding interrupt from pending to inactive, or from active and pending to active. This has no effect in the following cases:
This field resets to an architecturally UNKNOWN value.
Accessing the GICR_ICPENDR0
When affinity routing is not enabled for the Security state of an interrupt in GICR_ICPENDR0, the corresponding bit is RAZ/WI and equivalent functionality is provided by GICD_ICPENDR<n> with n=0.
This register only applies to SGIs (bits [15:0]) and PPIs (bits [31:16]). For SPIs, this functionality is provided by GICD_ICENABLER<n>.
When GICD_CTLR.DS == 0, bits corresponding to Secure SGIs and PPIs are RAZ/WI to Non-secure accesses.
GICR_ICPENDR0 can be accessed through the memory-mapped interfaces:
This interface is accessible as follows:
- When GICD_CTLR.DS == 0b0 accesses to this register are RW.
- When IsAccessSecure() accesses to this register are RW.
- When !IsAccessSecure() accesses to this register are RW.