diff options
Diffstat (limited to 'drivers/spi/spi-davinci.c')
-rw-r--r-- | drivers/spi/spi-davinci.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/spi/spi-davinci.c b/drivers/spi/spi-davinci.c index 8fbfe2483ffd..af2bb73d0168 100644 --- a/drivers/spi/spi-davinci.c +++ b/drivers/spi/spi-davinci.c | |||
@@ -916,7 +916,7 @@ static int davinci_spi_probe(struct platform_device *pdev) | |||
916 | if (ret) | 916 | if (ret) |
917 | goto unmap_io; | 917 | goto unmap_io; |
918 | 918 | ||
919 | dspi->bitbang.master = spi_master_get(master); | 919 | dspi->bitbang.master = master; |
920 | if (dspi->bitbang.master == NULL) { | 920 | if (dspi->bitbang.master == NULL) { |
921 | ret = -ENODEV; | 921 | ret = -ENODEV; |
922 | goto irq_free; | 922 | goto irq_free; |
@@ -925,7 +925,7 @@ static int davinci_spi_probe(struct platform_device *pdev) | |||
925 | dspi->clk = clk_get(&pdev->dev, NULL); | 925 | dspi->clk = clk_get(&pdev->dev, NULL); |
926 | if (IS_ERR(dspi->clk)) { | 926 | if (IS_ERR(dspi->clk)) { |
927 | ret = -ENODEV; | 927 | ret = -ENODEV; |
928 | goto put_master; | 928 | goto irq_free; |
929 | } | 929 | } |
930 | clk_prepare_enable(dspi->clk); | 930 | clk_prepare_enable(dspi->clk); |
931 | 931 | ||
@@ -1015,8 +1015,6 @@ free_dma: | |||
1015 | free_clk: | 1015 | free_clk: |
1016 | clk_disable_unprepare(dspi->clk); | 1016 | clk_disable_unprepare(dspi->clk); |
1017 | clk_put(dspi->clk); | 1017 | clk_put(dspi->clk); |
1018 | put_master: | ||
1019 | spi_master_put(master); | ||
1020 | irq_free: | 1018 | irq_free: |
1021 | free_irq(dspi->irq, dspi); | 1019 | free_irq(dspi->irq, dspi); |
1022 | unmap_io: | 1020 | unmap_io: |
@@ -1024,7 +1022,7 @@ unmap_io: | |||
1024 | release_region: | 1022 | release_region: |
1025 | release_mem_region(dspi->pbase, resource_size(r)); | 1023 | release_mem_region(dspi->pbase, resource_size(r)); |
1026 | free_master: | 1024 | free_master: |
1027 | kfree(master); | 1025 | spi_master_put(master); |
1028 | err: | 1026 | err: |
1029 | return ret; | 1027 | return ret; |
1030 | } | 1028 | } |
@@ -1051,11 +1049,11 @@ static int davinci_spi_remove(struct platform_device *pdev) | |||
1051 | 1049 | ||
1052 | clk_disable_unprepare(dspi->clk); | 1050 | clk_disable_unprepare(dspi->clk); |
1053 | clk_put(dspi->clk); | 1051 | clk_put(dspi->clk); |
1054 | spi_master_put(master); | ||
1055 | free_irq(dspi->irq, dspi); | 1052 | free_irq(dspi->irq, dspi); |
1056 | iounmap(dspi->base); | 1053 | iounmap(dspi->base); |
1057 | r = platform_get_resource(pdev, IORESOURCE_MEM, 0); | 1054 | r = platform_get_resource(pdev, IORESOURCE_MEM, 0); |
1058 | release_mem_region(dspi->pbase, resource_size(r)); | 1055 | release_mem_region(dspi->pbase, resource_size(r)); |
1056 | spi_master_put(master); | ||
1059 | 1057 | ||
1060 | return 0; | 1058 | return 0; |
1061 | } | 1059 | } |