[tip:irq/core] genirq: Replace dynamic_irq_init/cleanup

From: tip-bot for Thomas Gleixner
Date: Fri May 16 2014 - 09:54:22 EST


Commit-ID: c940e01c94e73a2a5318f1b82038e0746aaec753
Gitweb: http://git.kernel.org/tip/c940e01c94e73a2a5318f1b82038e0746aaec753
Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
AuthorDate: Wed, 7 May 2014 15:44:22 +0000
Committer: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
CommitDate: Fri, 16 May 2014 14:05:22 +0200

genirq: Replace dynamic_irq_init/cleanup

Create a new interface and confine it with a config switch which makes
clear that this is just legacy support and not to be used for new code.

Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
Reviewed-by: Grant Likely <grant.likely@xxxxxxxxxx>
Tested-by: Tony Luck <tony.luck@xxxxxxxxx>
Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
Link: http://lkml.kernel.org/r/20140507154340.574437049@xxxxxxxxxxxxx
Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
---
include/linux/irq.h | 4 ++++
kernel/irq/Kconfig | 4 ++++
kernel/irq/irqdesc.c | 7 +++++++
3 files changed, 15 insertions(+)

diff --git a/include/linux/irq.h b/include/linux/irq.h
index 2110f46..8ff71d1 100644
--- a/include/linux/irq.h
+++ b/include/linux/irq.h
@@ -637,6 +637,10 @@ 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
+
#ifndef irq_reg_writel
# define irq_reg_writel(val, addr) writel(val, addr)
#endif
diff --git a/kernel/irq/Kconfig b/kernel/irq/Kconfig
index a83f10e..d269cec 100644
--- a/kernel/irq/Kconfig
+++ b/kernel/irq/Kconfig
@@ -5,6 +5,10 @@ menu "IRQ subsystem"
config MAY_HAVE_SPARSE_IRQ
bool

+# Legacy support, required for itanic
+config GENERIC_IRQ_LEGACY
+ bool
+
# Enable the generic irq autoprobe mechanism
config GENERIC_IRQ_PROBE
bool
diff --git a/kernel/irq/irqdesc.c b/kernel/irq/irqdesc.c
index d514ed6..7f26779 100644
--- a/kernel/irq/irqdesc.c
+++ b/kernel/irq/irqdesc.c
@@ -306,6 +306,13 @@ void irq_mark_irq(unsigned int irq)
mutex_unlock(&sparse_irq_lock);
}

+#ifdef CONFIG_GENERIC_IRQ_LEGACY
+void irq_init_desc(unsigned int irq)
+{
+ dynamic_irq_cleanup(irq);
+}
+#endif
+
#endif /* !CONFIG_SPARSE_IRQ */

/**
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/