irqdomain: Make irq_domain_alloc_irqs_recursive available

We are soon going to need the MSI layer to call into the domain
allocators. Instead of open coding this, make the standard
irq_domain_alloc_irqs_recursive function available to the MSI
layer.

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
This commit is contained in:
Marc Zyngier 2015-11-23 08:26:04 +00:00
parent 72f57f2f43
commit c466595c41
2 changed files with 6 additions and 3 deletions

View File

@ -367,6 +367,9 @@ static inline int irq_domain_alloc_irqs(struct irq_domain *domain,
return __irq_domain_alloc_irqs(domain, -1, nr_irqs, node, arg, false); return __irq_domain_alloc_irqs(domain, -1, nr_irqs, node, arg, false);
} }
extern int irq_domain_alloc_irqs_recursive(struct irq_domain *domain,
unsigned int irq_base,
unsigned int nr_irqs, void *arg);
extern int irq_domain_set_hwirq_and_chip(struct irq_domain *domain, extern int irq_domain_set_hwirq_and_chip(struct irq_domain *domain,
unsigned int virq, unsigned int virq,
irq_hw_number_t hwirq, irq_hw_number_t hwirq,

View File

@ -1125,9 +1125,9 @@ static void irq_domain_free_irqs_recursive(struct irq_domain *domain,
} }
} }
static int irq_domain_alloc_irqs_recursive(struct irq_domain *domain, int irq_domain_alloc_irqs_recursive(struct irq_domain *domain,
unsigned int irq_base, unsigned int irq_base,
unsigned int nr_irqs, void *arg) unsigned int nr_irqs, void *arg)
{ {
int ret = 0; int ret = 0;
struct irq_domain *parent = domain->parent; struct irq_domain *parent = domain->parent;