aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2017-10-30 08:43:36 -0400
committerArnd Bergmann <arnd@arndb.de>2017-10-30 08:43:36 -0400
commit0292f8a8f8e9d74ad8519c92d712039edb8f08b4 (patch)
tree5260aa3afcd24aa023543803512bccf6487b5eb7
parent2132910ec924bbbba62de36f19121f3ef79147d4 (diff)
parenta1763a82a3e5896fa39b9e4e7b9f42c8f39390ae (diff)
Merge tag 'uniphier-dt-v4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-uniphier into next/dt
Pull "UniPhier ARM SoC DT updates for v4.15" from Masahiro Yamada: - add thermal monitor and thermal zone nodes - fix W=2 warnings - add GPIO controller nodes and related properties - add resets properties * tag 'uniphier-dt-v4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-uniphier: ARM: dts: uniphier: add resets properties ARM: dts: uniphier: add GPIO hog definition ARM: dts: uniphier: route on-board device IRQ to GPIO controller ARM: dts: uniphier: add GPIO controller nodes ARM: dts: uniphier: fix W=2 build warnings ARM: dts: uniphier: add nodes of thermal monitor and thermal zone for PXs2
-rw-r--r--arch/arm/boot/dts/uniphier-ld4-ref.dts10
-rw-r--r--arch/arm/boot/dts/uniphier-ld4.dtsi25
-rw-r--r--arch/arm/boot/dts/uniphier-ld6b-ref.dts10
-rw-r--r--arch/arm/boot/dts/uniphier-pinctrl.dtsi46
-rw-r--r--arch/arm/boot/dts/uniphier-pro4-ref.dts10
-rw-r--r--arch/arm/boot/dts/uniphier-pro4.dtsi27
-rw-r--r--arch/arm/boot/dts/uniphier-pro5.dtsi29
-rw-r--r--arch/arm/boot/dts/uniphier-pxs2.dtsi80
-rw-r--r--arch/arm/boot/dts/uniphier-sld8-ref.dts10
-rw-r--r--arch/arm/boot/dts/uniphier-sld8.dtsi29
-rw-r--r--arch/arm/boot/dts/uniphier-support-card.dtsi3
11 files changed, 240 insertions, 39 deletions
diff --git a/arch/arm/boot/dts/uniphier-ld4-ref.dts b/arch/arm/boot/dts/uniphier-ld4-ref.dts
index b3aaab354f3e..0056852c4fb0 100644
--- a/arch/arm/boot/dts/uniphier-ld4-ref.dts
+++ b/arch/arm/boot/dts/uniphier-ld4-ref.dts
@@ -38,7 +38,7 @@
38}; 38};
39 39
40&ethsc { 40&ethsc {
41 interrupts = <0 49 4>; 41 interrupts = <1 8>;
42}; 42};
43 43
44&serial0 { 44&serial0 {
@@ -53,6 +53,14 @@
53 status = "okay"; 53 status = "okay";
54}; 54};
55 55
56&gpio {
57 xirq1 {
58 gpio-hog;
59 gpios = <121 0>;
60 input;
61 };
62};
63
56&i2c0 { 64&i2c0 {
57 status = "okay"; 65 status = "okay";
58}; 66};
diff --git a/arch/arm/boot/dts/uniphier-ld4.dtsi b/arch/arm/boot/dts/uniphier-ld4.dtsi
index 79183db5b386..470dca93ffb1 100644
--- a/arch/arm/boot/dts/uniphier-ld4.dtsi
+++ b/arch/arm/boot/dts/uniphier-ld4.dtsi
@@ -37,7 +37,7 @@
37 clock-frequency = <24576000>; 37 clock-frequency = <24576000>;
38 }; 38 };
39 39
40 arm_timer_clk: arm_timer_clk { 40 arm_timer_clk: arm-timer {
41 #clock-cells = <0>; 41 #clock-cells = <0>;
42 compatible = "fixed-clock"; 42 compatible = "fixed-clock";
43 clock-frequency = <50000000>; 43 clock-frequency = <50000000>;
@@ -71,6 +71,7 @@
71 pinctrl-names = "default"; 71 pinctrl-names = "default";
72 pinctrl-0 = <&pinctrl_uart0>; 72 pinctrl-0 = <&pinctrl_uart0>;
73 clocks = <&peri_clk 0>; 73 clocks = <&peri_clk 0>;
74 resets = <&peri_rst 0>;
74 }; 75 };
75 76
76 serial1: serial@54006900 { 77 serial1: serial@54006900 {
@@ -81,6 +82,7 @@
81 pinctrl-names = "default"; 82 pinctrl-names = "default";
82 pinctrl-0 = <&pinctrl_uart1>; 83 pinctrl-0 = <&pinctrl_uart1>;
83 clocks = <&peri_clk 1>; 84 clocks = <&peri_clk 1>;
85 resets = <&peri_rst 1>;
84 }; 86 };
85 87
86 serial2: serial@54006a00 { 88 serial2: serial@54006a00 {
@@ -91,6 +93,7 @@
91 pinctrl-names = "default"; 93 pinctrl-names = "default";
92 pinctrl-0 = <&pinctrl_uart2>; 94 pinctrl-0 = <&pinctrl_uart2>;
93 clocks = <&peri_clk 2>; 95 clocks = <&peri_clk 2>;
96 resets = <&peri_rst 2>;
94 }; 97 };
95 98
96 serial3: serial@54006b00 { 99 serial3: serial@54006b00 {
@@ -101,6 +104,21 @@
101 pinctrl-names = "default"; 104 pinctrl-names = "default";
102 pinctrl-0 = <&pinctrl_uart3>; 105 pinctrl-0 = <&pinctrl_uart3>;
103 clocks = <&peri_clk 3>; 106 clocks = <&peri_clk 3>;
107 resets = <&peri_rst 3>;
108 };
109
110 gpio: gpio@55000000 {
111 compatible = "socionext,uniphier-gpio";
112 reg = <0x55000000 0x200>;
113 interrupt-parent = <&aidet>;
114 interrupt-controller;
115 #interrupt-cells = <2>;
116 gpio-controller;
117 #gpio-cells = <2>;
118 gpio-ranges = <&pinctrl 0 0 0>;
119 gpio-ranges-group-names = "gpio_range";
120 ngpios = <136>;
121 socionext,interrupt-ranges = <0 48 13>, <14 62 2>;
104 }; 122 };
105 123
106 i2c0: i2c@58400000 { 124 i2c0: i2c@58400000 {
@@ -113,6 +131,7 @@
113 pinctrl-names = "default"; 131 pinctrl-names = "default";
114 pinctrl-0 = <&pinctrl_i2c0>; 132 pinctrl-0 = <&pinctrl_i2c0>;
115 clocks = <&peri_clk 4>; 133 clocks = <&peri_clk 4>;
134 resets = <&peri_rst 4>;
116 clock-frequency = <100000>; 135 clock-frequency = <100000>;
117 }; 136 };
118 137
@@ -126,6 +145,7 @@
126 pinctrl-names = "default"; 145 pinctrl-names = "default";
127 pinctrl-0 = <&pinctrl_i2c1>; 146 pinctrl-0 = <&pinctrl_i2c1>;
128 clocks = <&peri_clk 5>; 147 clocks = <&peri_clk 5>;
148 resets = <&peri_rst 5>;
129 clock-frequency = <100000>; 149 clock-frequency = <100000>;
130 }; 150 };
131 151
@@ -139,6 +159,7 @@
139 pinctrl-names = "default"; 159 pinctrl-names = "default";
140 pinctrl-0 = <&pinctrl_i2c2>; 160 pinctrl-0 = <&pinctrl_i2c2>;
141 clocks = <&peri_clk 6>; 161 clocks = <&peri_clk 6>;
162 resets = <&peri_rst 6>;
142 clock-frequency = <400000>; 163 clock-frequency = <400000>;
143 }; 164 };
144 165
@@ -152,6 +173,7 @@
152 pinctrl-names = "default"; 173 pinctrl-names = "default";
153 pinctrl-0 = <&pinctrl_i2c3>; 174 pinctrl-0 = <&pinctrl_i2c3>;
154 clocks = <&peri_clk 7>; 175 clocks = <&peri_clk 7>;
176 resets = <&peri_rst 7>;
155 clock-frequency = <100000>; 177 clock-frequency = <100000>;
156 }; 178 };
157 179
@@ -302,6 +324,7 @@
302 pinctrl-names = "default"; 324 pinctrl-names = "default";
303 pinctrl-0 = <&pinctrl_nand2cs>; 325 pinctrl-0 = <&pinctrl_nand2cs>;
304 clocks = <&sys_clk 2>; 326 clocks = <&sys_clk 2>;
327 resets = <&sys_rst 2>;
305 }; 328 };
306 }; 329 };
307}; 330};
diff --git a/arch/arm/boot/dts/uniphier-ld6b-ref.dts b/arch/arm/boot/dts/uniphier-ld6b-ref.dts
index 2188d114d79b..0e510a725976 100644
--- a/arch/arm/boot/dts/uniphier-ld6b-ref.dts
+++ b/arch/arm/boot/dts/uniphier-ld6b-ref.dts
@@ -40,7 +40,7 @@
40}; 40};
41 41
42&ethsc { 42&ethsc {
43 interrupts = <0 52 4>; 43 interrupts = <4 8>;
44}; 44};
45 45
46&serial0 { 46&serial0 {
@@ -55,6 +55,14 @@
55 status = "okay"; 55 status = "okay";
56}; 56};
57 57
58&gpio {
59 xirq4 {
60 gpio-hog;
61 gpios = <124 0>;
62 input;
63 };
64};
65
58&i2c0 { 66&i2c0 {
59 status = "okay"; 67 status = "okay";
60}; 68};
diff --git a/arch/arm/boot/dts/uniphier-pinctrl.dtsi b/arch/arm/boot/dts/uniphier-pinctrl.dtsi
index be82cddc4072..de481c372467 100644
--- a/arch/arm/boot/dts/uniphier-pinctrl.dtsi
+++ b/arch/arm/boot/dts/uniphier-pinctrl.dtsi
@@ -8,117 +8,117 @@
8 */ 8 */
9 9
10&pinctrl { 10&pinctrl {
11 pinctrl_aout: aout_grp { 11 pinctrl_aout: aout {
12 groups = "aout"; 12 groups = "aout";
13 function = "aout"; 13 function = "aout";
14 }; 14 };
15 15
16 pinctrl_emmc: emmc_grp { 16 pinctrl_emmc: emmc {
17 groups = "emmc", "emmc_dat8"; 17 groups = "emmc", "emmc_dat8";
18 function = "emmc"; 18 function = "emmc";
19 }; 19 };
20 20
21 pinctrl_ether_mii: ether_mii_grp { 21 pinctrl_ether_mii: ether-mii {
22 groups = "ether_mii"; 22 groups = "ether_mii";
23 function = "ether_mii"; 23 function = "ether_mii";
24 }; 24 };
25 25
26 pinctrl_ether_rgmii: ether_rgmii_grp { 26 pinctrl_ether_rgmii: ether-rgmii {
27 groups = "ether_rgmii"; 27 groups = "ether_rgmii";
28 function = "ether_rgmii"; 28 function = "ether_rgmii";
29 }; 29 };
30 30
31 pinctrl_ether_rmii: ether_rmii_grp { 31 pinctrl_ether_rmii: ether-rmii {
32 groups = "ether_rmii"; 32 groups = "ether_rmii";
33 function = "ether_rmii"; 33 function = "ether_rmii";
34 }; 34 };
35 35
36 pinctrl_i2c0: i2c0_grp { 36 pinctrl_i2c0: i2c0 {
37 groups = "i2c0"; 37 groups = "i2c0";
38 function = "i2c0"; 38 function = "i2c0";
39 }; 39 };
40 40
41 pinctrl_i2c1: i2c1_grp { 41 pinctrl_i2c1: i2c1 {
42 groups = "i2c1"; 42 groups = "i2c1";
43 function = "i2c1"; 43 function = "i2c1";
44 }; 44 };
45 45
46 pinctrl_i2c2: i2c2_grp { 46 pinctrl_i2c2: i2c2 {
47 groups = "i2c2"; 47 groups = "i2c2";
48 function = "i2c2"; 48 function = "i2c2";
49 }; 49 };
50 50
51 pinctrl_i2c3: i2c3_grp { 51 pinctrl_i2c3: i2c3 {
52 groups = "i2c3"; 52 groups = "i2c3";
53 function = "i2c3"; 53 function = "i2c3";
54 }; 54 };
55 55
56 pinctrl_i2c4: i2c4_grp { 56 pinctrl_i2c4: i2c4 {
57 groups = "i2c4"; 57 groups = "i2c4";
58 function = "i2c4"; 58 function = "i2c4";
59 }; 59 };
60 60
61 pinctrl_nand: nand_grp { 61 pinctrl_nand: nand {
62 groups = "nand"; 62 groups = "nand";
63 function = "nand"; 63 function = "nand";
64 }; 64 };
65 65
66 pinctrl_nand2cs: nand2cs_grp { 66 pinctrl_nand2cs: nand2cs {
67 groups = "nand", "nand_cs1"; 67 groups = "nand", "nand_cs1";
68 function = "nand"; 68 function = "nand";
69 }; 69 };
70 70
71 pinctrl_sd: sd_grp { 71 pinctrl_sd: sd {
72 groups = "sd"; 72 groups = "sd";
73 function = "sd"; 73 function = "sd";
74 }; 74 };
75 75
76 pinctrl_sd1: sd1_grp { 76 pinctrl_sd1: sd1 {
77 groups = "sd1"; 77 groups = "sd1";
78 function = "sd1"; 78 function = "sd1";
79 }; 79 };
80 80
81 pinctrl_system_bus: system_bus_grp { 81 pinctrl_system_bus: system-bus {
82 groups = "system_bus", "system_bus_cs1"; 82 groups = "system_bus", "system_bus_cs1";
83 function = "system_bus"; 83 function = "system_bus";
84 }; 84 };
85 85
86 pinctrl_uart0: uart0_grp { 86 pinctrl_uart0: uart0 {
87 groups = "uart0"; 87 groups = "uart0";
88 function = "uart0"; 88 function = "uart0";
89 }; 89 };
90 90
91 pinctrl_uart1: uart1_grp { 91 pinctrl_uart1: uart1 {
92 groups = "uart1"; 92 groups = "uart1";
93 function = "uart1"; 93 function = "uart1";
94 }; 94 };
95 95
96 pinctrl_uart2: uart2_grp { 96 pinctrl_uart2: uart2 {
97 groups = "uart2"; 97 groups = "uart2";
98 function = "uart2"; 98 function = "uart2";
99 }; 99 };
100 100
101 pinctrl_uart3: uart3_grp { 101 pinctrl_uart3: uart3 {
102 groups = "uart3"; 102 groups = "uart3";
103 function = "uart3"; 103 function = "uart3";
104 }; 104 };
105 105
106 pinctrl_usb0: usb0_grp { 106 pinctrl_usb0: usb0 {
107 groups = "usb0"; 107 groups = "usb0";
108 function = "usb0"; 108 function = "usb0";
109 }; 109 };
110 110
111 pinctrl_usb1: usb1_grp { 111 pinctrl_usb1: usb1 {
112 groups = "usb1"; 112 groups = "usb1";
113 function = "usb1"; 113 function = "usb1";
114 }; 114 };
115 115
116 pinctrl_usb2: usb2_grp { 116 pinctrl_usb2: usb2 {
117 groups = "usb2"; 117 groups = "usb2";
118 function = "usb2"; 118 function = "usb2";
119 }; 119 };
120 120
121 pinctrl_usb3: usb3_grp { 121 pinctrl_usb3: usb3 {
122 groups = "usb3"; 122 groups = "usb3";
123 function = "usb3"; 123 function = "usb3";
124 }; 124 };
diff --git a/arch/arm/boot/dts/uniphier-pro4-ref.dts b/arch/arm/boot/dts/uniphier-pro4-ref.dts
index 903df6348e77..be99467ac6bb 100644
--- a/arch/arm/boot/dts/uniphier-pro4-ref.dts
+++ b/arch/arm/boot/dts/uniphier-pro4-ref.dts
@@ -40,7 +40,7 @@
40}; 40};
41 41
42&ethsc { 42&ethsc {
43 interrupts = <0 50 4>; 43 interrupts = <2 8>;
44}; 44};
45 45
46&serial0 { 46&serial0 {
@@ -55,6 +55,14 @@
55 status = "okay"; 55 status = "okay";
56}; 56};
57 57
58&gpio {
59 xirq2 {
60 gpio-hog;
61 gpios = <122 0>;
62 input;
63 };
64};
65
58&i2c0 { 66&i2c0 {
59 status = "okay"; 67 status = "okay";
60}; 68};
diff --git a/arch/arm/boot/dts/uniphier-pro4.dtsi b/arch/arm/boot/dts/uniphier-pro4.dtsi
index b3dbbd9b6e39..70339f082871 100644
--- a/arch/arm/boot/dts/uniphier-pro4.dtsi
+++ b/arch/arm/boot/dts/uniphier-pro4.dtsi
@@ -45,7 +45,7 @@
45 clock-frequency = <25000000>; 45 clock-frequency = <25000000>;
46 }; 46 };
47 47
48 arm_timer_clk: arm_timer_clk { 48 arm_timer_clk: arm-timer {
49 #clock-cells = <0>; 49 #clock-cells = <0>;
50 compatible = "fixed-clock"; 50 compatible = "fixed-clock";
51 clock-frequency = <50000000>; 51 clock-frequency = <50000000>;
@@ -79,6 +79,7 @@
79 pinctrl-names = "default"; 79 pinctrl-names = "default";
80 pinctrl-0 = <&pinctrl_uart0>; 80 pinctrl-0 = <&pinctrl_uart0>;
81 clocks = <&peri_clk 0>; 81 clocks = <&peri_clk 0>;
82 resets = <&peri_rst 0>;
82 }; 83 };
83 84
84 serial1: serial@54006900 { 85 serial1: serial@54006900 {
@@ -89,6 +90,7 @@
89 pinctrl-names = "default"; 90 pinctrl-names = "default";
90 pinctrl-0 = <&pinctrl_uart1>; 91 pinctrl-0 = <&pinctrl_uart1>;
91 clocks = <&peri_clk 1>; 92 clocks = <&peri_clk 1>;
93 resets = <&peri_rst 1>;
92 }; 94 };
93 95
94 serial2: serial@54006a00 { 96 serial2: serial@54006a00 {
@@ -99,6 +101,7 @@
99 pinctrl-names = "default"; 101 pinctrl-names = "default";
100 pinctrl-0 = <&pinctrl_uart2>; 102 pinctrl-0 = <&pinctrl_uart2>;
101 clocks = <&peri_clk 2>; 103 clocks = <&peri_clk 2>;
104 resets = <&peri_rst 2>;
102 }; 105 };
103 106
104 serial3: serial@54006b00 { 107 serial3: serial@54006b00 {
@@ -109,6 +112,21 @@
109 pinctrl-names = "default"; 112 pinctrl-names = "default";
110 pinctrl-0 = <&pinctrl_uart3>; 113 pinctrl-0 = <&pinctrl_uart3>;
111 clocks = <&peri_clk 3>; 114 clocks = <&peri_clk 3>;
115 resets = <&peri_rst 3>;
116 };
117
118 gpio: gpio@55000000 {
119 compatible = "socionext,uniphier-gpio";
120 reg = <0x55000000 0x200>;
121 interrupt-parent = <&aidet>;
122 interrupt-controller;
123 #interrupt-cells = <2>;
124 gpio-controller;
125 #gpio-cells = <2>;
126 gpio-ranges = <&pinctrl 0 0 0>;
127 gpio-ranges-group-names = "gpio_range";
128 ngpios = <248>;
129 socionext,interrupt-ranges = <0 48 16>, <16 154 5>;
112 }; 130 };
113 131
114 i2c0: i2c@58780000 { 132 i2c0: i2c@58780000 {
@@ -121,6 +139,7 @@
121 pinctrl-names = "default"; 139 pinctrl-names = "default";
122 pinctrl-0 = <&pinctrl_i2c0>; 140 pinctrl-0 = <&pinctrl_i2c0>;
123 clocks = <&peri_clk 4>; 141 clocks = <&peri_clk 4>;
142 resets = <&peri_rst 4>;
124 clock-frequency = <100000>; 143 clock-frequency = <100000>;
125 }; 144 };
126 145
@@ -134,6 +153,7 @@
134 pinctrl-names = "default"; 153 pinctrl-names = "default";
135 pinctrl-0 = <&pinctrl_i2c1>; 154 pinctrl-0 = <&pinctrl_i2c1>;
136 clocks = <&peri_clk 5>; 155 clocks = <&peri_clk 5>;
156 resets = <&peri_rst 5>;
137 clock-frequency = <100000>; 157 clock-frequency = <100000>;
138 }; 158 };
139 159
@@ -147,6 +167,7 @@
147 pinctrl-names = "default"; 167 pinctrl-names = "default";
148 pinctrl-0 = <&pinctrl_i2c2>; 168 pinctrl-0 = <&pinctrl_i2c2>;
149 clocks = <&peri_clk 6>; 169 clocks = <&peri_clk 6>;
170 resets = <&peri_rst 6>;
150 clock-frequency = <100000>; 171 clock-frequency = <100000>;
151 }; 172 };
152 173
@@ -160,6 +181,7 @@
160 pinctrl-names = "default"; 181 pinctrl-names = "default";
161 pinctrl-0 = <&pinctrl_i2c3>; 182 pinctrl-0 = <&pinctrl_i2c3>;
162 clocks = <&peri_clk 7>; 183 clocks = <&peri_clk 7>;
184 resets = <&peri_rst 7>;
163 clock-frequency = <100000>; 185 clock-frequency = <100000>;
164 }; 186 };
165 187
@@ -173,6 +195,7 @@
173 #size-cells = <0>; 195 #size-cells = <0>;
174 interrupts = <0 25 4>; 196 interrupts = <0 25 4>;
175 clocks = <&peri_clk 9>; 197 clocks = <&peri_clk 9>;
198 resets = <&peri_rst 9>;
176 clock-frequency = <400000>; 199 clock-frequency = <400000>;
177 }; 200 };
178 201
@@ -184,6 +207,7 @@
184 #size-cells = <0>; 207 #size-cells = <0>;
185 interrupts = <0 26 4>; 208 interrupts = <0 26 4>;
186 clocks = <&peri_clk 10>; 209 clocks = <&peri_clk 10>;
210 resets = <&peri_rst 10>;
187 clock-frequency = <400000>; 211 clock-frequency = <400000>;
188 }; 212 };
189 213
@@ -322,6 +346,7 @@
322 pinctrl-names = "default"; 346 pinctrl-names = "default";
323 pinctrl-0 = <&pinctrl_nand>; 347 pinctrl-0 = <&pinctrl_nand>;
324 clocks = <&sys_clk 2>; 348 clocks = <&sys_clk 2>;
349 resets = <&sys_rst 2>;
325 }; 350 };
326 }; 351 };
327}; 352};
diff --git a/arch/arm/boot/dts/uniphier-pro5.dtsi b/arch/arm/boot/dts/uniphier-pro5.dtsi
index b026bcd42a06..6589b8a2c65c 100644
--- a/arch/arm/boot/dts/uniphier-pro5.dtsi
+++ b/arch/arm/boot/dts/uniphier-pro5.dtsi
@@ -37,7 +37,7 @@
37 }; 37 };
38 }; 38 };
39 39
40 cpu_opp: opp_table { 40 cpu_opp: opp-table {
41 compatible = "operating-points-v2"; 41 compatible = "operating-points-v2";
42 opp-shared; 42 opp-shared;
43 43
@@ -119,7 +119,7 @@
119 clock-frequency = <20000000>; 119 clock-frequency = <20000000>;
120 }; 120 };
121 121
122 arm_timer_clk: arm_timer_clk { 122 arm_timer_clk: arm-timer {
123 #clock-cells = <0>; 123 #clock-cells = <0>;
124 compatible = "fixed-clock"; 124 compatible = "fixed-clock";
125 clock-frequency = <50000000>; 125 clock-frequency = <50000000>;
@@ -166,6 +166,7 @@
166 pinctrl-names = "default"; 166 pinctrl-names = "default";
167 pinctrl-0 = <&pinctrl_uart0>; 167 pinctrl-0 = <&pinctrl_uart0>;
168 clocks = <&peri_clk 0>; 168 clocks = <&peri_clk 0>;
169 resets = <&peri_rst 0>;
169 }; 170 };
170 171
171 serial1: serial@54006900 { 172 serial1: serial@54006900 {
@@ -176,6 +177,7 @@
176 pinctrl-names = "default"; 177 pinctrl-names = "default";
177 pinctrl-0 = <&pinctrl_uart1>; 178 pinctrl-0 = <&pinctrl_uart1>;
178 clocks = <&peri_clk 1>; 179 clocks = <&peri_clk 1>;
180 resets = <&peri_rst 1>;
179 }; 181 };
180 182
181 serial2: serial@54006a00 { 183 serial2: serial@54006a00 {
@@ -186,6 +188,7 @@
186 pinctrl-names = "default"; 188 pinctrl-names = "default";
187 pinctrl-0 = <&pinctrl_uart2>; 189 pinctrl-0 = <&pinctrl_uart2>;
188 clocks = <&peri_clk 2>; 190 clocks = <&peri_clk 2>;
191 resets = <&peri_rst 2>;
189 }; 192 };
190 193
191 serial3: serial@54006b00 { 194 serial3: serial@54006b00 {
@@ -196,6 +199,21 @@
196 pinctrl-names = "default"; 199 pinctrl-names = "default";
197 pinctrl-0 = <&pinctrl_uart3>; 200 pinctrl-0 = <&pinctrl_uart3>;
198 clocks = <&peri_clk 3>; 201 clocks = <&peri_clk 3>;
202 resets = <&peri_rst 3>;
203 };
204
205 gpio: gpio@55000000 {
206 compatible = "socionext,uniphier-gpio";
207 reg = <0x55000000 0x200>;
208 interrupt-parent = <&aidet>;
209 interrupt-controller;
210 #interrupt-cells = <2>;
211 gpio-controller;
212 #gpio-cells = <2>;
213 gpio-ranges = <&pinctrl 0 0 0>;
214 gpio-ranges-group-names = "gpio_range";
215 ngpios = <248>;
216 socionext,interrupt-ranges = <0 48 16>, <16 154 5>;
199 }; 217 };
200 218
201 i2c0: i2c@58780000 { 219 i2c0: i2c@58780000 {
@@ -208,6 +226,7 @@
208 pinctrl-names = "default"; 226 pinctrl-names = "default";
209 pinctrl-0 = <&pinctrl_i2c0>; 227 pinctrl-0 = <&pinctrl_i2c0>;
210 clocks = <&peri_clk 4>; 228 clocks = <&peri_clk 4>;
229 resets = <&peri_rst 4>;
211 clock-frequency = <100000>; 230 clock-frequency = <100000>;
212 }; 231 };
213 232
@@ -221,6 +240,7 @@
221 pinctrl-names = "default"; 240 pinctrl-names = "default";
222 pinctrl-0 = <&pinctrl_i2c1>; 241 pinctrl-0 = <&pinctrl_i2c1>;
223 clocks = <&peri_clk 5>; 242 clocks = <&peri_clk 5>;
243 resets = <&peri_rst 5>;
224 clock-frequency = <100000>; 244 clock-frequency = <100000>;
225 }; 245 };
226 246
@@ -234,6 +254,7 @@
234 pinctrl-names = "default"; 254 pinctrl-names = "default";
235 pinctrl-0 = <&pinctrl_i2c2>; 255 pinctrl-0 = <&pinctrl_i2c2>;
236 clocks = <&peri_clk 6>; 256 clocks = <&peri_clk 6>;
257 resets = <&peri_rst 6>;
237 clock-frequency = <100000>; 258 clock-frequency = <100000>;
238 }; 259 };
239 260
@@ -247,6 +268,7 @@
247 pinctrl-names = "default"; 268 pinctrl-names = "default";
248 pinctrl-0 = <&pinctrl_i2c3>; 269 pinctrl-0 = <&pinctrl_i2c3>;
249 clocks = <&peri_clk 7>; 270 clocks = <&peri_clk 7>;
271 resets = <&peri_rst 7>;
250 clock-frequency = <100000>; 272 clock-frequency = <100000>;
251 }; 273 };
252 274
@@ -260,6 +282,7 @@
260 #size-cells = <0>; 282 #size-cells = <0>;
261 interrupts = <0 25 4>; 283 interrupts = <0 25 4>;
262 clocks = <&peri_clk 9>; 284 clocks = <&peri_clk 9>;
285 resets = <&peri_rst 9>;
263 clock-frequency = <400000>; 286 clock-frequency = <400000>;
264 }; 287 };
265 288
@@ -271,6 +294,7 @@
271 #size-cells = <0>; 294 #size-cells = <0>;
272 interrupts = <0 26 4>; 295 interrupts = <0 26 4>;
273 clocks = <&peri_clk 10>; 296 clocks = <&peri_clk 10>;
297 resets = <&peri_rst 10>;
274 clock-frequency = <400000>; 298 clock-frequency = <400000>;
275 }; 299 };
276 300
@@ -385,6 +409,7 @@
385 pinctrl-names = "default"; 409 pinctrl-names = "default";
386 pinctrl-0 = <&pinctrl_nand2cs>; 410 pinctrl-0 = <&pinctrl_nand2cs>;
387 clocks = <&sys_clk 2>; 411 clocks = <&sys_clk 2>;
412 resets = <&sys_rst 2>;
388 }; 413 };
389 }; 414 };
390}; 415};
diff --git a/arch/arm/boot/dts/uniphier-pxs2.dtsi b/arch/arm/boot/dts/uniphier-pxs2.dtsi
index 90b020c95083..d82d6d872131 100644
--- a/arch/arm/boot/dts/uniphier-pxs2.dtsi
+++ b/arch/arm/boot/dts/uniphier-pxs2.dtsi
@@ -7,6 +7,8 @@
7 * SPDX-License-Identifier: (GPL-2.0+ OR MIT) 7 * SPDX-License-Identifier: (GPL-2.0+ OR MIT)
8 */ 8 */
9 9
10#include <dt-bindings/thermal/thermal.h>
11
10/ { 12/ {
11 compatible = "socionext,uniphier-pxs2"; 13 compatible = "socionext,uniphier-pxs2";
12 #address-cells = <1>; 14 #address-cells = <1>;
@@ -16,7 +18,7 @@
16 #address-cells = <1>; 18 #address-cells = <1>;
17 #size-cells = <0>; 19 #size-cells = <0>;
18 20
19 cpu@0 { 21 cpu0: cpu@0 {
20 device_type = "cpu"; 22 device_type = "cpu";
21 compatible = "arm,cortex-a9"; 23 compatible = "arm,cortex-a9";
22 reg = <0>; 24 reg = <0>;
@@ -24,9 +26,10 @@
24 enable-method = "psci"; 26 enable-method = "psci";
25 next-level-cache = <&l2>; 27 next-level-cache = <&l2>;
26 operating-points-v2 = <&cpu_opp>; 28 operating-points-v2 = <&cpu_opp>;
29 #cooling-cells = <2>;
27 }; 30 };
28 31
29 cpu@1 { 32 cpu1: cpu@1 {
30 device_type = "cpu"; 33 device_type = "cpu";
31 compatible = "arm,cortex-a9"; 34 compatible = "arm,cortex-a9";
32 reg = <1>; 35 reg = <1>;
@@ -36,7 +39,7 @@
36 operating-points-v2 = <&cpu_opp>; 39 operating-points-v2 = <&cpu_opp>;
37 }; 40 };
38 41
39 cpu@2 { 42 cpu2: cpu@2 {
40 device_type = "cpu"; 43 device_type = "cpu";
41 compatible = "arm,cortex-a9"; 44 compatible = "arm,cortex-a9";
42 reg = <2>; 45 reg = <2>;
@@ -46,7 +49,7 @@
46 operating-points-v2 = <&cpu_opp>; 49 operating-points-v2 = <&cpu_opp>;
47 }; 50 };
48 51
49 cpu@3 { 52 cpu3: cpu@3 {
50 device_type = "cpu"; 53 device_type = "cpu";
51 compatible = "arm,cortex-a9"; 54 compatible = "arm,cortex-a9";
52 reg = <3>; 55 reg = <3>;
@@ -57,7 +60,7 @@
57 }; 60 };
58 }; 61 };
59 62
60 cpu_opp: opp_table { 63 cpu_opp: opp-table {
61 compatible = "operating-points-v2"; 64 compatible = "operating-points-v2";
62 opp-shared; 65 opp-shared;
63 66
@@ -107,13 +110,42 @@
107 clock-frequency = <25000000>; 110 clock-frequency = <25000000>;
108 }; 111 };
109 112
110 arm_timer_clk: arm_timer_clk { 113 arm_timer_clk: arm-timer {
111 #clock-cells = <0>; 114 #clock-cells = <0>;
112 compatible = "fixed-clock"; 115 compatible = "fixed-clock";
113 clock-frequency = <50000000>; 116 clock-frequency = <50000000>;
114 }; 117 };
115 }; 118 };
116 119
120 thermal-zones {
121 cpu-thermal {
122 polling-delay-passive = <250>; /* 250ms */
123 polling-delay = <1000>; /* 1000ms */
124 thermal-sensors = <&pvtctl>;
125
126 trips {
127 cpu_crit: cpu-crit {
128 temperature = <95000>; /* 95C */
129 hysteresis = <2000>;
130 type = "critical";
131 };
132 cpu_alert: cpu-alert {
133 temperature = <85000>; /* 85C */
134 hysteresis = <2000>;
135 type = "passive";
136 };
137 };
138
139 cooling-maps {
140 map {
141 trip = <&cpu_alert>;
142 cooling-device = <&cpu0
143 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
144 };
145 };
146 };
147 };
148
117 soc { 149 soc {
118 compatible = "simple-bus"; 150 compatible = "simple-bus";
119 #address-cells = <1>; 151 #address-cells = <1>;
@@ -141,6 +173,7 @@
141 pinctrl-names = "default"; 173 pinctrl-names = "default";
142 pinctrl-0 = <&pinctrl_uart0>; 174 pinctrl-0 = <&pinctrl_uart0>;
143 clocks = <&peri_clk 0>; 175 clocks = <&peri_clk 0>;
176 resets = <&peri_rst 0>;
144 }; 177 };
145 178
146 serial1: serial@54006900 { 179 serial1: serial@54006900 {
@@ -151,6 +184,7 @@
151 pinctrl-names = "default"; 184 pinctrl-names = "default";
152 pinctrl-0 = <&pinctrl_uart1>; 185 pinctrl-0 = <&pinctrl_uart1>;
153 clocks = <&peri_clk 1>; 186 clocks = <&peri_clk 1>;
187 resets = <&peri_rst 1>;
154 }; 188 };
155 189
156 serial2: serial@54006a00 { 190 serial2: serial@54006a00 {
@@ -161,6 +195,7 @@
161 pinctrl-names = "default"; 195 pinctrl-names = "default";
162 pinctrl-0 = <&pinctrl_uart2>; 196 pinctrl-0 = <&pinctrl_uart2>;
163 clocks = <&peri_clk 2>; 197 clocks = <&peri_clk 2>;
198 resets = <&peri_rst 2>;
164 }; 199 };
165 200
166 serial3: serial@54006b00 { 201 serial3: serial@54006b00 {
@@ -171,6 +206,24 @@
171 pinctrl-names = "default"; 206 pinctrl-names = "default";
172 pinctrl-0 = <&pinctrl_uart3>; 207 pinctrl-0 = <&pinctrl_uart3>;
173 clocks = <&peri_clk 3>; 208 clocks = <&peri_clk 3>;
209 resets = <&peri_rst 3>;
210 };
211
212 gpio: gpio@55000000 {
213 compatible = "socionext,uniphier-gpio";
214 reg = <0x55000000 0x200>;
215 interrupt-parent = <&aidet>;
216 interrupt-controller;
217 #interrupt-cells = <2>;
218 gpio-controller;
219 #gpio-cells = <2>;
220 gpio-ranges = <&pinctrl 0 0 0>,
221 <&pinctrl 96 0 0>;
222 gpio-ranges-group-names = "gpio_range0",
223 "gpio_range1";
224 ngpios = <232>;
225 socionext,interrupt-ranges = <0 48 16>, <16 154 5>,
226 <21 217 3>;
174 }; 227 };
175 228
176 i2c0: i2c@58780000 { 229 i2c0: i2c@58780000 {
@@ -183,6 +236,7 @@
183 pinctrl-names = "default"; 236 pinctrl-names = "default";
184 pinctrl-0 = <&pinctrl_i2c0>; 237 pinctrl-0 = <&pinctrl_i2c0>;
185 clocks = <&peri_clk 4>; 238 clocks = <&peri_clk 4>;
239 resets = <&peri_rst 4>;
186 clock-frequency = <100000>; 240 clock-frequency = <100000>;
187 }; 241 };
188 242
@@ -196,6 +250,7 @@
196 pinctrl-names = "default"; 250 pinctrl-names = "default";
197 pinctrl-0 = <&pinctrl_i2c1>; 251 pinctrl-0 = <&pinctrl_i2c1>;
198 clocks = <&peri_clk 5>; 252 clocks = <&peri_clk 5>;
253 resets = <&peri_rst 5>;
199 clock-frequency = <100000>; 254 clock-frequency = <100000>;
200 }; 255 };
201 256
@@ -209,6 +264,7 @@
209 pinctrl-names = "default"; 264 pinctrl-names = "default";
210 pinctrl-0 = <&pinctrl_i2c2>; 265 pinctrl-0 = <&pinctrl_i2c2>;
211 clocks = <&peri_clk 6>; 266 clocks = <&peri_clk 6>;
267 resets = <&peri_rst 6>;
212 clock-frequency = <100000>; 268 clock-frequency = <100000>;
213 }; 269 };
214 270
@@ -222,6 +278,7 @@
222 pinctrl-names = "default"; 278 pinctrl-names = "default";
223 pinctrl-0 = <&pinctrl_i2c3>; 279 pinctrl-0 = <&pinctrl_i2c3>;
224 clocks = <&peri_clk 7>; 280 clocks = <&peri_clk 7>;
281 resets = <&peri_rst 7>;
225 clock-frequency = <100000>; 282 clock-frequency = <100000>;
226 }; 283 };
227 284
@@ -233,6 +290,7 @@
233 #size-cells = <0>; 290 #size-cells = <0>;
234 interrupts = <0 45 4>; 291 interrupts = <0 45 4>;
235 clocks = <&peri_clk 8>; 292 clocks = <&peri_clk 8>;
293 resets = <&peri_rst 8>;
236 clock-frequency = <400000>; 294 clock-frequency = <400000>;
237 }; 295 };
238 296
@@ -244,6 +302,7 @@
244 #size-cells = <0>; 302 #size-cells = <0>;
245 interrupts = <0 25 4>; 303 interrupts = <0 25 4>;
246 clocks = <&peri_clk 9>; 304 clocks = <&peri_clk 9>;
305 resets = <&peri_rst 9>;
247 clock-frequency = <400000>; 306 clock-frequency = <400000>;
248 }; 307 };
249 308
@@ -255,6 +314,7 @@
255 #size-cells = <0>; 314 #size-cells = <0>;
256 interrupts = <0 26 4>; 315 interrupts = <0 26 4>;
257 clocks = <&peri_clk 10>; 316 clocks = <&peri_clk 10>;
317 resets = <&peri_rst 10>;
258 clock-frequency = <400000>; 318 clock-frequency = <400000>;
259 }; 319 };
260 320
@@ -358,6 +418,13 @@
358 compatible = "socionext,uniphier-pxs2-reset"; 418 compatible = "socionext,uniphier-pxs2-reset";
359 #reset-cells = <1>; 419 #reset-cells = <1>;
360 }; 420 };
421
422 pvtctl: pvtctl {
423 compatible = "socionext,uniphier-pxs2-thermal";
424 interrupts = <0 3 4>;
425 #thermal-sensor-cells = <0>;
426 socionext,tmod-calibration = <0x0f86 0x6844>;
427 };
361 }; 428 };
362 429
363 nand: nand@68000000 { 430 nand: nand@68000000 {
@@ -369,6 +436,7 @@
369 pinctrl-names = "default"; 436 pinctrl-names = "default";
370 pinctrl-0 = <&pinctrl_nand2cs>; 437 pinctrl-0 = <&pinctrl_nand2cs>;
371 clocks = <&sys_clk 2>; 438 clocks = <&sys_clk 2>;
439 resets = <&sys_rst 2>;
372 }; 440 };
373 }; 441 };
374}; 442};
diff --git a/arch/arm/boot/dts/uniphier-sld8-ref.dts b/arch/arm/boot/dts/uniphier-sld8-ref.dts
index 5accd3cc76e4..1c0e7077a560 100644
--- a/arch/arm/boot/dts/uniphier-sld8-ref.dts
+++ b/arch/arm/boot/dts/uniphier-sld8-ref.dts
@@ -38,7 +38,7 @@
38}; 38};
39 39
40&ethsc { 40&ethsc {
41 interrupts = <0 48 4>; 41 interrupts = <0 8>;
42}; 42};
43 43
44&serial0 { 44&serial0 {
@@ -53,6 +53,14 @@
53 status = "okay"; 53 status = "okay";
54}; 54};
55 55
56&gpio {
57 xirq0 {
58 gpio-hog;
59 gpios = <120 0>;
60 input;
61 };
62};
63
56&i2c0 { 64&i2c0 {
57 status = "okay"; 65 status = "okay";
58}; 66};
diff --git a/arch/arm/boot/dts/uniphier-sld8.dtsi b/arch/arm/boot/dts/uniphier-sld8.dtsi
index b08390332971..9bb5a113c579 100644
--- a/arch/arm/boot/dts/uniphier-sld8.dtsi
+++ b/arch/arm/boot/dts/uniphier-sld8.dtsi
@@ -37,7 +37,7 @@
37 clock-frequency = <25000000>; 37 clock-frequency = <25000000>;
38 }; 38 };
39 39
40 arm_timer_clk: arm_timer_clk { 40 arm_timer_clk: arm-timer {
41 #clock-cells = <0>; 41 #clock-cells = <0>;
42 compatible = "fixed-clock"; 42 compatible = "fixed-clock";
43 clock-frequency = <50000000>; 43 clock-frequency = <50000000>;
@@ -71,6 +71,7 @@
71 pinctrl-names = "default"; 71 pinctrl-names = "default";
72 pinctrl-0 = <&pinctrl_uart0>; 72 pinctrl-0 = <&pinctrl_uart0>;
73 clocks = <&peri_clk 0>; 73 clocks = <&peri_clk 0>;
74 resets = <&peri_rst 0>;
74 }; 75 };
75 76
76 serial1: serial@54006900 { 77 serial1: serial@54006900 {
@@ -81,6 +82,7 @@
81 pinctrl-names = "default"; 82 pinctrl-names = "default";
82 pinctrl-0 = <&pinctrl_uart1>; 83 pinctrl-0 = <&pinctrl_uart1>;
83 clocks = <&peri_clk 1>; 84 clocks = <&peri_clk 1>;
85 resets = <&peri_rst 1>;
84 }; 86 };
85 87
86 serial2: serial@54006a00 { 88 serial2: serial@54006a00 {
@@ -91,6 +93,7 @@
91 pinctrl-names = "default"; 93 pinctrl-names = "default";
92 pinctrl-0 = <&pinctrl_uart2>; 94 pinctrl-0 = <&pinctrl_uart2>;
93 clocks = <&peri_clk 2>; 95 clocks = <&peri_clk 2>;
96 resets = <&peri_rst 2>;
94 }; 97 };
95 98
96 serial3: serial@54006b00 { 99 serial3: serial@54006b00 {
@@ -101,6 +104,25 @@
101 pinctrl-names = "default"; 104 pinctrl-names = "default";
102 pinctrl-0 = <&pinctrl_uart3>; 105 pinctrl-0 = <&pinctrl_uart3>;
103 clocks = <&peri_clk 3>; 106 clocks = <&peri_clk 3>;
107 resets = <&peri_rst 3>;
108 };
109
110 gpio: gpio@55000000 {
111 compatible = "socionext,uniphier-gpio";
112 reg = <0x55000000 0x200>;
113 interrupt-parent = <&aidet>;
114 interrupt-controller;
115 #interrupt-cells = <2>;
116 gpio-controller;
117 #gpio-cells = <2>;
118 gpio-ranges = <&pinctrl 0 0 0>,
119 <&pinctrl 104 0 0>,
120 <&pinctrl 112 0 0>;
121 gpio-ranges-group-names = "gpio_range0",
122 "gpio_range1",
123 "gpio_range2";
124 ngpios = <136>;
125 socionext,interrupt-ranges = <0 48 13>, <14 62 2>;
104 }; 126 };
105 127
106 i2c0: i2c@58400000 { 128 i2c0: i2c@58400000 {
@@ -113,6 +135,7 @@
113 pinctrl-names = "default"; 135 pinctrl-names = "default";
114 pinctrl-0 = <&pinctrl_i2c0>; 136 pinctrl-0 = <&pinctrl_i2c0>;
115 clocks = <&peri_clk 4>; 137 clocks = <&peri_clk 4>;
138 resets = <&peri_rst 4>;
116 clock-frequency = <100000>; 139 clock-frequency = <100000>;
117 }; 140 };
118 141
@@ -126,6 +149,7 @@
126 pinctrl-names = "default"; 149 pinctrl-names = "default";
127 pinctrl-0 = <&pinctrl_i2c1>; 150 pinctrl-0 = <&pinctrl_i2c1>;
128 clocks = <&peri_clk 5>; 151 clocks = <&peri_clk 5>;
152 resets = <&peri_rst 5>;
129 clock-frequency = <100000>; 153 clock-frequency = <100000>;
130 }; 154 };
131 155
@@ -139,6 +163,7 @@
139 pinctrl-names = "default"; 163 pinctrl-names = "default";
140 pinctrl-0 = <&pinctrl_i2c2>; 164 pinctrl-0 = <&pinctrl_i2c2>;
141 clocks = <&peri_clk 6>; 165 clocks = <&peri_clk 6>;
166 resets = <&peri_rst 6>;
142 clock-frequency = <400000>; 167 clock-frequency = <400000>;
143 }; 168 };
144 169
@@ -152,6 +177,7 @@
152 pinctrl-names = "default"; 177 pinctrl-names = "default";
153 pinctrl-0 = <&pinctrl_i2c3>; 178 pinctrl-0 = <&pinctrl_i2c3>;
154 clocks = <&peri_clk 7>; 179 clocks = <&peri_clk 7>;
180 resets = <&peri_rst 7>;
155 clock-frequency = <100000>; 181 clock-frequency = <100000>;
156 }; 182 };
157 183
@@ -302,6 +328,7 @@
302 pinctrl-names = "default"; 328 pinctrl-names = "default";
303 pinctrl-0 = <&pinctrl_nand2cs>; 329 pinctrl-0 = <&pinctrl_nand2cs>;
304 clocks = <&sys_clk 2>; 330 clocks = <&sys_clk 2>;
331 resets = <&sys_rst 2>;
305 }; 332 };
306 }; 333 };
307}; 334};
diff --git a/arch/arm/boot/dts/uniphier-support-card.dtsi b/arch/arm/boot/dts/uniphier-support-card.dtsi
index 6c825f192e65..e4e7e1bb9172 100644
--- a/arch/arm/boot/dts/uniphier-support-card.dtsi
+++ b/arch/arm/boot/dts/uniphier-support-card.dtsi
@@ -11,11 +11,12 @@
11 status = "okay"; 11 status = "okay";
12 ranges = <1 0x00000000 0x42000000 0x02000000>; 12 ranges = <1 0x00000000 0x42000000 0x02000000>;
13 13
14 support_card: support_card@1,1f00000 { 14 support_card: support-card@1,1f00000 {
15 compatible = "simple-bus"; 15 compatible = "simple-bus";
16 #address-cells = <1>; 16 #address-cells = <1>;
17 #size-cells = <1>; 17 #size-cells = <1>;
18 ranges = <0x00000000 1 0x01f00000 0x00100000>; 18 ranges = <0x00000000 1 0x01f00000 0x00100000>;
19 interrupt-parent = <&gpio>;
19 20
20 ethsc: ethernet@0 { 21 ethsc: ethernet@0 {
21 compatible = "smsc,lan9118", "smsc,lan9115"; 22 compatible = "smsc,lan9118", "smsc,lan9115";