irqdomain: Add irq_domain_{push,pop}_irq() functions
authorDavid Daney <david.daney@cavium.com>
Fri, 18 Aug 2017 00:53:34 +0000 (17:53 -0700)
committerThomas Gleixner <tglx@linutronix.de>
Fri, 18 Aug 2017 09:21:42 +0000 (11:21 +0200)
commit495c38d3001fd226cf91df1d031320f349bcaf35
treee95708012ea936df31395e7d0139c4ae82ae9ff0
parent0d12ec075a18f53e6f58ec95a4f534da2641bf9b
irqdomain: Add irq_domain_{push,pop}_irq() functions

For an already existing irqdomain hierarchy, as might be obtained via
a call to pci_enable_msix_range(), a PCI driver wishing to add an
additional irqdomain to the hierarchy needs to be able to insert the
irqdomain to that already initialized hierarchy.  Calling
irq_domain_create_hierarchy() allows the new irqdomain to be created,
but no existing code allows for initializing the associated irq_data.

Add a couple of helper functions (irq_domain_push_irq() and
irq_domain_pop_irq()) to initialize the irq_data for the new
irqdomain added to an existing hierarchy.

Signed-off-by: David Daney <david.daney@cavium.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Marc Zyngier <marc.zyngier@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Alexandre Courbot <gnurou@gmail.com>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: linux-gpio@vger.kernel.org
Link: http://lkml.kernel.org/r/1503017616-3252-6-git-send-email-david.daney@cavium.com
include/linux/irqdomain.h
kernel/irq/irqdomain.c