Loading drivers/spi/spi-davinci.c +11 −30 Original line number Diff line number Diff line Loading @@ -853,7 +853,7 @@ static int davinci_spi_probe(struct platform_device *pdev) struct spi_master *master; struct davinci_spi *dspi; struct davinci_spi_platform_data *pdata; struct resource *r, *mem; struct resource *r; resource_size_t dma_rx_chan = SPI_NO_RESOURCE; resource_size_t dma_tx_chan = SPI_NO_RESOURCE; int i = 0, ret = 0; Loading Loading @@ -894,39 +894,33 @@ static int davinci_spi_probe(struct platform_device *pdev) dspi->pbase = r->start; mem = request_mem_region(r->start, resource_size(r), pdev->name); if (mem == NULL) { ret = -EBUSY; dspi->base = devm_ioremap_resource(&pdev->dev, r); if (IS_ERR(dspi->base)) { ret = PTR_ERR(dspi->base); goto free_master; } dspi->base = ioremap(r->start, resource_size(r)); if (dspi->base == NULL) { ret = -ENOMEM; goto release_region; } dspi->irq = platform_get_irq(pdev, 0); if (dspi->irq <= 0) { ret = -EINVAL; goto unmap_io; goto free_master; } ret = request_threaded_irq(dspi->irq, davinci_spi_irq, dummy_thread_fn, 0, dev_name(&pdev->dev), dspi); ret = devm_request_threaded_irq(&pdev->dev, dspi->irq, davinci_spi_irq, dummy_thread_fn, 0, dev_name(&pdev->dev), dspi); if (ret) goto unmap_io; goto free_master; dspi->bitbang.master = master; if (dspi->bitbang.master == NULL) { ret = -ENODEV; goto irq_free; goto free_master; } dspi->clk = clk_get(&pdev->dev, NULL); dspi->clk = devm_clk_get(&pdev->dev, NULL); if (IS_ERR(dspi->clk)) { ret = -ENODEV; goto irq_free; goto free_master; } clk_prepare_enable(dspi->clk); Loading Loading @@ -1015,13 +1009,6 @@ static int davinci_spi_probe(struct platform_device *pdev) dma_release_channel(dspi->dma_tx); free_clk: clk_disable_unprepare(dspi->clk); clk_put(dspi->clk); irq_free: free_irq(dspi->irq, dspi); unmap_io: iounmap(dspi->base); release_region: release_mem_region(dspi->pbase, resource_size(r)); free_master: spi_master_put(master); err: Loading @@ -1041,7 +1028,6 @@ static int davinci_spi_remove(struct platform_device *pdev) { struct davinci_spi *dspi; struct spi_master *master; struct resource *r; master = platform_get_drvdata(pdev); dspi = spi_master_get_devdata(master); Loading @@ -1049,11 +1035,6 @@ static int davinci_spi_remove(struct platform_device *pdev) spi_bitbang_stop(&dspi->bitbang); clk_disable_unprepare(dspi->clk); clk_put(dspi->clk); free_irq(dspi->irq, dspi); iounmap(dspi->base); r = platform_get_resource(pdev, IORESOURCE_MEM, 0); release_mem_region(dspi->pbase, resource_size(r)); spi_master_put(master); return 0; Loading Loading
drivers/spi/spi-davinci.c +11 −30 Original line number Diff line number Diff line Loading @@ -853,7 +853,7 @@ static int davinci_spi_probe(struct platform_device *pdev) struct spi_master *master; struct davinci_spi *dspi; struct davinci_spi_platform_data *pdata; struct resource *r, *mem; struct resource *r; resource_size_t dma_rx_chan = SPI_NO_RESOURCE; resource_size_t dma_tx_chan = SPI_NO_RESOURCE; int i = 0, ret = 0; Loading Loading @@ -894,39 +894,33 @@ static int davinci_spi_probe(struct platform_device *pdev) dspi->pbase = r->start; mem = request_mem_region(r->start, resource_size(r), pdev->name); if (mem == NULL) { ret = -EBUSY; dspi->base = devm_ioremap_resource(&pdev->dev, r); if (IS_ERR(dspi->base)) { ret = PTR_ERR(dspi->base); goto free_master; } dspi->base = ioremap(r->start, resource_size(r)); if (dspi->base == NULL) { ret = -ENOMEM; goto release_region; } dspi->irq = platform_get_irq(pdev, 0); if (dspi->irq <= 0) { ret = -EINVAL; goto unmap_io; goto free_master; } ret = request_threaded_irq(dspi->irq, davinci_spi_irq, dummy_thread_fn, 0, dev_name(&pdev->dev), dspi); ret = devm_request_threaded_irq(&pdev->dev, dspi->irq, davinci_spi_irq, dummy_thread_fn, 0, dev_name(&pdev->dev), dspi); if (ret) goto unmap_io; goto free_master; dspi->bitbang.master = master; if (dspi->bitbang.master == NULL) { ret = -ENODEV; goto irq_free; goto free_master; } dspi->clk = clk_get(&pdev->dev, NULL); dspi->clk = devm_clk_get(&pdev->dev, NULL); if (IS_ERR(dspi->clk)) { ret = -ENODEV; goto irq_free; goto free_master; } clk_prepare_enable(dspi->clk); Loading Loading @@ -1015,13 +1009,6 @@ static int davinci_spi_probe(struct platform_device *pdev) dma_release_channel(dspi->dma_tx); free_clk: clk_disable_unprepare(dspi->clk); clk_put(dspi->clk); irq_free: free_irq(dspi->irq, dspi); unmap_io: iounmap(dspi->base); release_region: release_mem_region(dspi->pbase, resource_size(r)); free_master: spi_master_put(master); err: Loading @@ -1041,7 +1028,6 @@ static int davinci_spi_remove(struct platform_device *pdev) { struct davinci_spi *dspi; struct spi_master *master; struct resource *r; master = platform_get_drvdata(pdev); dspi = spi_master_get_devdata(master); Loading @@ -1049,11 +1035,6 @@ static int davinci_spi_remove(struct platform_device *pdev) spi_bitbang_stop(&dspi->bitbang); clk_disable_unprepare(dspi->clk); clk_put(dspi->clk); free_irq(dspi->irq, dspi); iounmap(dspi->base); r = platform_get_resource(pdev, IORESOURCE_MEM, 0); release_mem_region(dspi->pbase, resource_size(r)); spi_master_put(master); return 0; Loading