]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
ARM: remove the last few uses of do_bad_IRQ()
authorEthan Nelson-Moore <enelsonmoore@gmail.com>
Wed, 10 Jun 2026 04:56:26 +0000 (21:56 -0700)
committerArnd Bergmann <arnd@arndb.de>
Wed, 10 Jun 2026 08:38:21 +0000 (10:38 +0200)
The do_bad_IRQ() macro simply calls handle_bad_irq() with a lock around
it. It also carries a comment stating that uses of it should be
replaced. According to commit aec0095653cd ("irqchip: gic: Call
handle_bad_irq() directly"), which replaced another use of
do_bad_IRQ(), locking the IRQ descriptor is not necessary for error
reporting. Therefore, replace all uses of do_bad_IRQ() with calls to
handle_bad_irq() and remove do_bad_IRQ().

Signed-off-by: Ethan Nelson-Moore <enelsonmoore@gmail.com>
Reviewed-by: Linus Walleij <linusw@kernel.org>
Link: https://lore.kernel.org/r/20260610045626.248643-1-enelsonmoore@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
arch/arm/common/sa1111.c
arch/arm/include/asm/mach/irq.h
arch/arm/mach-footbridge/isa-irq.c
drivers/irqchip/irq-versatile-fpga.c

index 449c8bb86453ca9c3058802071638fdef402113c..a0f854cf4748eac3fe87d08db7ea1e22fd045836 100644 (file)
@@ -221,7 +221,7 @@ static void sa1111_irq_handler(struct irq_desc *desc)
        writel_relaxed(stat1, mapbase + SA1111_INTSTATCLR1);
 
        if (stat0 == 0 && stat1 == 0) {
-               do_bad_IRQ(desc);
+               handle_bad_irq(desc);
                return;
        }
 
index dfe832a3bfc71c04ca5361a89ea994e77332123d..fdcd8388977d82c06198276ec6281a63e7f623e1 100644 (file)
@@ -17,14 +17,4 @@ struct seq_file;
 extern void init_FIQ(int);
 extern int show_fiq_list(struct seq_file *, int);
 
-/*
- * This is for easy migration, but should be changed in the source
- */
-#define do_bad_IRQ(desc)                               \
-do {                                                   \
-       raw_spin_lock(&desc->lock);                     \
-       handle_bad_irq(desc);                           \
-       raw_spin_unlock(&desc->lock);                   \
-} while(0)
-
 #endif
index 842ddb4121ef145579999c8e1289a7b5aaa3126f..48c7b3efd555704c26f444eff8fb5ce754536bf0 100644 (file)
@@ -89,7 +89,7 @@ static void isa_irq_handler(struct irq_desc *desc)
        unsigned int isa_irq = *(unsigned char *)PCIIACK_BASE;
 
        if (isa_irq < _ISA_IRQ(0) || isa_irq >= _ISA_IRQ(16)) {
-               do_bad_IRQ(desc);
+               handle_bad_irq(desc);
                return;
        }
 
index 034ce6afe17080e225ae32189a7df15050c86014..6eaad836d9ffacceb4fbeb5dd36995ad44057956 100644 (file)
@@ -89,7 +89,7 @@ static void fpga_irq_handle(struct irq_desc *desc)
 
        status = readl(f->base + IRQ_STATUS);
        if (status == 0) {
-               do_bad_IRQ(desc);
+               handle_bad_irq(desc);
                goto out;
        }