All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v6 00/10] RISC-V IMSIC driver improvements
@ 2025-02-17  8:56 ` Anup Patel
  0 siblings, 0 replies; 56+ messages in thread
From: Anup Patel @ 2025-02-17  8:56 UTC (permalink / raw)
  To: Thomas Gleixner, Ingo Molnar, Borislav Petkov, Dave Hansen, x86
  Cc: hpa, Marc Zyngier, Shawn Guo, Sascha Hauer,
	Pengutronix Kernel Team, Andrew Lunn, Gregory Clement,
	Sebastian Hesselbarth, Palmer Dabbelt, Paul Walmsley, Atish Patra,
	Andrew Jones, Sunil V L, Anup Patel, linux-riscv,
	linux-arm-kernel, linux-kernel, imx, Anup Patel

This series is based on recent discussion on LKML:
https://lore.kernel.org/lkml/20241114161845.502027-18-ajones@ventanamicro.com/

It primarily focuses on moving to RISC-V IMSIC driver use common MSI
lib and GENERIC_PENDING_IRQ.

PATCH1 & PATCH2: Preparatory patches
PATCH3: Updates IMSIC driver to use MSI lib
PATCH4 to PATCH5: Preparatory patches for moving to GENERIC_PENDING_IRQ
PATCH6 to PATCH10: Patches to use GENERIC_PENDING_IRQ in IMSIC driver

These patches can also be found in the riscv_imsic_imp_v6 branch at:
https://github.com/avpatel/linux.git

Changes since v5:
 - Rebased upon Linux-6.14-rc1
 - Drop PATCH6 since it is already merged
 - Update commit description of PATCH1

Changes since v4:
 - Updated PATCH4 with better irq_force_complete_move() implementation
   provided by Thomas.

Changes since v3:
 - Dropped PATCH1 of v3 series and updated last patch of this series
   to handle the intermediate state for non-atomic MSI update.
 - Added new PATCH6 in this series to remove stale kconfig option
   GENERIC_PENDING_IRQ_CHIPFLAGS.

Changes since v2:
 - Rebased upon Linux-6.14-rc1
 - Dropped PATCH5 of v2 series since that patch is already merged

Changes since v1:
 - Changed series subject
 - Expand this series to use GENERIC_PENDING_IRQ in IMSIC driver

Andrew Jones (1):
  irqchip/riscv-imsic: Set irq_set_affinity for IMSIC base

Anup Patel (6):
  genirq: Introduce irq_can_move_in_process_context()
  RISC-V: Select GENERIC_PENDING_IRQ
  irqchip/riscv-imsic: Separate next and previous pointers in IMSIC
    vector
  irqchip/riscv-imsic: Implement irq_force_complete_move() for IMSIC
  irqchip/riscv-imsic: Replace hwirq with irq in the IMSIC vector
  irqchip/riscv-imsic: Special handling for non-atomic device MSI update

Thomas Gleixner (3):
  irqchip/irq-msi-lib: Optionally set default irq_eoi/irq_ack
  irqchip/riscv-imsic: Move to common MSI lib
  genirq: Introduce common irq_force_complete_move() implementation

 arch/riscv/Kconfig                         |   1 +
 arch/x86/kernel/apic/vector.c              | 231 ++++++++++-----------
 drivers/irqchip/Kconfig                    |   8 +-
 drivers/irqchip/irq-gic-v2m.c              |   1 +
 drivers/irqchip/irq-imx-mu-msi.c           |   1 +
 drivers/irqchip/irq-msi-lib.c              |  11 +-
 drivers/irqchip/irq-mvebu-gicp.c           |   1 +
 drivers/irqchip/irq-mvebu-odmi.c           |   1 +
 drivers/irqchip/irq-mvebu-sei.c            |   1 +
 drivers/irqchip/irq-riscv-imsic-early.c    |  14 +-
 drivers/irqchip/irq-riscv-imsic-platform.c | 197 +++++++++---------
 drivers/irqchip/irq-riscv-imsic-state.c    | 152 ++++++++++----
 drivers/irqchip/irq-riscv-imsic-state.h    |  12 +-
 include/linux/irq.h                        |   7 +-
 include/linux/msi.h                        |  11 +
 kernel/irq/internals.h                     |   2 +
 kernel/irq/migration.c                     |  21 ++
 17 files changed, 389 insertions(+), 283 deletions(-)

-- 
2.43.0


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

end of thread, other threads:[~2025-04-04 15:14 UTC | newest]

Thread overview: 56+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-17  8:56 [PATCH v6 00/10] RISC-V IMSIC driver improvements Anup Patel
2025-02-17  8:56 ` Anup Patel
2025-02-17  8:56 ` [PATCH v6 01/10] irqchip/riscv-imsic: Set irq_set_affinity for IMSIC base Anup Patel
2025-02-17  8:56   ` Anup Patel
2025-02-18  9:03   ` [tip: irq/drivers] irqchip/riscv-imsic: Set irq_set_affinity() " tip-bot2 for Andrew Jones
2025-02-17  8:56 ` [PATCH v6 02/10] irqchip/irq-msi-lib: Optionally set default irq_eoi/irq_ack Anup Patel
2025-02-17  8:56   ` Anup Patel
2025-02-18  9:03   ` [tip: irq/drivers] irqchip/irq-msi-lib: Optionally set default irq_eoi()/irq_ack() tip-bot2 for Thomas Gleixner
2025-02-19 14:41   ` [PATCH v6 02/10] irqchip/irq-msi-lib: Optionally set default irq_eoi/irq_ack Mark Brown
2025-02-19 14:41     ` Mark Brown
2025-02-20 13:54     ` Thomas Gleixner
2025-02-20 13:54       ` Thomas Gleixner
2025-02-20 14:21       ` Thomas Gleixner
2025-02-20 14:21         ` Thomas Gleixner
2025-02-20 14:26   ` [tip: irq/drivers] irqchip/irq-msi-lib: Optionally set default irq_eoi()/irq_ack() tip-bot2 for Thomas Gleixner
2025-02-17  8:56 ` [PATCH v6 03/10] irqchip/riscv-imsic: Move to common MSI lib Anup Patel
2025-02-17  8:56   ` Anup Patel
2025-02-18  9:03   ` [tip: irq/drivers] irqchip/riscv-imsic: Move to common MSI library tip-bot2 for Thomas Gleixner
2025-02-20 14:26   ` tip-bot2 for Thomas Gleixner
2025-02-17  8:56 ` [PATCH v6 04/10] genirq: Introduce common irq_force_complete_move() implementation Anup Patel
2025-02-17  8:56   ` Anup Patel
2025-02-18  9:03   ` [tip: irq/drivers] " tip-bot2 for Thomas Gleixner
2025-02-20 14:26   ` tip-bot2 for Thomas Gleixner
2025-04-03 13:13   ` [PATCH v6 04/10] " Frank Scheiner
2025-04-03 13:13     ` Frank Scheiner
2025-04-03 15:03     ` Thomas Gleixner
2025-04-03 15:03       ` Thomas Gleixner
2025-04-03 17:46       ` Frank Scheiner
2025-04-03 17:46         ` Frank Scheiner
2025-04-04 14:51         ` [PATCH] genirq/migration: Use irqd_get_parent_data() in irq_force_complete_move() Thomas Gleixner
2025-04-04 14:51           ` Thomas Gleixner
2025-04-04 15:14           ` [tip: irq/urgent] " tip-bot2 for Thomas Gleixner
2025-02-17  8:56 ` [PATCH v6 05/10] genirq: Introduce irq_can_move_in_process_context() Anup Patel
2025-02-17  8:56   ` Anup Patel
2025-02-18  9:03   ` [tip: irq/drivers] " tip-bot2 for Anup Patel
2025-02-20 14:26   ` tip-bot2 for Anup Patel
2025-02-17  8:56 ` [PATCH v6 06/10] RISC-V: Select GENERIC_PENDING_IRQ Anup Patel
2025-02-17  8:56   ` Anup Patel
2025-02-18  9:03   ` [tip: irq/drivers] RISC-V: Select CONFIG_GENERIC_PENDING_IRQ tip-bot2 for Anup Patel
2025-02-20 14:26   ` tip-bot2 for Anup Patel
2025-02-17  8:56 ` [PATCH v6 07/10] irqchip/riscv-imsic: Separate next and previous pointers in IMSIC vector Anup Patel
2025-02-17  8:56   ` Anup Patel
2025-02-18  9:03   ` [tip: irq/drivers] " tip-bot2 for Anup Patel
2025-02-20 14:26   ` tip-bot2 for Anup Patel
2025-02-17  8:56 ` [PATCH v6 08/10] irqchip/riscv-imsic: Implement irq_force_complete_move() for IMSIC Anup Patel
2025-02-17  8:56   ` Anup Patel
2025-02-18  9:03   ` [tip: irq/drivers] " tip-bot2 for Anup Patel
2025-02-20 14:26   ` tip-bot2 for Anup Patel
2025-02-17  8:56 ` [PATCH v6 09/10] irqchip/riscv-imsic: Replace hwirq with irq in the IMSIC vector Anup Patel
2025-02-17  8:56   ` Anup Patel
2025-02-18  9:03   ` [tip: irq/drivers] irqchip/riscv-imsic: Avoid interrupt translation in interrupt handler tip-bot2 for Anup Patel
2025-02-20 14:26   ` tip-bot2 for Anup Patel
2025-02-17  8:56 ` [PATCH v6 10/10] irqchip/riscv-imsic: Special handling for non-atomic device MSI update Anup Patel
2025-02-17  8:56   ` Anup Patel
2025-02-18  9:03   ` [tip: irq/drivers] " tip-bot2 for Anup Patel
2025-02-20 14:26   ` tip-bot2 for Anup Patel

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.