summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/irq.c
diff options
context:
space:
mode:
authorMilton Miller <miltonm@bga.com>2011-05-10 21:30:36 +0200
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2011-05-19 07:31:59 +0200
commit3ee62d365b519c0c18c774049efcde84fe51c60c (patch)
tree7229d970675b0c5dff165d8597707ebc6e5798cc /arch/powerpc/kernel/irq.c
parentpowerpc/axon_msi: Validate msi irq via chip_data (diff)
downloadlinux-3ee62d365b519c0c18c774049efcde84fe51c60c.tar.xz
linux-3ee62d365b519c0c18c774049efcde84fe51c60c.zip
powerpc: Add virq_is_host to reduce virq_to_host usage
Some irq_host implementations are using virq_to_host to check if they are the irq_host for a virtual irq. To allow us to make space versus time tradeoffs, replace this usage with an assertive virq_is_host that confirms or denies the irq is associated with the given irq_host. Signed-off-by: Milton Miller <miltonm@bga.com> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/kernel/irq.c')
-rw-r--r--arch/powerpc/kernel/irq.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/irq.c b/arch/powerpc/kernel/irq.c
index 0715a09a4101..73cf29078fef 100644
--- a/arch/powerpc/kernel/irq.c
+++ b/arch/powerpc/kernel/irq.c
@@ -510,6 +510,12 @@ irq_hw_number_t virq_to_hw(unsigned int virq)
}
EXPORT_SYMBOL_GPL(virq_to_hw);
+bool virq_is_host(unsigned int virq, struct irq_host *host)
+{
+ return irq_map[virq].host == host;
+}
+EXPORT_SYMBOL_GPL(virq_is_host);
+
struct irq_host *virq_to_host(unsigned int virq)
{
return irq_map[virq].host;