public inbox for xenomai@lists.linux.dev
 help / color / mirror / Atom feed
* [PATCH dovetail v4 00/12] riscv: Add dovetail support
@ 2026-01-22 10:22 Tobias Schaffner
  2026-01-22 10:22 ` [PATCH dovetail v4 01/12] riscv: irq_pipeline: add IRQ pipelining core Tobias Schaffner
                   ` (12 more replies)
  0 siblings, 13 replies; 19+ messages in thread
From: Tobias Schaffner @ 2026-01-22 10:22 UTC (permalink / raw)
  To: xenomai; +Cc: rpm, Tobias Schaffner

Hi all,

this series introduces initial support for Dovetail on RISC-V.

Feedback, suggestions, and especially reviews are very welcome.

Changes since v1:
 * Disable independent irq/softirq stack usage when pipelining
 * Drop KVM changes as long as they can not be properly tested

Changes since v2:
 * Rework trap handling

Changes since v3:
 * Included the IRQ pipelining patches to have all riscv specific
   patches included
 * Rebased to dovetail/v6.18.y-dovetail-rebase
 * Merged most of the fixes
 * Fixed IRQ Stack handling and enabled IRQ_STACKS again

Best,
Tobias

Tobias Schaffner (11):
  riscv: irq_pipeline: add IRQ pipelining core
  riscv: irq_pipeline: fix irq stack handling
  riscv: irq_pipeline: synchronize IRQs on exit to user mode
  irqchip/riscv-aplic-direct: enable pipelined interrupt control
  irqchip/irq-riscv-aplic-msi: enable pipelined interrupt control
  irqchip/irq-riscv-imsic-platform: enable pipelined interrupt control
  irqchip/irq-riscv-intc: enable pipelined interrupt control
  irqchip/irq-sifive-plic: enable pipelined interrupt control
  clocksource/timer-riscv: irq_pipeline: enable pipelined clock events
  riscv: add initial dovetail co-kernel skeleton
  riscv: add out-of-band aware trap handling

shannmu (1):
  riscv: add dovetail-aware memory management

 arch/riscv/Kconfig                         |   3 +
 arch/riscv/include/asm/dovetail.h          |  23 +++
 arch/riscv/include/asm/entry-common.h      |  28 ++++
 arch/riscv/include/asm/irq_pipeline.h      | 148 +++++++++++++++++
 arch/riscv/include/asm/irqflags.h          |  32 ++--
 arch/riscv/include/asm/mmu_context.h       |   2 +
 arch/riscv/include/asm/syscall.h           |   6 +
 arch/riscv/include/asm/thread_info.h       |  17 ++
 arch/riscv/kernel/Makefile                 |   1 +
 arch/riscv/kernel/irq_pipeline.c           |  26 +++
 arch/riscv/kernel/kernel_mode_vector.c     |   2 +-
 arch/riscv/kernel/sbi-ipi.c                |  10 +-
 arch/riscv/kernel/smp.c                    |  97 ++++++++---
 arch/riscv/kernel/smpboot.c                |   2 +-
 arch/riscv/kernel/traps.c                  | 180 ++++++++++++++++++---
 arch/riscv/mm/cacheflush.c                 |   5 +-
 arch/riscv/mm/context.c                    |  18 ++-
 arch/riscv/mm/fault.c                      |  75 +++++++--
 arch/riscv/mm/tlbflush.c                   |   5 +-
 drivers/clocksource/timer-clint.c          |   8 +
 drivers/clocksource/timer-riscv.c          |  11 +-
 drivers/irqchip/irq-riscv-aplic-direct.c   |   3 +-
 drivers/irqchip/irq-riscv-aplic-msi.c      |   3 +-
 drivers/irqchip/irq-riscv-imsic-platform.c |   4 +-
 drivers/irqchip/irq-riscv-intc.c           |   2 +
 drivers/irqchip/irq-sifive-plic.c          |   3 +-
 26 files changed, 632 insertions(+), 82 deletions(-)
 create mode 100644 arch/riscv/include/asm/dovetail.h
 create mode 100644 arch/riscv/include/asm/irq_pipeline.h
 create mode 100644 arch/riscv/kernel/irq_pipeline.c

-- 
2.43.0


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

end of thread, other threads:[~2026-01-22 20:22 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-22 10:22 [PATCH dovetail v4 00/12] riscv: Add dovetail support Tobias Schaffner
2026-01-22 10:22 ` [PATCH dovetail v4 01/12] riscv: irq_pipeline: add IRQ pipelining core Tobias Schaffner
2026-01-22 19:35   ` Philippe Gerum
2026-01-22 10:22 ` [PATCH dovetail v4 02/12] riscv: irq_pipeline: fix irq stack handling Tobias Schaffner
2026-01-22 19:55   ` Philippe Gerum
2026-01-22 10:22 ` [PATCH dovetail v4 03/12] riscv: irq_pipeline: synchronize IRQs on exit to user mode Tobias Schaffner
2026-01-22 10:22 ` [PATCH dovetail v4 04/12] irqchip/riscv-aplic-direct: enable pipelined interrupt control Tobias Schaffner
2026-01-22 10:22 ` [PATCH dovetail v4 05/12] irqchip/irq-riscv-aplic-msi: " Tobias Schaffner
2026-01-22 10:22 ` [PATCH dovetail v4 06/12] irqchip/irq-riscv-imsic-platform: " Tobias Schaffner
2026-01-22 10:22 ` [PATCH dovetail v4 07/12] irqchip/irq-riscv-intc: " Tobias Schaffner
2026-01-22 10:23 ` [PATCH dovetail v4 08/12] irqchip/irq-sifive-plic: " Tobias Schaffner
2026-01-22 10:23 ` [PATCH dovetail v4 09/12] clocksource/timer-riscv: irq_pipeline: enable pipelined clock events Tobias Schaffner
2026-01-22 10:23 ` [PATCH dovetail v4 10/12] riscv: add initial dovetail co-kernel skeleton Tobias Schaffner
2026-01-22 19:56   ` Philippe Gerum
2026-01-22 10:23 ` [PATCH dovetail v4 11/12] riscv: add out-of-band aware trap handling Tobias Schaffner
2026-01-22 19:57   ` Philippe Gerum
2026-01-22 10:23 ` [PATCH dovetail v4 12/12] riscv: add dovetail-aware memory management Tobias Schaffner
2026-01-22 11:05 ` [PATCH dovetail v4 00/12] riscv: Add dovetail support Florian Bezdeka
2026-01-22 11:48   ` Tobias Schaffner

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