diff options
author | Boris BREZILLON <b.brezillon@overkiz.com> | 2013-07-16 11:16:22 -0400 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2013-07-17 04:10:24 -0400 |
commit | dfec4a6e42286dacc733c7e6be43606a5622ca58 (patch) | |
tree | 91cbb9cb21354c412bc87b8b63465fdc442f1dec /drivers/spi/spi-atmel.c | |
parent | ad81f0545ef01ea651886dddac4bef6cec930092 (diff) |
spi: atmel: prepare clk before calling enable
Replace clk_enable/disable with clk_prepare_enable/disable_unprepare to
avoid common clk framework warnings.
Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'drivers/spi/spi-atmel.c')
-rw-r--r-- | drivers/spi/spi-atmel.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/spi/spi-atmel.c b/drivers/spi/spi-atmel.c index ea1ec009f44d..4c6c455685c2 100644 --- a/drivers/spi/spi-atmel.c +++ b/drivers/spi/spi-atmel.c | |||
@@ -1579,7 +1579,9 @@ static int atmel_spi_probe(struct platform_device *pdev) | |||
1579 | goto out_unmap_regs; | 1579 | goto out_unmap_regs; |
1580 | 1580 | ||
1581 | /* Initialize the hardware */ | 1581 | /* Initialize the hardware */ |
1582 | clk_enable(clk); | 1582 | ret = clk_prepare_enable(clk); |
1583 | if (ret) | ||
1584 | goto out_unmap_regs; | ||
1583 | spi_writel(as, CR, SPI_BIT(SWRST)); | 1585 | spi_writel(as, CR, SPI_BIT(SWRST)); |
1584 | spi_writel(as, CR, SPI_BIT(SWRST)); /* AT91SAM9263 Rev B workaround */ | 1586 | spi_writel(as, CR, SPI_BIT(SWRST)); /* AT91SAM9263 Rev B workaround */ |
1585 | if (as->caps.has_wdrbt) { | 1587 | if (as->caps.has_wdrbt) { |
@@ -1609,7 +1611,7 @@ out_free_dma: | |||
1609 | 1611 | ||
1610 | spi_writel(as, CR, SPI_BIT(SWRST)); | 1612 | spi_writel(as, CR, SPI_BIT(SWRST)); |
1611 | spi_writel(as, CR, SPI_BIT(SWRST)); /* AT91SAM9263 Rev B workaround */ | 1613 | spi_writel(as, CR, SPI_BIT(SWRST)); /* AT91SAM9263 Rev B workaround */ |
1612 | clk_disable(clk); | 1614 | clk_disable_unprepare(clk); |
1613 | free_irq(irq, master); | 1615 | free_irq(irq, master); |
1614 | out_unmap_regs: | 1616 | out_unmap_regs: |
1615 | iounmap(as->regs); | 1617 | iounmap(as->regs); |
@@ -1661,7 +1663,7 @@ static int atmel_spi_remove(struct platform_device *pdev) | |||
1661 | dma_free_coherent(&pdev->dev, BUFFER_SIZE, as->buffer, | 1663 | dma_free_coherent(&pdev->dev, BUFFER_SIZE, as->buffer, |
1662 | as->buffer_dma); | 1664 | as->buffer_dma); |
1663 | 1665 | ||
1664 | clk_disable(as->clk); | 1666 | clk_disable_unprepare(as->clk); |
1665 | clk_put(as->clk); | 1667 | clk_put(as->clk); |
1666 | free_irq(as->irq, master); | 1668 | free_irq(as->irq, master); |
1667 | iounmap(as->regs); | 1669 | iounmap(as->regs); |
@@ -1678,7 +1680,7 @@ static int atmel_spi_suspend(struct platform_device *pdev, pm_message_t mesg) | |||
1678 | struct spi_master *master = platform_get_drvdata(pdev); | 1680 | struct spi_master *master = platform_get_drvdata(pdev); |
1679 | struct atmel_spi *as = spi_master_get_devdata(master); | 1681 | struct atmel_spi *as = spi_master_get_devdata(master); |
1680 | 1682 | ||
1681 | clk_disable(as->clk); | 1683 | clk_disable_unprepare(as->clk); |
1682 | return 0; | 1684 | return 0; |
1683 | } | 1685 | } |
1684 | 1686 | ||
@@ -1687,7 +1689,7 @@ static int atmel_spi_resume(struct platform_device *pdev) | |||
1687 | struct spi_master *master = platform_get_drvdata(pdev); | 1689 | struct spi_master *master = platform_get_drvdata(pdev); |
1688 | struct atmel_spi *as = spi_master_get_devdata(master); | 1690 | struct atmel_spi *as = spi_master_get_devdata(master); |
1689 | 1691 | ||
1690 | clk_enable(as->clk); | 1692 | return clk_prepare_enable(as->clk); |
1691 | return 0; | 1693 | return 0; |
1692 | } | 1694 | } |
1693 | 1695 | ||