]> rtime.felk.cvut.cz Git - zynq/linux.git/commitdiff
spi: zynq-qspi: Probe and remove cleanup
authorHarini Katakam <harini.katakam@xilinx.com>
Mon, 7 Apr 2014 14:16:58 +0000 (19:46 +0530)
committerMichal Simek <michal.simek@xilinx.com>
Tue, 8 Apr 2014 10:57:25 +0000 (12:57 +0200)
Request irq after init_hw is done. Check for irq <= 0 as error condition.
Remove unecessary prints in probe and remove.

Signed-off-by: Harini Katakam <harinik@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
drivers/spi/spi-zynq-qspi.c

index 3611340a7100fb7eb3f2f7160fba9c91236358fb..692dbcb5d028f6a65a20dc3f7025ee32b844db3c 100644 (file)
@@ -651,20 +651,6 @@ static int zynq_qspi_probe(struct platform_device *pdev)
                goto remove_master;
        }
 
-       xqspi->irq = platform_get_irq(pdev, 0);
-       if (xqspi->irq < 0) {
-               ret = -ENXIO;
-               dev_err(&pdev->dev, "irq resource not found\n");
-               goto remove_master;
-       }
-       ret = devm_request_irq(&pdev->dev, xqspi->irq, zynq_qspi_irq,
-                              0, pdev->name, master);
-       if (ret != 0) {
-               ret = -ENXIO;
-               dev_err(&pdev->dev, "request_irq failed\n");
-               goto remove_master;
-       }
-
        if (of_property_read_u32(pdev->dev.of_node, "is-dual", &xqspi->is_dual))
                dev_warn(&pdev->dev, "couldn't determine configuration info "
                         "about dual memories. defaulting to single memory\n");
@@ -698,6 +684,20 @@ static int zynq_qspi_probe(struct platform_device *pdev)
        /* QSPI controller initializations */
        zynq_qspi_init_hw(xqspi);
 
+       xqspi->irq = platform_get_irq(pdev, 0);
+       if (xqspi->irq <= 0) {
+               ret = -ENXIO;
+               dev_err(&pdev->dev, "irq resource not found\n");
+               goto remove_master;
+       }
+       ret = devm_request_irq(&pdev->dev, xqspi->irq, zynq_qspi_irq,
+                              0, pdev->name, master);
+       if (ret != 0) {
+               ret = -ENXIO;
+               dev_err(&pdev->dev, "request_irq failed\n");
+               goto remove_master;
+       }
+
        ret = of_property_read_u32(pdev->dev.of_node, "num-cs",
                                   &num_cs);
        if (ret < 0)
@@ -723,9 +723,6 @@ static int zynq_qspi_probe(struct platform_device *pdev)
                goto clk_dis_all;
        }
 
-       dev_info(&pdev->dev, "at 0x%08X mapped to 0x%08X, irq=%d\n", res->start,
-                (u32 __force)xqspi->regs, xqspi->irq);
-
        return ret;
 
 clk_dis_all:
@@ -759,7 +756,6 @@ static int zynq_qspi_remove(struct platform_device *pdev)
 
        spi_unregister_master(master);
 
-       dev_dbg(&pdev->dev, "remove succeeded\n");
        return 0;
 }