diff options
author | Olof Johansson <olof@lixom.net> | 2016-10-29 14:05:49 -0400 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2016-10-29 14:05:49 -0400 |
commit | 10e15a639caac3be3c142f8837a17520da84db9f (patch) | |
tree | 3d4a894bfd54048510654d3dbbefa673624eeb36 | |
parent | 2723605169d8f58ebc2881d2b8a59e6ee6fe074a (diff) | |
parent | 8e68c65d111a57a4cbe41dc886bb2a1e671e0b6e (diff) |
Merge tag 'uniphier-fixes-v4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-uniphier into fixes
UniPhier ARM SoC fixes for v4.9
- Add "select ARCH_HAS_RESET_CONTROLLER" in Kconfig
- Rename wrongly-named mioctrl to sdctrl
* tag 'uniphier-fixes-v4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-uniphier:
arm64: dts: uniphier: change MIO node to SD control node
ARM: dts: uniphier: change MIO node to SD control node
reset: uniphier: rename MIO reset to SD reset for Pro5, PXs2, LD20 SoCs
arm64: uniphier: select ARCH_HAS_RESET_CONTROLLER
ARM: uniphier: select ARCH_HAS_RESET_CONTROLLER
Signed-off-by: Olof Johansson <olof@lixom.net>
-rw-r--r-- | Documentation/devicetree/bindings/reset/uniphier-reset.txt | 62 | ||||
-rw-r--r-- | arch/arm/boot/dts/uniphier-pro5.dtsi | 4 | ||||
-rw-r--r-- | arch/arm/boot/dts/uniphier-pxs2.dtsi | 4 | ||||
-rw-r--r-- | arch/arm/mach-uniphier/Kconfig | 1 | ||||
-rw-r--r-- | arch/arm64/Kconfig.platforms | 1 | ||||
-rw-r--r-- | arch/arm64/boot/dts/socionext/uniphier-ld20.dtsi | 12 | ||||
-rw-r--r-- | drivers/reset/reset-uniphier.c | 16 |
7 files changed, 51 insertions, 49 deletions
diff --git a/Documentation/devicetree/bindings/reset/uniphier-reset.txt b/Documentation/devicetree/bindings/reset/uniphier-reset.txt index e6bbfccd56c3..5020524cddeb 100644 --- a/Documentation/devicetree/bindings/reset/uniphier-reset.txt +++ b/Documentation/devicetree/bindings/reset/uniphier-reset.txt | |||
@@ -6,25 +6,25 @@ System reset | |||
6 | 6 | ||
7 | Required properties: | 7 | Required properties: |
8 | - compatible: should be one of the following: | 8 | - compatible: should be one of the following: |
9 | "socionext,uniphier-sld3-reset" - for PH1-sLD3 SoC. | 9 | "socionext,uniphier-sld3-reset" - for sLD3 SoC. |
10 | "socionext,uniphier-ld4-reset" - for PH1-LD4 SoC. | 10 | "socionext,uniphier-ld4-reset" - for LD4 SoC. |
11 | "socionext,uniphier-pro4-reset" - for PH1-Pro4 SoC. | 11 | "socionext,uniphier-pro4-reset" - for Pro4 SoC. |
12 | "socionext,uniphier-sld8-reset" - for PH1-sLD8 SoC. | 12 | "socionext,uniphier-sld8-reset" - for sLD8 SoC. |
13 | "socionext,uniphier-pro5-reset" - for PH1-Pro5 SoC. | 13 | "socionext,uniphier-pro5-reset" - for Pro5 SoC. |
14 | "socionext,uniphier-pxs2-reset" - for ProXstream2/PH1-LD6b SoC. | 14 | "socionext,uniphier-pxs2-reset" - for PXs2/LD6b SoC. |
15 | "socionext,uniphier-ld11-reset" - for PH1-LD11 SoC. | 15 | "socionext,uniphier-ld11-reset" - for LD11 SoC. |
16 | "socionext,uniphier-ld20-reset" - for PH1-LD20 SoC. | 16 | "socionext,uniphier-ld20-reset" - for LD20 SoC. |
17 | - #reset-cells: should be 1. | 17 | - #reset-cells: should be 1. |
18 | 18 | ||
19 | Example: | 19 | Example: |
20 | 20 | ||
21 | sysctrl@61840000 { | 21 | sysctrl@61840000 { |
22 | compatible = "socionext,uniphier-ld20-sysctrl", | 22 | compatible = "socionext,uniphier-ld11-sysctrl", |
23 | "simple-mfd", "syscon"; | 23 | "simple-mfd", "syscon"; |
24 | reg = <0x61840000 0x4000>; | 24 | reg = <0x61840000 0x4000>; |
25 | 25 | ||
26 | reset { | 26 | reset { |
27 | compatible = "socionext,uniphier-ld20-reset"; | 27 | compatible = "socionext,uniphier-ld11-reset"; |
28 | #reset-cells = <1>; | 28 | #reset-cells = <1>; |
29 | }; | 29 | }; |
30 | 30 | ||
@@ -32,30 +32,30 @@ Example: | |||
32 | }; | 32 | }; |
33 | 33 | ||
34 | 34 | ||
35 | Media I/O (MIO) reset | 35 | Media I/O (MIO) reset, SD reset |
36 | --------------------- | 36 | ------------------------------- |
37 | 37 | ||
38 | Required properties: | 38 | Required properties: |
39 | - compatible: should be one of the following: | 39 | - compatible: should be one of the following: |
40 | "socionext,uniphier-sld3-mio-reset" - for PH1-sLD3 SoC. | 40 | "socionext,uniphier-sld3-mio-reset" - for sLD3 SoC. |
41 | "socionext,uniphier-ld4-mio-reset" - for PH1-LD4 SoC. | 41 | "socionext,uniphier-ld4-mio-reset" - for LD4 SoC. |
42 | "socionext,uniphier-pro4-mio-reset" - for PH1-Pro4 SoC. | 42 | "socionext,uniphier-pro4-mio-reset" - for Pro4 SoC. |
43 | "socionext,uniphier-sld8-mio-reset" - for PH1-sLD8 SoC. | 43 | "socionext,uniphier-sld8-mio-reset" - for sLD8 SoC. |
44 | "socionext,uniphier-pro5-mio-reset" - for PH1-Pro5 SoC. | 44 | "socionext,uniphier-pro5-sd-reset" - for Pro5 SoC. |
45 | "socionext,uniphier-pxs2-mio-reset" - for ProXstream2/PH1-LD6b SoC. | 45 | "socionext,uniphier-pxs2-sd-reset" - for PXs2/LD6b SoC. |
46 | "socionext,uniphier-ld11-mio-reset" - for PH1-LD11 SoC. | 46 | "socionext,uniphier-ld11-mio-reset" - for LD11 SoC. |
47 | "socionext,uniphier-ld20-mio-reset" - for PH1-LD20 SoC. | 47 | "socionext,uniphier-ld20-sd-reset" - for LD20 SoC. |
48 | - #reset-cells: should be 1. | 48 | - #reset-cells: should be 1. |
49 | 49 | ||
50 | Example: | 50 | Example: |
51 | 51 | ||
52 | mioctrl@59810000 { | 52 | mioctrl@59810000 { |
53 | compatible = "socionext,uniphier-ld20-mioctrl", | 53 | compatible = "socionext,uniphier-ld11-mioctrl", |
54 | "simple-mfd", "syscon"; | 54 | "simple-mfd", "syscon"; |
55 | reg = <0x59810000 0x800>; | 55 | reg = <0x59810000 0x800>; |
56 | 56 | ||
57 | reset { | 57 | reset { |
58 | compatible = "socionext,uniphier-ld20-mio-reset"; | 58 | compatible = "socionext,uniphier-ld11-mio-reset"; |
59 | #reset-cells = <1>; | 59 | #reset-cells = <1>; |
60 | }; | 60 | }; |
61 | 61 | ||
@@ -68,24 +68,24 @@ Peripheral reset | |||
68 | 68 | ||
69 | Required properties: | 69 | Required properties: |
70 | - compatible: should be one of the following: | 70 | - compatible: should be one of the following: |
71 | "socionext,uniphier-ld4-peri-reset" - for PH1-LD4 SoC. | 71 | "socionext,uniphier-ld4-peri-reset" - for LD4 SoC. |
72 | "socionext,uniphier-pro4-peri-reset" - for PH1-Pro4 SoC. | 72 | "socionext,uniphier-pro4-peri-reset" - for Pro4 SoC. |
73 | "socionext,uniphier-sld8-peri-reset" - for PH1-sLD8 SoC. | 73 | "socionext,uniphier-sld8-peri-reset" - for sLD8 SoC. |
74 | "socionext,uniphier-pro5-peri-reset" - for PH1-Pro5 SoC. | 74 | "socionext,uniphier-pro5-peri-reset" - for Pro5 SoC. |
75 | "socionext,uniphier-pxs2-peri-reset" - for ProXstream2/PH1-LD6b SoC. | 75 | "socionext,uniphier-pxs2-peri-reset" - for PXs2/LD6b SoC. |
76 | "socionext,uniphier-ld11-peri-reset" - for PH1-LD11 SoC. | 76 | "socionext,uniphier-ld11-peri-reset" - for LD11 SoC. |
77 | "socionext,uniphier-ld20-peri-reset" - for PH1-LD20 SoC. | 77 | "socionext,uniphier-ld20-peri-reset" - for LD20 SoC. |
78 | - #reset-cells: should be 1. | 78 | - #reset-cells: should be 1. |
79 | 79 | ||
80 | Example: | 80 | Example: |
81 | 81 | ||
82 | perictrl@59820000 { | 82 | perictrl@59820000 { |
83 | compatible = "socionext,uniphier-ld20-perictrl", | 83 | compatible = "socionext,uniphier-ld11-perictrl", |
84 | "simple-mfd", "syscon"; | 84 | "simple-mfd", "syscon"; |
85 | reg = <0x59820000 0x200>; | 85 | reg = <0x59820000 0x200>; |
86 | 86 | ||
87 | reset { | 87 | reset { |
88 | compatible = "socionext,uniphier-ld20-peri-reset"; | 88 | compatible = "socionext,uniphier-ld11-peri-reset"; |
89 | #reset-cells = <1>; | 89 | #reset-cells = <1>; |
90 | }; | 90 | }; |
91 | 91 | ||
diff --git a/arch/arm/boot/dts/uniphier-pro5.dtsi b/arch/arm/boot/dts/uniphier-pro5.dtsi index 2c49c3614bda..5357ea9c14b1 100644 --- a/arch/arm/boot/dts/uniphier-pro5.dtsi +++ b/arch/arm/boot/dts/uniphier-pro5.dtsi | |||
@@ -184,11 +184,11 @@ | |||
184 | }; | 184 | }; |
185 | 185 | ||
186 | &mio_clk { | 186 | &mio_clk { |
187 | compatible = "socionext,uniphier-pro5-mio-clock"; | 187 | compatible = "socionext,uniphier-pro5-sd-clock"; |
188 | }; | 188 | }; |
189 | 189 | ||
190 | &mio_rst { | 190 | &mio_rst { |
191 | compatible = "socionext,uniphier-pro5-mio-reset"; | 191 | compatible = "socionext,uniphier-pro5-sd-reset"; |
192 | }; | 192 | }; |
193 | 193 | ||
194 | &peri_clk { | 194 | &peri_clk { |
diff --git a/arch/arm/boot/dts/uniphier-pxs2.dtsi b/arch/arm/boot/dts/uniphier-pxs2.dtsi index 8789cd518933..950f07ba0337 100644 --- a/arch/arm/boot/dts/uniphier-pxs2.dtsi +++ b/arch/arm/boot/dts/uniphier-pxs2.dtsi | |||
@@ -197,11 +197,11 @@ | |||
197 | }; | 197 | }; |
198 | 198 | ||
199 | &mio_clk { | 199 | &mio_clk { |
200 | compatible = "socionext,uniphier-pxs2-mio-clock"; | 200 | compatible = "socionext,uniphier-pxs2-sd-clock"; |
201 | }; | 201 | }; |
202 | 202 | ||
203 | &mio_rst { | 203 | &mio_rst { |
204 | compatible = "socionext,uniphier-pxs2-mio-reset"; | 204 | compatible = "socionext,uniphier-pxs2-sd-reset"; |
205 | }; | 205 | }; |
206 | 206 | ||
207 | &peri_clk { | 207 | &peri_clk { |
diff --git a/arch/arm/mach-uniphier/Kconfig b/arch/arm/mach-uniphier/Kconfig index 82dddee3a469..3930fbba30b4 100644 --- a/arch/arm/mach-uniphier/Kconfig +++ b/arch/arm/mach-uniphier/Kconfig | |||
@@ -1,6 +1,7 @@ | |||
1 | config ARCH_UNIPHIER | 1 | config ARCH_UNIPHIER |
2 | bool "Socionext UniPhier SoCs" | 2 | bool "Socionext UniPhier SoCs" |
3 | depends on ARCH_MULTI_V7 | 3 | depends on ARCH_MULTI_V7 |
4 | select ARCH_HAS_RESET_CONTROLLER | ||
4 | select ARM_AMBA | 5 | select ARM_AMBA |
5 | select ARM_GLOBAL_TIMER | 6 | select ARM_GLOBAL_TIMER |
6 | select ARM_GIC | 7 | select ARM_GIC |
diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms index cfbdf02ef566..101794f5ce10 100644 --- a/arch/arm64/Kconfig.platforms +++ b/arch/arm64/Kconfig.platforms | |||
@@ -190,6 +190,7 @@ config ARCH_THUNDER | |||
190 | 190 | ||
191 | config ARCH_UNIPHIER | 191 | config ARCH_UNIPHIER |
192 | bool "Socionext UniPhier SoC Family" | 192 | bool "Socionext UniPhier SoC Family" |
193 | select ARCH_HAS_RESET_CONTROLLER | ||
193 | select PINCTRL | 194 | select PINCTRL |
194 | help | 195 | help |
195 | This enables support for Socionext UniPhier SoC family. | 196 | This enables support for Socionext UniPhier SoC family. |
diff --git a/arch/arm64/boot/dts/socionext/uniphier-ld20.dtsi b/arch/arm64/boot/dts/socionext/uniphier-ld20.dtsi index 08fd7cf7769c..56a1b2e92cf3 100644 --- a/arch/arm64/boot/dts/socionext/uniphier-ld20.dtsi +++ b/arch/arm64/boot/dts/socionext/uniphier-ld20.dtsi | |||
@@ -257,18 +257,18 @@ | |||
257 | reg = <0x59801000 0x400>; | 257 | reg = <0x59801000 0x400>; |
258 | }; | 258 | }; |
259 | 259 | ||
260 | mioctrl@59810000 { | 260 | sdctrl@59810000 { |
261 | compatible = "socionext,uniphier-mioctrl", | 261 | compatible = "socionext,uniphier-ld20-sdctrl", |
262 | "simple-mfd", "syscon"; | 262 | "simple-mfd", "syscon"; |
263 | reg = <0x59810000 0x800>; | 263 | reg = <0x59810000 0x800>; |
264 | 264 | ||
265 | mio_clk: clock { | 265 | sd_clk: clock { |
266 | compatible = "socionext,uniphier-ld20-mio-clock"; | 266 | compatible = "socionext,uniphier-ld20-sd-clock"; |
267 | #clock-cells = <1>; | 267 | #clock-cells = <1>; |
268 | }; | 268 | }; |
269 | 269 | ||
270 | mio_rst: reset { | 270 | sd_rst: reset { |
271 | compatible = "socionext,uniphier-ld20-mio-reset"; | 271 | compatible = "socionext,uniphier-ld20-sd-reset"; |
272 | #reset-cells = <1>; | 272 | #reset-cells = <1>; |
273 | }; | 273 | }; |
274 | }; | 274 | }; |
diff --git a/drivers/reset/reset-uniphier.c b/drivers/reset/reset-uniphier.c index 8b2558e7363e..968c3ae4535c 100644 --- a/drivers/reset/reset-uniphier.c +++ b/drivers/reset/reset-uniphier.c | |||
@@ -154,7 +154,7 @@ const struct uniphier_reset_data uniphier_sld3_mio_reset_data[] = { | |||
154 | UNIPHIER_RESET_END, | 154 | UNIPHIER_RESET_END, |
155 | }; | 155 | }; |
156 | 156 | ||
157 | const struct uniphier_reset_data uniphier_pro5_mio_reset_data[] = { | 157 | const struct uniphier_reset_data uniphier_pro5_sd_reset_data[] = { |
158 | UNIPHIER_MIO_RESET_SD(0, 0), | 158 | UNIPHIER_MIO_RESET_SD(0, 0), |
159 | UNIPHIER_MIO_RESET_SD(1, 1), | 159 | UNIPHIER_MIO_RESET_SD(1, 1), |
160 | UNIPHIER_MIO_RESET_EMMC_HW_RESET(6, 1), | 160 | UNIPHIER_MIO_RESET_EMMC_HW_RESET(6, 1), |
@@ -360,7 +360,7 @@ static const struct of_device_id uniphier_reset_match[] = { | |||
360 | .compatible = "socionext,uniphier-ld20-reset", | 360 | .compatible = "socionext,uniphier-ld20-reset", |
361 | .data = uniphier_ld20_sys_reset_data, | 361 | .data = uniphier_ld20_sys_reset_data, |
362 | }, | 362 | }, |
363 | /* Media I/O reset */ | 363 | /* Media I/O reset, SD reset */ |
364 | { | 364 | { |
365 | .compatible = "socionext,uniphier-sld3-mio-reset", | 365 | .compatible = "socionext,uniphier-sld3-mio-reset", |
366 | .data = uniphier_sld3_mio_reset_data, | 366 | .data = uniphier_sld3_mio_reset_data, |
@@ -378,20 +378,20 @@ static const struct of_device_id uniphier_reset_match[] = { | |||
378 | .data = uniphier_sld3_mio_reset_data, | 378 | .data = uniphier_sld3_mio_reset_data, |
379 | }, | 379 | }, |
380 | { | 380 | { |
381 | .compatible = "socionext,uniphier-pro5-mio-reset", | 381 | .compatible = "socionext,uniphier-pro5-sd-reset", |
382 | .data = uniphier_pro5_mio_reset_data, | 382 | .data = uniphier_pro5_sd_reset_data, |
383 | }, | 383 | }, |
384 | { | 384 | { |
385 | .compatible = "socionext,uniphier-pxs2-mio-reset", | 385 | .compatible = "socionext,uniphier-pxs2-sd-reset", |
386 | .data = uniphier_pro5_mio_reset_data, | 386 | .data = uniphier_pro5_sd_reset_data, |
387 | }, | 387 | }, |
388 | { | 388 | { |
389 | .compatible = "socionext,uniphier-ld11-mio-reset", | 389 | .compatible = "socionext,uniphier-ld11-mio-reset", |
390 | .data = uniphier_sld3_mio_reset_data, | 390 | .data = uniphier_sld3_mio_reset_data, |
391 | }, | 391 | }, |
392 | { | 392 | { |
393 | .compatible = "socionext,uniphier-ld20-mio-reset", | 393 | .compatible = "socionext,uniphier-ld20-sd-reset", |
394 | .data = uniphier_pro5_mio_reset_data, | 394 | .data = uniphier_pro5_sd_reset_data, |
395 | }, | 395 | }, |
396 | /* Peripheral reset */ | 396 | /* Peripheral reset */ |
397 | { | 397 | { |