]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
spi: rspi: Remove unneeded resource test in DMA setup
authorGeert Uytterhoeven <geert+renesas@glider.be>
Mon, 2 Jun 2014 13:38:10 +0000 (15:38 +0200)
committerMark Brown <broonie@linaro.org>
Mon, 2 Jun 2014 14:49:34 +0000 (15:49 +0100)
The resource is know to exist, as rspi_probe() already mapped it.
Remove the test, and just pass the resource.
Pass the device pointer instead of the platform device pointer, as the
latter is no longer needed.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Mark Brown <broonie@linaro.org>
drivers/spi/spi-rspi.c

index 0a7a2d618f0f7860f8875375ae58b515b0a4ff44..1ec51cb0020304115fbf2ed26714d4751b51aae6 100644 (file)
@@ -980,35 +980,32 @@ static struct dma_chan *rspi_request_dma_chan(struct device *dev,
        return chan;
 }
 
-static int rspi_request_dma(struct rspi_data *rspi,
-                           struct platform_device *pdev)
+static int rspi_request_dma(struct device *dev, struct rspi_data *rspi,
+                           const struct resource *res)
 {
-       const struct rspi_plat_data *rspi_pd = dev_get_platdata(&pdev->dev);
-       struct resource *res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+       const struct rspi_plat_data *rspi_pd = dev_get_platdata(dev);
 
-       if (!res || !rspi_pd)
+       if (!rspi_pd)
                return 0;       /* The driver assumes no error. */
 
        /* If the module receives data by DMAC, it also needs TX DMAC */
        if (rspi_pd->dma_rx_id && rspi_pd->dma_tx_id) {
-               rspi->chan_rx = rspi_request_dma_chan(&pdev->dev,
-                                                     DMA_DEV_TO_MEM,
+               rspi->chan_rx = rspi_request_dma_chan(dev, DMA_DEV_TO_MEM,
                                                      rspi_pd->dma_rx_id,
                                                      res->start + RSPI_SPDR);
                if (!rspi->chan_rx)
                        return -ENODEV;
 
-               dev_info(&pdev->dev, "Use DMA when rx.\n");
+               dev_info(dev, "Use DMA when rx.\n");
        }
        if (rspi_pd->dma_tx_id) {
-               rspi->chan_tx = rspi_request_dma_chan(&pdev->dev,
-                                                     DMA_MEM_TO_DEV,
+               rspi->chan_tx = rspi_request_dma_chan(dev, DMA_MEM_TO_DEV,
                                                      rspi_pd->dma_tx_id,
                                                      res->start + RSPI_SPDR);
                if (!rspi->chan_tx)
                        return -ENODEV;
 
-               dev_info(&pdev->dev, "Use DMA when tx\n");
+               dev_info(dev, "Use DMA when tx\n");
        }
 
        return 0;
@@ -1210,7 +1207,7 @@ static int rspi_probe(struct platform_device *pdev)
                goto error2;
        }
 
-       ret = rspi_request_dma(rspi, pdev);
+       ret = rspi_request_dma(&pdev->dev, rspi, res);
        if (ret < 0)
                dev_warn(&pdev->dev, "DMA not available, using PIO\n");