genirq: Remove GENERIC_IRQ_LEGACY_ALLOC_HWIRQ
authorThomas Gleixner <tglx@linutronix.de>
Sat, 14 Nov 2020 21:01:45 +0000 (22:01 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Sat, 14 Nov 2020 21:39:00 +0000 (22:39 +0100)
Commit bb9d812643d8 ("arch: remove tile port") removed the last user of
this cruft two years ago...

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/r/87eekvac06.fsf@nanos.tec.linutronix.de
include/linux/irq.h
kernel/irq/Kconfig
kernel/irq/irqdesc.c

index c543653..79ce314 100644 (file)
@@ -954,21 +954,6 @@ static inline void irq_free_desc(unsigned int irq)
        irq_free_descs(irq, 1);
 }
 
-#ifdef CONFIG_GENERIC_IRQ_LEGACY_ALLOC_HWIRQ
-unsigned int irq_alloc_hwirqs(int cnt, int node);
-static inline unsigned int irq_alloc_hwirq(int node)
-{
-       return irq_alloc_hwirqs(1, node);
-}
-void irq_free_hwirqs(unsigned int from, int cnt);
-static inline void irq_free_hwirq(unsigned int irq)
-{
-       return irq_free_hwirqs(irq, 1);
-}
-int arch_setup_hwirq(unsigned int irq, int node);
-void arch_teardown_hwirq(unsigned int irq);
-#endif
-
 #ifdef CONFIG_GENERIC_IRQ_LEGACY
 void irq_init_desc(unsigned int irq);
 #endif
index 10a5aff..f2cda6b 100644 (file)
@@ -26,11 +26,6 @@ config GENERIC_IRQ_SHOW_LEVEL
 config GENERIC_IRQ_EFFECTIVE_AFF_MASK
        bool
 
-# Facility to allocate a hardware interrupt. This is legacy support
-# and should not be used in new code. Use irq domains instead.
-config GENERIC_IRQ_LEGACY_ALLOC_HWIRQ
-       bool
-
 # Support for delayed migration from interrupt context
 config GENERIC_PENDING_IRQ
        bool
index 1a77236..e810eb9 100644 (file)
@@ -810,57 +810,6 @@ unlock:
 }
 EXPORT_SYMBOL_GPL(__irq_alloc_descs);
 
-#ifdef CONFIG_GENERIC_IRQ_LEGACY_ALLOC_HWIRQ
-/**
- * irq_alloc_hwirqs - Allocate an irq descriptor and initialize the hardware
- * @cnt:       number of interrupts to allocate
- * @node:      node on which to allocate
- *
- * Returns an interrupt number > 0 or 0, if the allocation fails.
- */
-unsigned int irq_alloc_hwirqs(int cnt, int node)
-{
-       int i, irq = __irq_alloc_descs(-1, 0, cnt, node, NULL, NULL);
-
-       if (irq < 0)
-               return 0;
-
-       for (i = irq; cnt > 0; i++, cnt--) {
-               if (arch_setup_hwirq(i, node))
-                       goto err;
-               irq_clear_status_flags(i, _IRQ_NOREQUEST);
-       }
-       return irq;
-
-err:
-       for (i--; i >= irq; i--) {
-               irq_set_status_flags(i, _IRQ_NOREQUEST | _IRQ_NOPROBE);
-               arch_teardown_hwirq(i);
-       }
-       irq_free_descs(irq, cnt);
-       return 0;
-}
-EXPORT_SYMBOL_GPL(irq_alloc_hwirqs);
-
-/**
- * irq_free_hwirqs - Free irq descriptor and cleanup the hardware
- * @from:      Free from irq number
- * @cnt:       number of interrupts to free
- *
- */
-void irq_free_hwirqs(unsigned int from, int cnt)
-{
-       int i, j;
-
-       for (i = from, j = cnt; j > 0; i++, j--) {
-               irq_set_status_flags(i, _IRQ_NOREQUEST | _IRQ_NOPROBE);
-               arch_teardown_hwirq(i);
-       }
-       irq_free_descs(from, cnt);
-}
-EXPORT_SYMBOL_GPL(irq_free_hwirqs);
-#endif
-
 /**
  * irq_get_next_irq - get next allocated irq number
  * @offset:    where to start the search