Re: [PATCH v2 3/5] irqchip: RISC-V Local Interrupt Controller Driver

From: Christoph Hellwig
Date: Mon Sep 10 2018 - 12:13:36 EST

On Mon, Sep 10, 2018 at 07:59:15PM +0530, Anup Patel wrote:
> > Yes. external is chained and IPI is still handled explicitly.
> On riscv64, there are 64 local interrupts (i.e. per-CPU interrupts).

There aren't. There are 9 right now, which are your three below:

> Three of these local interrupts have clearly defined use:
> 1. Software interrupt (inter-processor interrupt)
> 2. External interrupt (interrupt from PLIC)
> 3. Timer interrupt (interrupt from per-CPU timer)

multiplied by 3 for machine, supervisor, user.

> Other local interrupts are available for future use.

The others aren't even defined as other interrupts, but just reserved
fields. And only one bit per privilege level would even fit into the
encoding scheme used right now.