bcm63xx: add support for linux 3.8
[openwrt.git] / target / linux / brcm63xx / patches-3.8 / 308-MIPS-BCM63XX-expose-the-HS-SPI-clock.patch
1 From 5aeb6273a610f8aab090b3499827177eb41311ba Mon Sep 17 00:00:00 2001
2 From: Jonas Gorski <jonas.gorski@gmail.com>
3 Date: Sat, 12 Nov 2011 12:19:09 +0100
4 Subject: [PATCH 53/79] MIPS: BCM63XX: expose the HS SPI clock
5
6 Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
7 ---
8  arch/mips/bcm63xx/clk.c |   22 ++++++++++++++++++++++
9  1 file changed, 22 insertions(+)
10
11 --- a/arch/mips/bcm63xx/clk.c
12 +++ b/arch/mips/bcm63xx/clk.c
13 @@ -217,6 +217,26 @@ static struct clk clk_spi = {
14  };
15  
16  /*
17 + * SPI clock
18 + */
19 +static void hsspi_set(struct clk *clk, int enable)
20 +{
21 +       u32 mask;
22 +
23 +       if (BCMCPU_IS_6328())
24 +               mask = CKCTL_6328_HSSPI_EN;
25 +       else
26 +               return;
27 +
28 +       bcm_hwclock_set(mask, enable);
29 +}
30 +
31 +static struct clk clk_hsspi = {
32 +       .set    = hsspi_set,
33 +};
34 +
35 +
36 +/*
37   * XTM clock
38   */
39  static void xtm_set(struct clk *clk, int enable)
40 @@ -319,6 +339,8 @@ struct clk *clk_get(struct device *dev,
41                 return &clk_usbd;
42         if (!strcmp(id, "spi"))
43                 return &clk_spi;
44 +       if (!strcmp(id, "hsspi"))
45 +               return &clk_hsspi;
46         if (!strcmp(id, "xtm"))
47                 return &clk_xtm;
48         if (!strcmp(id, "periph"))