mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* Finish the GENERIC_IRQ_MULTI_HANDLER conversion
@ 2018-06-21 18:17 Palmer Dabbelt
  2018-06-22 17:01 ` Palmer Dabbelt
  2018-06-24 13:15 ` Finish the GENERIC_IRQ_MULTI_HANDLER conversion Thomas Gleixner
  0 siblings, 2 replies; 16+ messages in thread
From: Palmer Dabbelt @ 2018-06-21 18:17 UTC (permalink / raw)
  To: tglx
  Cc: linux, catalin.marinas, will.deacon, jonas, stefan.kristiansson,
	shorne, tglx, jason, marc.zyngier, arnd, keescook,
	vladimir.murzin, nicolas.pitre, jinb.park7, yamada.masahiro,
	alexandre.belloni, palmer, gregkh, pombredanne, kstewart, jhogan,
	mark.rutland, ard.biesheuvel, james.morse, linux-arm-kernel,
	linux-kernel, openrisc

A while ago I sent a patch set that adds a GENERIC_IRQ_MULTI_HANDLER,
which is an exact copy of the existing IRQ_MULTI_HANDLER support in the
arm port, which is being used unconditionally by arm64 and openrisc.
GENERIC_IRQ_MULTI_HANDLER is currently being used by the RISC-V port.  I
managed to make a few mistakes in my original patch set and as a result
my conversion of the other architectures of GENERIC_IRQ_MULTI_HANDLER
was dropped.

This patch set finishes up my original patch set by converting arm,
arm64, and openrisc over to the new GENERIC_IRQ_MULTI_HANDLER support
and then removing MULTI_IRQ_HANDLER as it's obselete.

At the time I wrote this I gave it fairly extensive build testing, but
went I recently rebased it I just tested the full patch set on arm,
arm64, and openrisc defconfigs.

Various flavors of this patch set have bounced around a few times
before, but I'm calling this a whole new patch set as it builds on top
of what was merged.

^ permalink raw reply	[flat|nested] 16+ messages in thread
* [PATCH v3 4/5] arm64: Use the new GENERIC_IRQ_MULTI_HANDLER
@ 2018-03-07 23:57 Palmer Dabbelt
  2018-03-14 20:50 ` [tip:irq/core] " tip-bot for Palmer Dabbelt
  0 siblings, 1 reply; 16+ messages in thread
From: Palmer Dabbelt @ 2018-03-07 23:57 UTC (permalink / raw)
  To: linux, catalin.marinas, Will Deacon, jonas, stefan.kristiansson,
	shorne, tglx, linux-arm-kernel, linux-kernel, openrisc,
	linux-riscv
  Cc: Palmer Dabbelt

It appears arm64 copied arm's GENERIC_IRQ_MULTI_HANDLER code, but made
it unconditional.  I wanted to make this generic so it could be used by
the RISC-V port.  This patch converts the arm64 code to use the new
generic code, which simply consists of deleting the arm64 code and
setting MULTI_IRQ_HANDLER instead.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
---
 arch/arm64/Kconfig           |  1 +
 arch/arm64/include/asm/irq.h |  2 --
 arch/arm64/kernel/irq.c      | 10 ----------
 3 files changed, 1 insertion(+), 12 deletions(-)

diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 7381eeb7ef8e..cb03e93f03cf 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -132,6 +132,7 @@ config ARM64
 	select IRQ_DOMAIN
 	select IRQ_FORCED_THREADING
 	select MODULES_USE_ELF_RELA
+	select GENERIC_IRQ_MULTI_HANDLER
 	select NO_BOOTMEM
 	select OF
 	select OF_EARLY_FLATTREE
diff --git a/arch/arm64/include/asm/irq.h b/arch/arm64/include/asm/irq.h
index a0fee6985e6a..b2b0c6405eb0 100644
--- a/arch/arm64/include/asm/irq.h
+++ b/arch/arm64/include/asm/irq.h
@@ -8,8 +8,6 @@
 
 struct pt_regs;
 
-extern void set_handle_irq(void (*handle_irq)(struct pt_regs *));
-
 static inline int nr_legacy_irqs(void)
 {
 	return 0;
diff --git a/arch/arm64/kernel/irq.c b/arch/arm64/kernel/irq.c
index 60e5fc661f74..780a12f59a8f 100644
--- a/arch/arm64/kernel/irq.c
+++ b/arch/arm64/kernel/irq.c
@@ -42,16 +42,6 @@ int arch_show_interrupts(struct seq_file *p, int prec)
 	return 0;
 }
 
-void (*handle_arch_irq)(struct pt_regs *) = NULL;
-
-void __init set_handle_irq(void (*handle_irq)(struct pt_regs *))
-{
-	if (handle_arch_irq)
-		return;
-
-	handle_arch_irq = handle_irq;
-}
-
 #ifdef CONFIG_VMAP_STACK
 static void init_irq_stacks(void)
 {
-- 
2.16.1

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

end of thread, other threads:[~2018-08-03 10:21 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-21 18:17 Finish the GENERIC_IRQ_MULTI_HANDLER conversion Palmer Dabbelt
2018-06-22 17:01 ` Palmer Dabbelt
2018-06-22 17:01   ` [PATCH 1/5] irq: Port the ARM IRQ drivers to GENERIC_IRQ_MULTI_HANDLER Palmer Dabbelt
2018-08-03 10:19     ` [tip:irq/core] irqchip: " tip-bot for Palmer Dabbelt
2018-06-22 17:01   ` [PATCH 2/5] arm: Convert " Palmer Dabbelt
2018-08-03 10:19     ` [tip:irq/core] ARM: " tip-bot for Palmer Dabbelt
2018-06-22 17:01   ` [PATCH 3/5] arm64: Use the new GENERIC_IRQ_MULTI_HANDLER Palmer Dabbelt
2018-08-03 10:20     ` [tip:irq/core] " tip-bot for Palmer Dabbelt
2018-06-22 17:01   ` [PATCH 4/5] openrisc: " Palmer Dabbelt
2018-08-03 10:20     ` [tip:irq/core] " tip-bot for Palmer Dabbelt
2018-06-22 17:01   ` [PATCH 5/5] irq: Remove MULTI_IRQ_HANDLER as it's now obselete Palmer Dabbelt
2018-08-03 10:21     ` [tip:irq/core] genirq/irqchip: " tip-bot for Palmer Dabbelt
2018-06-24 13:15 ` Finish the GENERIC_IRQ_MULTI_HANDLER conversion Thomas Gleixner
2018-08-02 18:30   ` Palmer Dabbelt
2018-08-03 10:09     ` Thomas Gleixner
  -- strict thread matches above, loose matches on Subject: below --
2018-03-07 23:57 [PATCH v3 4/5] arm64: Use the new GENERIC_IRQ_MULTI_HANDLER Palmer Dabbelt
2018-03-14 20:50 ` [tip:irq/core] " tip-bot for Palmer Dabbelt

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

Powered by JetHome