[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v3 04/11] xen/arm/irq: add handling for IRQs in the eSPI range





On 26.08.25 17:05, Leonid Komarianskyi wrote:

Hello Leonid


Currently, Xen does not support eSPI interrupts, leading
to a data abort when such interrupts are defined in the DTS.

This patch introduces a separate array to initialize up to
1024 interrupt descriptors in the eSPI range and adds the
necessary defines and helper function. These changes lay the
groundwork for future implementation of full eSPI interrupt
support. As this GICv3.1 feature is not required by all vendors,
all changes are guarded by ifdefs, depending on the corresponding
Kconfig option.

Signed-off-by: Leonid Komarianskyi <leonid_komarianskyi@xxxxxxxx>

---
Changes in V2:
- use (ESPI_MAX_INTID + 1) instead of (ESPI_BASE_INTID + NR_IRQS)
- remove unnecessary comment for nr_irqs initialization

Changes in V3:
- introduced a new define NR_ESPI_IRQS to avoid confusion, like in the
   case of using NR_IRQS for espi_desc array
- implemented helper functions espi_to_desc and init_espi_data to make
   it possible to add stubs with the same name, and as a result, reduce
   the number of #ifdefs
- change CONFIG_GICV3_ESPI default value to n
---
  xen/arch/arm/Kconfig           |  9 ++++++
  xen/arch/arm/include/asm/irq.h | 26 +++++++++++++++++
  xen/arch/arm/irq.c             | 52 +++++++++++++++++++++++++++++++++-
  3 files changed, 86 insertions(+), 1 deletion(-)

diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 17df147b25..5813e5b267 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -135,6 +135,15 @@ config GICV3
          Driver for the ARM Generic Interrupt Controller v3.
          If unsure, use the default setting.
+config GICV3_ESPI
+       bool "Extended SPI range support"
+       depends on GICV3 && !NEW_VGIC
+       default n

Please omit redundant line

+       help
+         Allow Xen and domains to use interrupt numbers from the extended SPI
+         range, from 4096 to 5119. This feature is introduced in GICv3.1
+         architecture.
+

[snip]





 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.