kernel: generic: spi: allow empty (un)prepare transfer
[openwrt/svn-archive/archive.git] / target / linux / brcm63xx / patches-3.3 / 318-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 @@ -194,6 +194,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 @@ -286,6 +306,8 @@ struct clk *clk_get(struct device *dev,
41 return &clk_usbh;
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"))