Commit a74f0a17 authored by Felipe Balbi's avatar Felipe Balbi Committed by Tony Lindgren

arm: omap: irq: remove nr_irqs argument

we can set our global omap_nr_irqs early on
and drop the extra argument to omap_init_irq().
Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
parent 3384f86f
...@@ -207,8 +207,7 @@ omap_alloc_gc(void __iomem *base, unsigned int irq_start, unsigned int num) ...@@ -207,8 +207,7 @@ omap_alloc_gc(void __iomem *base, unsigned int irq_start, unsigned int num)
IRQ_NOREQUEST | IRQ_NOPROBE, 0); IRQ_NOREQUEST | IRQ_NOPROBE, 0);
} }
static void __init omap_init_irq(u32 base, int nr_irqs, static void __init omap_init_irq(u32 base, struct device_node *node)
struct device_node *node)
{ {
int j, irq_base; int j, irq_base;
...@@ -216,15 +215,13 @@ static void __init omap_init_irq(u32 base, int nr_irqs, ...@@ -216,15 +215,13 @@ static void __init omap_init_irq(u32 base, int nr_irqs,
if (WARN_ON(!omap_irq_base)) if (WARN_ON(!omap_irq_base))
return; return;
omap_nr_irqs = nr_irqs; irq_base = irq_alloc_descs(-1, 0, omap_nr_irqs, 0);
irq_base = irq_alloc_descs(-1, 0, nr_irqs, 0);
if (irq_base < 0) { if (irq_base < 0) {
pr_warn("Couldn't allocate IRQ numbers\n"); pr_warn("Couldn't allocate IRQ numbers\n");
irq_base = 0; irq_base = 0;
} }
domain = irq_domain_add_legacy(node, nr_irqs, irq_base, 0, domain = irq_domain_add_legacy(node, omap_nr_irqs, irq_base, 0,
&irq_domain_simple_ops, NULL); &irq_domain_simple_ops, NULL);
omap_irq_soft_reset(); omap_irq_soft_reset();
...@@ -278,19 +275,22 @@ omap_intc_handle_irq(struct pt_regs *regs) ...@@ -278,19 +275,22 @@ omap_intc_handle_irq(struct pt_regs *regs)
void __init omap2_init_irq(void) void __init omap2_init_irq(void)
{ {
omap_init_irq(OMAP24XX_IC_BASE, 96, NULL); omap_nr_irqs = 96;
omap_init_irq(OMAP24XX_IC_BASE, NULL);
set_handle_irq(omap_intc_handle_irq); set_handle_irq(omap_intc_handle_irq);
} }
void __init omap3_init_irq(void) void __init omap3_init_irq(void)
{ {
omap_init_irq(OMAP34XX_IC_BASE, 96, NULL); omap_nr_irqs = 96;
omap_init_irq(OMAP34XX_IC_BASE, NULL);
set_handle_irq(omap_intc_handle_irq); set_handle_irq(omap_intc_handle_irq);
} }
void __init ti81xx_init_irq(void) void __init ti81xx_init_irq(void)
{ {
omap_init_irq(OMAP34XX_IC_BASE, 128, NULL); omap_nr_irqs = 96;
omap_init_irq(OMAP34XX_IC_BASE, NULL);
set_handle_irq(omap_intc_handle_irq); set_handle_irq(omap_intc_handle_irq);
} }
...@@ -298,7 +298,8 @@ static int __init intc_of_init(struct device_node *node, ...@@ -298,7 +298,8 @@ static int __init intc_of_init(struct device_node *node,
struct device_node *parent) struct device_node *parent)
{ {
struct resource res; struct resource res;
u32 nr_irq = 96;
omap_nr_irqs = 96;
if (WARN_ON(!node)) if (WARN_ON(!node))
return -ENODEV; return -ENODEV;
...@@ -309,9 +310,9 @@ static int __init intc_of_init(struct device_node *node, ...@@ -309,9 +310,9 @@ static int __init intc_of_init(struct device_node *node,
} }
if (of_device_is_compatible(node, "ti,am33xx-intc")) if (of_device_is_compatible(node, "ti,am33xx-intc"))
nr_irq = 128; omap_nr_irqs = 128;
omap_init_irq(res.start, nr_irq, of_node_get(node)); omap_init_irq(res.start, of_node_get(node));
set_handle_irq(omap_intc_handle_irq); set_handle_irq(omap_intc_handle_irq);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment