Message ID | 20240501121742.1215792-8-sunilvl@ventanamicro.com |
---|---|
State | Superseded |
Headers | show |
Series | RISC-V: ACPI: Add external interrupt controller support | expand |
On Wed, May 01, 2024 at 05:47:32PM +0530, Sunil V L wrote: > Add the IRQ model for RISC-V INTC so that acpi_set_irq_model can use this > for RISC-V. > > Signed-off-by: Sunil V L <sunilvl@ventanamicro.com> > --- > drivers/acpi/bus.c | 3 +++ > include/linux/acpi.h | 1 + > 2 files changed, 4 insertions(+) > > diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c > index 17ee483c3bf4..6739db258a95 100644 > --- a/drivers/acpi/bus.c > +++ b/drivers/acpi/bus.c > @@ -1190,6 +1190,9 @@ static int __init acpi_bus_init_irq(void) > case ACPI_IRQ_MODEL_LPIC: > message = "LPIC"; > break; > + case ACPI_IRQ_MODEL_RINTC: > + message = "RINTC"; > + break; > default: > pr_info("Unknown interrupt routing model\n"); > return -ENODEV; > diff --git a/include/linux/acpi.h b/include/linux/acpi.h > index 846a4001b5e0..c1a01fd02873 100644 > --- a/include/linux/acpi.h > +++ b/include/linux/acpi.h > @@ -107,6 +107,7 @@ enum acpi_irq_model_id { > ACPI_IRQ_MODEL_PLATFORM, > ACPI_IRQ_MODEL_GIC, > ACPI_IRQ_MODEL_LPIC, > + ACPI_IRQ_MODEL_RINTC, Is the ACPI_IRQ_MODEL_RINTC value documented somewhere? Maybe an ECR for the ACPI spec? acpi_bus_init_irq() is going to pass ACPI_IRQ_MODEL_RINTC to _PIC, and ACPI r6.5, sec 5.8.1 only mentions the ACPI_IRQ_MODEL_PIC, ACPI_IRQ_MODEL_IOAPIC, and ACPI_IRQ_MODEL_IOSAPIC values. Even the existing ACPI_IRQ_MODEL_PLATFORM, ACPI_IRQ_MODEL_GIC, and ACPI_IRQ_MODEL_LPIC values aren't mentioned in ACPI r6.5. > ACPI_IRQ_MODEL_COUNT > }; > > -- > 2.40.1 >
On Thu, May 23, 2024 at 04:59:03PM -0500, Bjorn Helgaas wrote: > On Wed, May 01, 2024 at 05:47:32PM +0530, Sunil V L wrote: > > Add the IRQ model for RISC-V INTC so that acpi_set_irq_model can use this > > for RISC-V. > > > > Signed-off-by: Sunil V L <sunilvl@ventanamicro.com> > > --- > > drivers/acpi/bus.c | 3 +++ > > include/linux/acpi.h | 1 + > > 2 files changed, 4 insertions(+) > > > > diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c > > index 17ee483c3bf4..6739db258a95 100644 > > --- a/drivers/acpi/bus.c > > +++ b/drivers/acpi/bus.c > > @@ -1190,6 +1190,9 @@ static int __init acpi_bus_init_irq(void) > > case ACPI_IRQ_MODEL_LPIC: > > message = "LPIC"; > > break; > > + case ACPI_IRQ_MODEL_RINTC: > > + message = "RINTC"; > > + break; > > default: > > pr_info("Unknown interrupt routing model\n"); > > return -ENODEV; > > diff --git a/include/linux/acpi.h b/include/linux/acpi.h > > index 846a4001b5e0..c1a01fd02873 100644 > > --- a/include/linux/acpi.h > > +++ b/include/linux/acpi.h > > @@ -107,6 +107,7 @@ enum acpi_irq_model_id { > > ACPI_IRQ_MODEL_PLATFORM, > > ACPI_IRQ_MODEL_GIC, > > ACPI_IRQ_MODEL_LPIC, > > + ACPI_IRQ_MODEL_RINTC, > > Is the ACPI_IRQ_MODEL_RINTC value documented somewhere? Maybe an ECR > for the ACPI spec? > > acpi_bus_init_irq() is going to pass ACPI_IRQ_MODEL_RINTC to _PIC, and > ACPI r6.5, sec 5.8.1 only mentions the ACPI_IRQ_MODEL_PIC, > ACPI_IRQ_MODEL_IOAPIC, and ACPI_IRQ_MODEL_IOSAPIC values. > > Even the existing ACPI_IRQ_MODEL_PLATFORM, ACPI_IRQ_MODEL_GIC, and > ACPI_IRQ_MODEL_LPIC values aren't mentioned in ACPI r6.5. > Yeah, I also noticed it. I don't know the history behind this. Rafael or someone else might have better knowledge. IMO, it is better to update ACPI spec _PIC with all these values. If I don't see any objections, I will raise an ECR to update the spec. Thanks, Sunl
diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c index 17ee483c3bf4..6739db258a95 100644 --- a/drivers/acpi/bus.c +++ b/drivers/acpi/bus.c @@ -1190,6 +1190,9 @@ static int __init acpi_bus_init_irq(void) case ACPI_IRQ_MODEL_LPIC: message = "LPIC"; break; + case ACPI_IRQ_MODEL_RINTC: + message = "RINTC"; + break; default: pr_info("Unknown interrupt routing model\n"); return -ENODEV; diff --git a/include/linux/acpi.h b/include/linux/acpi.h index 846a4001b5e0..c1a01fd02873 100644 --- a/include/linux/acpi.h +++ b/include/linux/acpi.h @@ -107,6 +107,7 @@ enum acpi_irq_model_id { ACPI_IRQ_MODEL_PLATFORM, ACPI_IRQ_MODEL_GIC, ACPI_IRQ_MODEL_LPIC, + ACPI_IRQ_MODEL_RINTC, ACPI_IRQ_MODEL_COUNT };
Add the IRQ model for RISC-V INTC so that acpi_set_irq_model can use this for RISC-V. Signed-off-by: Sunil V L <sunilvl@ventanamicro.com> --- drivers/acpi/bus.c | 3 +++ include/linux/acpi.h | 1 + 2 files changed, 4 insertions(+)