public inbox for opensbi@lists.infradead.org
 help / color / mirror / Atom feed
* [PATCH 0/8] Extend irqchip framework for M-mode interrupts
@ 2026-02-07 10:25 Anup Patel
  2026-02-07 10:25 ` [PATCH 1/8] lib: sbi_irqchip: Use chip as variable name for irqchip device Anup Patel
                   ` (7 more replies)
  0 siblings, 8 replies; 26+ messages in thread
From: Anup Patel @ 2026-02-07 10:25 UTC (permalink / raw)
  To: Atish Patra
  Cc: Andrew Jones, Raymond Mao, Dave Patel, Samuel Holland, Anup Patel,
	opensbi, Anup Patel

To handle interrupts in M-mode, the OpenSBI irqchip framework
needs to support:
1) Multiple interrupt controllers where each targets a
   subset of harts
2) Hierarchical interrupt controllers (e.g. APLIC + IMSIC)
3) Registering handler for hardware interrupt of a
   particular interrupt controller out of multiple
   multiple interrupt controllers

The needs to be achieved without over-consuming memory.

These patches can also be found in irqchip_imp_v1 branch
at: https://github.com/avpatel/opensbi.git

Anup Patel (8):
  lib: sbi_irqchip: Use chip as variable name for irqchip device
  lib: sbi_irqchip: Rename irq_handle() callback to process_hwirqs()
  lib: utils/irqchip: Fix context_map init in
    irqchip_plic_update_context_map()
  lib: utils/irqchip: Add IDC to hartindex map in struct aplic_data
  lib: sbi_irqchip: Support irqchip device targetting subset of harts
  lib: utils/irqchip: Add unique_id to plic, aplic, and imsic data
  lib: sbi_irqchip: Associate 32-bit unique ID for each irqchip device
  lib: sbi_irqchip: Allow registering interrupt handlers

 include/sbi/sbi_irqchip.h                |  74 ++++++-
 include/sbi_utils/irqchip/aplic.h        |   2 +
 include/sbi_utils/irqchip/imsic.h        |   1 +
 include/sbi_utils/irqchip/plic.h         |   1 +
 lib/sbi/sbi_irqchip.c                    | 267 +++++++++++++++++++++--
 lib/utils/fdt/fdt_helper.c               |   3 +
 lib/utils/irqchip/aplic.c                |  14 +-
 lib/utils/irqchip/fdt_irqchip_aplic.c    |  54 ++++-
 lib/utils/irqchip/fdt_irqchip_plic.c     |   5 +
 lib/utils/irqchip/imsic.c                |  19 +-
 lib/utils/irqchip/plic.c                 |   7 +-
 platform/generic/openhwgroup/ariane.c    |   1 +
 platform/generic/openhwgroup/openpiton.c |   1 +
 platform/kendryte/k210/platform.c        |   1 +
 platform/nuclei/ux600/platform.c         |   1 +
 platform/template/platform.c             |   1 +
 16 files changed, 424 insertions(+), 28 deletions(-)

-- 
2.43.0


-- 
opensbi mailing list
opensbi@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/opensbi

^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, other threads:[~2026-02-13  4:01 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-07 10:25 [PATCH 0/8] Extend irqchip framework for M-mode interrupts Anup Patel
2026-02-07 10:25 ` [PATCH 1/8] lib: sbi_irqchip: Use chip as variable name for irqchip device Anup Patel
2026-02-07 10:25 ` [PATCH 2/8] lib: sbi_irqchip: Rename irq_handle() callback to process_hwirqs() Anup Patel
2026-02-07 10:25 ` [PATCH 3/8] lib: utils/irqchip: Fix context_map init in irqchip_plic_update_context_map() Anup Patel
2026-02-07 10:25 ` [PATCH 4/8] lib: utils/irqchip: Add IDC to hartindex map in struct aplic_data Anup Patel
2026-02-09 16:50   ` Andrew Jones
2026-02-13  3:57     ` Anup Patel
2026-02-07 10:25 ` [PATCH 5/8] lib: sbi_irqchip: Support irqchip device targetting subset of harts Anup Patel
2026-02-09 16:50   ` Andrew Jones
2026-02-13  3:59     ` Anup Patel
2026-02-09 17:03   ` Samuel Holland
2026-02-13  4:01     ` Anup Patel
2026-02-09 20:25   ` Raymond Mao
2026-02-10 16:09     ` Anup Patel
2026-02-11 15:02       ` Raymond Mao
2026-02-11 15:43         ` Anup Patel
2026-02-11 17:49           ` Raymond Mao
2026-02-07 10:26 ` [PATCH 6/8] lib: utils/irqchip: Add unique_id to plic, aplic, and imsic data Anup Patel
2026-02-07 10:26 ` [PATCH 7/8] lib: sbi_irqchip: Associate 32-bit unique ID for each irqchip device Anup Patel
2026-02-07 10:26 ` [PATCH 8/8] lib: sbi_irqchip: Allow registering interrupt handlers Anup Patel
2026-02-09 16:52   ` Andrew Jones
2026-02-09 17:19   ` Samuel Holland
2026-02-09 20:34   ` Raymond Mao
     [not found]   ` <CAMkFH19feRsme6Mfr1vQ7hSnr2yhFMivNpGkwfTT2uSV3ojnjg@mail.gmail.com>
2026-02-10 16:39     ` Anup Patel
2026-02-10 16:57       ` Raymond Mao
2026-02-11 17:30         ` Anup Patel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox