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