[PATCH v2 3/3] irqchip/plic: add support for UltraRISC DP1000 PLIC
Conor Dooley
conor at kernel.org
Tue Oct 14 10:47:26 PDT 2025
On Tue, Oct 14, 2025 at 05:14:17PM +0800, Vivian Wang wrote:
> Hi Conor,
>
> On 10/14/25 02:30, Conor Dooley wrote:
> > On Mon, Oct 13, 2025 at 12:15:38PM +0100, Lucas Zampieri wrote:
> >> From: Charles Mirabile <cmirabil at redhat.com>
> >>
> >> Add a new compatible for the plic found in UltraRISC DP1000 with a quirk to
> >> work around a known hardware bug with IRQ claiming.
> >>
> >> When claiming an interrupt on the DP1000 PLIC all other interrupts must be
> >> disabled before the claim register is accessed to prevent incorrect
> >> handling of the interrupt.
> >>
> >> When the PLIC_QUIRK_CLAIM_REGISTER is present, during plic_handle_irq
> >> the enable state of all interrupts is saved and then all interrupts
> >> except for the first pending one are disabled before reading the claim
> >> register. The interrupts are then restored before further processing of
> >> the claimed interrupt continues.
> >>
> >> The driver matches on "ultrarisc,cp100-plic" to apply the quirk to all
> >> SoCs using UR-CP100 cores, regardless of the specific SoC implementation.
> > Why is that? I expect that you're doing that intentionally given the
> > ultrarisc employee listed as a co-developer, but with only one SoC using
> > this IP core it seems possible that this bug in the hardware could be
> > fixed for other SoCs that are built using this IP core.
> > Is there a plan to, for example, change the core version to UR-CP101
> > when the bug is fixed?
>
> I originally proposed to match on ultrarisc,cp100-plic under the
> assumption that it would be the case.
>
> Furthermore, it is my understanding that if the bug is fixed in, say,
> UR-DP1001, then the PLIC node can simply be
>
> compatible = "ultrarisc,dp1001-plic", "sifive,plic-1.0.0";
>
> I meant my reply that I had assumed this bug was associated with the
> UR-CP100 core, but I should have stated so more clearly.
Ah ye, very true, could be done that way if there's a changed version
that's compliant.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-riscv/attachments/20251014/9ffc429c/attachment.sig>
More information about the linux-riscv
mailing list