Skip to content

Commit

Permalink
arm: mach-omap2: omap_l3_smx: fix irq handler setup
Browse files Browse the repository at this point in the history
The handler function may be called from the point it is registered.
Since the handler inspects IRQ numbers, we must set them up before
registration.

Signed-off-by: Aaro Koskinen <aaro.koskinen@nokia.com>
Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
  • Loading branch information
Aaro Koskinen authored and Tony Lindgren committed Mar 18, 2011
1 parent 3613386 commit 18a8101
Showing 1 changed file with 4 additions and 7 deletions.
11 changes: 4 additions & 7 deletions arch/arm/mach-omap2/omap_l3_smx.c
Original file line number Diff line number Diff line change
Expand Up @@ -226,7 +226,6 @@ static int __init omap3_l3_probe(struct platform_device *pdev)
struct omap3_l3 *l3;
struct resource *res;
int ret;
int irq;

l3 = kzalloc(sizeof(*l3), GFP_KERNEL);
if (!l3) {
Expand All @@ -249,18 +248,17 @@ static int __init omap3_l3_probe(struct platform_device *pdev)
goto err2;
}

irq = platform_get_irq(pdev, 0);
ret = request_irq(irq, omap3_l3_app_irq,
l3->debug_irq = platform_get_irq(pdev, 0);
ret = request_irq(l3->debug_irq, omap3_l3_app_irq,
IRQF_DISABLED | IRQF_TRIGGER_RISING,
"l3-debug-irq", l3);
if (ret) {
dev_err(&pdev->dev, "couldn't request debug irq\n");
goto err3;
}
l3->debug_irq = irq;

irq = platform_get_irq(pdev, 1);
ret = request_irq(irq, omap3_l3_app_irq,
l3->app_irq = platform_get_irq(pdev, 1);
ret = request_irq(l3->app_irq, omap3_l3_app_irq,
IRQF_DISABLED | IRQF_TRIGGER_RISING,
"l3-app-irq", l3);

Expand All @@ -269,7 +267,6 @@ static int __init omap3_l3_probe(struct platform_device *pdev)
goto err4;
}

l3->app_irq = irq;
goto err0;

err4:
Expand Down

0 comments on commit 18a8101

Please sign in to comment.