diff options
author | Arnd Bergmann <arnd@arndb.de> | 2018-03-28 11:08:34 -0400 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2018-03-28 11:08:34 -0400 |
commit | 7df3f0bb5f90e3470de2798452000e221420059c (patch) | |
tree | dfd2220e8c23a86bd1b446bb30f7fca01d97f2fa /drivers/soc/rockchip/grf.c | |
parent | 7f95de5e4a27d3cda21f7223c22f22ab6c5b3def (diff) | |
parent | b1271993aa3855bda5073c6061a095fd6e6febc6 (diff) |
Merge tag 'v4.17-rockchip-drivers-1' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into next/drivers
Pull "Rockchip driver changes for 4.17" from Heiko Stübner:
Rockchip soc drivers containing conversion of the power-domain driver
to use the clk-bulk APIs and two more socs to disable jtag-switching.
On the plus-side the issue we see with that are _supposed_ to be fixed
in hardware in upcoming socs, so maybe this can be the last of those.
* tag 'v4.17-rockchip-drivers-1' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
soc: rockchip: power-domain: Add a sanity check on pd->num_clks
soc: rockchip: power-domain: use clk_bulk APIs
soc: rockchip: disable jtag switching for RK3128 SoCs
soc: rockchip: disable jtag switching for RK3228/RK3229 SoCs
Diffstat (limited to 'drivers/soc/rockchip/grf.c')
-rw-r--r-- | drivers/soc/rockchip/grf.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/drivers/soc/rockchip/grf.c b/drivers/soc/rockchip/grf.c index 15e71fd6c513..96882ffde67e 100644 --- a/drivers/soc/rockchip/grf.c +++ b/drivers/soc/rockchip/grf.c | |||
@@ -43,6 +43,28 @@ static const struct rockchip_grf_info rk3036_grf __initconst = { | |||
43 | .num_values = ARRAY_SIZE(rk3036_defaults), | 43 | .num_values = ARRAY_SIZE(rk3036_defaults), |
44 | }; | 44 | }; |
45 | 45 | ||
46 | #define RK3128_GRF_SOC_CON0 0x140 | ||
47 | |||
48 | static const struct rockchip_grf_value rk3128_defaults[] __initconst = { | ||
49 | { "jtag switching", RK3128_GRF_SOC_CON0, HIWORD_UPDATE(0, 1, 8) }, | ||
50 | }; | ||
51 | |||
52 | static const struct rockchip_grf_info rk3128_grf __initconst = { | ||
53 | .values = rk3128_defaults, | ||
54 | .num_values = ARRAY_SIZE(rk3128_defaults), | ||
55 | }; | ||
56 | |||
57 | #define RK3228_GRF_SOC_CON6 0x418 | ||
58 | |||
59 | static const struct rockchip_grf_value rk3228_defaults[] __initconst = { | ||
60 | { "jtag switching", RK3228_GRF_SOC_CON6, HIWORD_UPDATE(0, 1, 8) }, | ||
61 | }; | ||
62 | |||
63 | static const struct rockchip_grf_info rk3228_grf __initconst = { | ||
64 | .values = rk3228_defaults, | ||
65 | .num_values = ARRAY_SIZE(rk3228_defaults), | ||
66 | }; | ||
67 | |||
46 | #define RK3288_GRF_SOC_CON0 0x244 | 68 | #define RK3288_GRF_SOC_CON0 0x244 |
47 | 69 | ||
48 | static const struct rockchip_grf_value rk3288_defaults[] __initconst = { | 70 | static const struct rockchip_grf_value rk3288_defaults[] __initconst = { |
@@ -92,6 +114,12 @@ static const struct of_device_id rockchip_grf_dt_match[] __initconst = { | |||
92 | .compatible = "rockchip,rk3036-grf", | 114 | .compatible = "rockchip,rk3036-grf", |
93 | .data = (void *)&rk3036_grf, | 115 | .data = (void *)&rk3036_grf, |
94 | }, { | 116 | }, { |
117 | .compatible = "rockchip,rk3128-grf", | ||
118 | .data = (void *)&rk3128_grf, | ||
119 | }, { | ||
120 | .compatible = "rockchip,rk3228-grf", | ||
121 | .data = (void *)&rk3228_grf, | ||
122 | }, { | ||
95 | .compatible = "rockchip,rk3288-grf", | 123 | .compatible = "rockchip,rk3288-grf", |
96 | .data = (void *)&rk3288_grf, | 124 | .data = (void *)&rk3288_grf, |
97 | }, { | 125 | }, { |