diff options
author | Ulf Hansson <ulf.hansson@stericsson.com> | 2011-11-04 08:10:09 +0100 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-11-08 18:25:03 +0000 |
commit | 71e63e748ee6f4bad482b8021386eeb74f6e47f1 (patch) | |
tree | 738318d18f037c8f283ff601f549db46ad1a7a51 /drivers/spi | |
parent | abf015f04614a3a7da43d35b55edc90189af4e6a (diff) | |
download | linux-71e63e748ee6f4bad482b8021386eeb74f6e47f1.tar.bz2 |
ARM: 7149/1: spi/pl022: Enable clock in probe
Make sure we enable the clock before leaving probe.
Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'drivers/spi')
-rw-r--r-- | drivers/spi/spi-pl022.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/spi/spi-pl022.c b/drivers/spi/spi-pl022.c index f103e470cb63..5559b2299198 100644 --- a/drivers/spi/spi-pl022.c +++ b/drivers/spi/spi-pl022.c @@ -2184,6 +2184,12 @@ pl022_probe(struct amba_device *adev, const struct amba_id *id) goto err_clk_prep; } + status = clk_enable(pl022->clk); + if (status) { + dev_err(&adev->dev, "could not enable SSP/SPI bus clock\n"); + goto err_no_clk_en; + } + /* Disable SSP */ writew((readw(SSP_CR1(pl022->virtbase)) & (~SSP_CR1_MASK_SSE)), SSP_CR1(pl022->virtbase)); @@ -2237,6 +2243,8 @@ pl022_probe(struct amba_device *adev, const struct amba_id *id) free_irq(adev->irq[0], pl022); err_no_irq: + clk_disable(pl022->clk); + err_no_clk_en: clk_unprepare(pl022->clk); err_clk_prep: clk_put(pl022->clk); |