]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/bus/omap_l3_noc.c
drivers: bus: omap_l3: Convert to use devm_request_irq()
[karo-tx-linux.git] / drivers / bus / omap_l3_noc.c
index 6f58be3c2f76ba1a8f35123f1b83ae82ebb0847b..25bcb60be880318873a1a5d06279a8b86efc1215 100644 (file)
@@ -155,9 +155,8 @@ static int omap4_l3_probe(struct platform_device *pdev)
         * Setup interrupt Handlers
         */
        l3->debug_irq = platform_get_irq(pdev, 0);
-       ret = request_irq(l3->debug_irq,
-                       l3_interrupt_handler,
-                       IRQF_DISABLED, "l3-dbg-irq", l3);
+       ret = devm_request_irq(&pdev->dev, l3->debug_irq, l3_interrupt_handler,
+                              IRQF_DISABLED, "l3-dbg-irq", l3);
        if (ret) {
                pr_crit("L3: request_irq failed to register for 0x%x\n",
                                                l3->debug_irq);
@@ -165,29 +164,17 @@ static int omap4_l3_probe(struct platform_device *pdev)
        }
 
        l3->app_irq = platform_get_irq(pdev, 1);
-       ret = request_irq(l3->app_irq,
-                       l3_interrupt_handler,
-                       IRQF_DISABLED, "l3-app-irq", l3);
-       if (ret) {
+       ret = devm_request_irq(&pdev->dev, l3->app_irq, l3_interrupt_handler,
+                              IRQF_DISABLED, "l3-app-irq", l3);
+       if (ret)
                pr_crit("L3: request_irq failed to register for 0x%x\n",
                                                l3->app_irq);
-               goto err4;
-       }
-
-       return 0;
 
-err4:
-       free_irq(l3->debug_irq, l3);
        return ret;
 }
 
 static int omap4_l3_remove(struct platform_device *pdev)
 {
-       struct omap4_l3 *l3 = platform_get_drvdata(pdev);
-
-       free_irq(l3->app_irq, l3);
-       free_irq(l3->debug_irq, l3);
-
        return 0;
 }