brcm63xx: switch to 3.9 kernel
[openwrt/staging/yousong.git] / target / linux / brcm63xx / patches-3.8 / 005-spi-bcm63xx-properly-prepare-clocks-before-enabling-.patch
1 From e504d3ed9b35f43e61cf239b103667d87cd7bf3c Mon Sep 17 00:00:00 2001
2 From: Jonas Gorski <jogo@openwrt.org>
3 Date: Mon, 10 Sep 2012 01:26:55 +0200
4 Subject: [PATCH 03/12] spi/bcm63xx: properly prepare clocks before enabling
5 them
6
7 Use proper clk_prepare/unprepare calls in preparation for switching
8 to the generic clock framework.
9
10 Signed-off-by: Jonas Gorski <jogo@openwrt.org>
11 ---
12 drivers/spi/spi-bcm63xx.c | 10 +++++-----
13 1 file changed, 5 insertions(+), 5 deletions(-)
14
15 --- a/drivers/spi/spi-bcm63xx.c
16 +++ b/drivers/spi/spi-bcm63xx.c
17 @@ -493,7 +493,7 @@ static int bcm63xx_spi_probe(struct plat
18 }
19
20 /* Initialize hardware */
21 - clk_enable(bs->clk);
22 + clk_prepare_enable(bs->clk);
23 bcm_spi_writeb(bs, SPI_INTR_CLEAR_ALL, SPI_INT_STATUS);
24
25 /* register and we are done */
26 @@ -509,7 +509,7 @@ static int bcm63xx_spi_probe(struct plat
27 return 0;
28
29 out_clk_disable:
30 - clk_disable(clk);
31 + clk_disable_unprepare(clk);
32 out_err:
33 platform_set_drvdata(pdev, NULL);
34 spi_master_put(master);
35 @@ -530,7 +530,7 @@ static int bcm63xx_spi_remove(struct pla
36 bcm_spi_writeb(bs, 0, SPI_INT_MASK);
37
38 /* HW shutdown */
39 - clk_disable(bs->clk);
40 + clk_disable_unprepare(bs->clk);
41 clk_put(bs->clk);
42
43 platform_set_drvdata(pdev, 0);
44 @@ -549,7 +549,7 @@ static int bcm63xx_spi_suspend(struct de
45
46 spi_master_suspend(master);
47
48 - clk_disable(bs->clk);
49 + clk_disable_unprepare(bs->clk);
50
51 return 0;
52 }
53 @@ -560,7 +560,7 @@ static int bcm63xx_spi_resume(struct dev
54 platform_get_drvdata(to_platform_device(dev));
55 struct bcm63xx_spi *bs = spi_master_get_devdata(master);
56
57 - clk_enable(bs->clk);
58 + clk_prepare_enable(bs->clk);
59
60 spi_master_resume(master);
61