The E31 Core Complex supports setting of an interrupt priority threshold via the
threshold
reg-
ister. The
threshold
is a
WARL
field, where the E31 Core Complex supports a maximum
threshold of 7.
The E31 Core Complex masks all PLIC interrupts of a priority less than or equal to
threshold
.
For example, a
threshold
value of zero permits all interrupts with non-zero priority, whereas a
value of 7 masks all interrupts.
PLIC Interrupt Priority Threshold Register (
threshold
)
Base Address
0x0C20_0000
[2:0]
Threshold
RW
X
Sets the priority threshold
[31:3]
Reserved
RO
0
Table 19:
PLIC Interrupt Threshold Register
A E31 Core Complex hart can perform an interrupt claim by reading the
claim/complete
regis-
ter (Table 20), which returns the ID of the highest-priority pending interrupt or zero if there is no
pending interrupt. A successful claim also atomically clears the corresponding pending bit on
the interrupt source.
A E31 Core Complex hart can perform a claim at any time, even if the MEIP bit in its
mip
7) register is not set.
The claim operation is not affected by the setting of the priority threshold register.
A E31 Core Complex hart signals it has completed executing an interrupt handler by writing the
interrupt ID it received from the claim to the
claim/complete
register (Table 20). The PLIC
does not check whether the completion ID is the same as the last claim ID for that target. If the
completion ID does not match an interrupt source that is currently enabled for the target, the
completion is silently ignored.
Copyright © 2017–2018, SiFive Inc. All rights reserved.
28