diff options
author | Kevin Hilman <khilman@baylibre.com> | 2016-09-15 18:35:50 -0400 |
---|---|---|
committer | Kevin Hilman <khilman@baylibre.com> | 2016-09-15 18:35:50 -0400 |
commit | e1e4a1a4fad203f8a02b887149809966e128a3d8 (patch) | |
tree | 8cc79291819777d6c5bfb5b763004c79e1990e07 | |
parent | 39f0d9803f393f3d78fc815736d024a8adc149a8 (diff) | |
parent | c763eb82a01dd4536a4d4b6bb6be115d4ee32842 (diff) |
Merge branch 'v4.8/dt64' into v4.8/dt64-2
8 files changed, 478 insertions, 4 deletions
diff --git a/Documentation/devicetree/bindings/firmware/meson/meson_sm.txt b/Documentation/devicetree/bindings/firmware/meson/meson_sm.txt new file mode 100644 index 000000000000..c248cd44f727 --- /dev/null +++ b/Documentation/devicetree/bindings/firmware/meson/meson_sm.txt | |||
@@ -0,0 +1,15 @@ | |||
1 | * Amlogic Secure Monitor | ||
2 | |||
3 | In the Amlogic SoCs the Secure Monitor code is used to provide access to the | ||
4 | NVMEM, enable JTAG, set USB boot, etc... | ||
5 | |||
6 | Required properties for the secure monitor node: | ||
7 | - compatible: Should be "amlogic,meson-gxbb-sm" | ||
8 | |||
9 | Example: | ||
10 | |||
11 | firmware { | ||
12 | sm: secure-monitor { | ||
13 | compatible = "amlogic,meson-gxbb-sm"; | ||
14 | }; | ||
15 | }; | ||
diff --git a/Documentation/devicetree/bindings/media/meson-ir.txt b/Documentation/devicetree/bindings/media/meson-ir.txt index 407848e85f31..e7e3f3c4fc8f 100644 --- a/Documentation/devicetree/bindings/media/meson-ir.txt +++ b/Documentation/devicetree/bindings/media/meson-ir.txt | |||
@@ -1,7 +1,10 @@ | |||
1 | * Amlogic Meson IR remote control receiver | 1 | * Amlogic Meson IR remote control receiver |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : should be "amlogic,meson6-ir" | 4 | - compatible : depending on the platform this should be one of: |
5 | - "amlogic,meson6-ir" | ||
6 | - "amlogic,meson8b-ir" | ||
7 | - "amlogic,meson-gxbb-ir" | ||
5 | - reg : physical base address and length of the device registers | 8 | - reg : physical base address and length of the device registers |
6 | - interrupts : a single specifier for the interrupt from the device | 9 | - interrupts : a single specifier for the interrupt from the device |
7 | 10 | ||
diff --git a/Documentation/devicetree/bindings/nvmem/amlogic-efuse.txt b/Documentation/devicetree/bindings/nvmem/amlogic-efuse.txt new file mode 100644 index 000000000000..fafd85bd67a6 --- /dev/null +++ b/Documentation/devicetree/bindings/nvmem/amlogic-efuse.txt | |||
@@ -0,0 +1,39 @@ | |||
1 | = Amlogic eFuse device tree bindings = | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: should be "amlogic,meson-gxbb-efuse" | ||
5 | |||
6 | = Data cells = | ||
7 | Are child nodes of eFuse, bindings of which as described in | ||
8 | bindings/nvmem/nvmem.txt | ||
9 | |||
10 | Example: | ||
11 | |||
12 | efuse: efuse { | ||
13 | compatible = "amlogic,meson-gxbb-efuse"; | ||
14 | #address-cells = <1>; | ||
15 | #size-cells = <1>; | ||
16 | |||
17 | sn: sn@14 { | ||
18 | reg = <0x14 0x10>; | ||
19 | }; | ||
20 | |||
21 | eth_mac: eth_mac@34 { | ||
22 | reg = <0x34 0x10>; | ||
23 | }; | ||
24 | |||
25 | bid: bid@46 { | ||
26 | reg = <0x46 0x30>; | ||
27 | }; | ||
28 | }; | ||
29 | |||
30 | = Data consumers = | ||
31 | Are device nodes which consume nvmem data cells. | ||
32 | |||
33 | For example: | ||
34 | |||
35 | eth_mac { | ||
36 | ... | ||
37 | nvmem-cells = <ð_mac>; | ||
38 | nvmem-cell-names = "eth_mac"; | ||
39 | }; | ||
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts index 90a84c514d3d..e6e3491d48a5 100644 --- a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts +++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts | |||
@@ -87,3 +87,14 @@ | |||
87 | pinctrl-names = "default"; | 87 | pinctrl-names = "default"; |
88 | }; | 88 | }; |
89 | 89 | ||
90 | &ir { | ||
91 | status = "okay"; | ||
92 | pinctrl-0 = <&remote_input_ao_pins>; | ||
93 | pinctrl-names = "default"; | ||
94 | }; | ||
95 | |||
96 | &i2c_A { | ||
97 | status = "okay"; | ||
98 | pinctrl-0 = <&i2c_a_pins>; | ||
99 | pinctrl-names = "default"; | ||
100 | }; | ||
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-p200.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-p200.dts index 62979076e250..03e3d76626dd 100644 --- a/arch/arm64/boot/dts/amlogic/meson-gxbb-p200.dts +++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-p200.dts | |||
@@ -50,3 +50,9 @@ | |||
50 | compatible = "amlogic,p200", "amlogic,meson-gxbb"; | 50 | compatible = "amlogic,p200", "amlogic,meson-gxbb"; |
51 | model = "Amlogic Meson GXBB P200 Development Board"; | 51 | model = "Amlogic Meson GXBB P200 Development Board"; |
52 | }; | 52 | }; |
53 | |||
54 | &i2c_B { | ||
55 | status = "okay"; | ||
56 | pinctrl-0 = <&i2c_b_pins>; | ||
57 | pinctrl-names = "default"; | ||
58 | }; | ||
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi index f4f30f674b4c..06a34dc6002f 100644 --- a/arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi +++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-p20x.dtsi | |||
@@ -57,6 +57,19 @@ | |||
57 | device_type = "memory"; | 57 | device_type = "memory"; |
58 | reg = <0x0 0x0 0x0 0x40000000>; | 58 | reg = <0x0 0x0 0x0 0x40000000>; |
59 | }; | 59 | }; |
60 | |||
61 | usb_pwr: regulator-usb-pwrs { | ||
62 | compatible = "regulator-fixed"; | ||
63 | |||
64 | regulator-name = "USB_PWR"; | ||
65 | |||
66 | regulator-min-microvolt = <5000000>; | ||
67 | regulator-max-microvolt = <5000000>; | ||
68 | |||
69 | /* signal name in schematic: USB_PWR_EN */ | ||
70 | gpio = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; | ||
71 | enable-active-high; | ||
72 | }; | ||
60 | }; | 73 | }; |
61 | 74 | ||
62 | /* This UART is brought out to the DB9 connector */ | 75 | /* This UART is brought out to the DB9 connector */ |
@@ -72,3 +85,25 @@ | |||
72 | pinctrl-names = "default"; | 85 | pinctrl-names = "default"; |
73 | }; | 86 | }; |
74 | 87 | ||
88 | &ir { | ||
89 | status = "okay"; | ||
90 | pinctrl-0 = <&remote_input_ao_pins>; | ||
91 | pinctrl-names = "default"; | ||
92 | }; | ||
93 | |||
94 | &usb0_phy { | ||
95 | status = "okay"; | ||
96 | phy-supply = <&usb_pwr>; | ||
97 | }; | ||
98 | |||
99 | &usb1_phy { | ||
100 | status = "okay"; | ||
101 | }; | ||
102 | |||
103 | &usb0 { | ||
104 | status = "okay"; | ||
105 | }; | ||
106 | |||
107 | &usb1 { | ||
108 | status = "okay"; | ||
109 | }; | ||
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi index 54bb7c739089..73f159370188 100644 --- a/arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi +++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-vega-s95.dtsi | |||
@@ -52,6 +52,19 @@ | |||
52 | chosen { | 52 | chosen { |
53 | stdout-path = "serial0:115200n8"; | 53 | stdout-path = "serial0:115200n8"; |
54 | }; | 54 | }; |
55 | |||
56 | usb_vbus: regulator-usb0-vbus { | ||
57 | compatible = "regulator-fixed"; | ||
58 | |||
59 | regulator-name = "USB0_VBUS"; | ||
60 | |||
61 | regulator-min-microvolt = <5000000>; | ||
62 | regulator-max-microvolt = <5000000>; | ||
63 | |||
64 | gpio = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>; | ||
65 | enable-active-high; | ||
66 | }; | ||
67 | |||
55 | }; | 68 | }; |
56 | 69 | ||
57 | &uart_AO { | 70 | &uart_AO { |
@@ -60,3 +73,32 @@ | |||
60 | pinctrl-names = "default"; | 73 | pinctrl-names = "default"; |
61 | 74 | ||
62 | }; | 75 | }; |
76 | |||
77 | &ir { | ||
78 | status = "okay"; | ||
79 | pinctrl-0 = <&remote_input_ao_pins>; | ||
80 | pinctrl-names = "default"; | ||
81 | }; | ||
82 | |||
83 | ðmac { | ||
84 | status = "okay"; | ||
85 | pinctrl-0 = <ð_pins>; | ||
86 | pinctrl-names = "default"; | ||
87 | }; | ||
88 | |||
89 | &usb0_phy { | ||
90 | status = "okay"; | ||
91 | phy-supply = <&usb_vbus>; | ||
92 | }; | ||
93 | |||
94 | &usb1_phy { | ||
95 | status = "okay"; | ||
96 | }; | ||
97 | |||
98 | &usb0 { | ||
99 | status = "okay"; | ||
100 | }; | ||
101 | |||
102 | &usb1 { | ||
103 | status = "okay"; | ||
104 | }; | ||
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi index e502c24b0ac7..4e9cd01c60a7 100644 --- a/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi +++ b/arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi | |||
@@ -45,6 +45,9 @@ | |||
45 | #include <dt-bindings/interrupt-controller/arm-gic.h> | 45 | #include <dt-bindings/interrupt-controller/arm-gic.h> |
46 | #include <dt-bindings/gpio/meson-gxbb-gpio.h> | 46 | #include <dt-bindings/gpio/meson-gxbb-gpio.h> |
47 | #include <dt-bindings/reset/amlogic,meson-gxbb-reset.h> | 47 | #include <dt-bindings/reset/amlogic,meson-gxbb-reset.h> |
48 | #include <dt-bindings/clock/gxbb-clkc.h> | ||
49 | #include <dt-bindings/clock/gxbb-aoclkc.h> | ||
50 | #include <dt-bindings/reset/gxbb-aoclkc.h> | ||
48 | 51 | ||
49 | / { | 52 | / { |
50 | compatible = "amlogic,meson-gxbb"; | 53 | compatible = "amlogic,meson-gxbb"; |
@@ -99,6 +102,30 @@ | |||
99 | method = "smc"; | 102 | method = "smc"; |
100 | }; | 103 | }; |
101 | 104 | ||
105 | firmware { | ||
106 | sm: secure-monitor { | ||
107 | compatible = "amlogic,meson-gxbb-sm"; | ||
108 | }; | ||
109 | }; | ||
110 | |||
111 | efuse: efuse { | ||
112 | compatible = "amlogic,meson-gxbb-efuse"; | ||
113 | #address-cells = <1>; | ||
114 | #size-cells = <1>; | ||
115 | |||
116 | sn: sn@14 { | ||
117 | reg = <0x14 0x10>; | ||
118 | }; | ||
119 | |||
120 | eth_mac: eth_mac@34 { | ||
121 | reg = <0x34 0x10>; | ||
122 | }; | ||
123 | |||
124 | bid: bid@46 { | ||
125 | reg = <0x46 0x30>; | ||
126 | }; | ||
127 | }; | ||
128 | |||
102 | timer { | 129 | timer { |
103 | compatible = "arm,armv8-timer"; | 130 | compatible = "arm,armv8-timer"; |
104 | interrupts = <GIC_PPI 13 | 131 | interrupts = <GIC_PPI 13 |
@@ -124,6 +151,25 @@ | |||
124 | #size-cells = <2>; | 151 | #size-cells = <2>; |
125 | ranges; | 152 | ranges; |
126 | 153 | ||
154 | usb0_phy: phy@c0000000 { | ||
155 | compatible = "amlogic,meson-gxbb-usb2-phy"; | ||
156 | #phy-cells = <0>; | ||
157 | reg = <0x0 0xc0000000 0x0 0x20>; | ||
158 | resets = <&reset RESET_USB_OTG>; | ||
159 | clocks = <&clkc CLKID_USB>, <&clkc CLKID_USB0>; | ||
160 | clock-names = "usb_general", "usb"; | ||
161 | status = "disabled"; | ||
162 | }; | ||
163 | |||
164 | usb1_phy: phy@c0000020 { | ||
165 | compatible = "amlogic,meson-gxbb-usb2-phy"; | ||
166 | #phy-cells = <0>; | ||
167 | reg = <0x0 0xc0000020 0x0 0x20>; | ||
168 | clocks = <&clkc CLKID_USB>, <&clkc CLKID_USB1>; | ||
169 | clock-names = "usb_general", "usb"; | ||
170 | status = "disabled"; | ||
171 | }; | ||
172 | |||
127 | cbus: cbus@c1100000 { | 173 | cbus: cbus@c1100000 { |
128 | compatible = "simple-bus"; | 174 | compatible = "simple-bus"; |
129 | reg = <0x0 0xc1100000 0x0 0x100000>; | 175 | reg = <0x0 0xc1100000 0x0 0x100000>; |
@@ -153,6 +199,27 @@ | |||
153 | status = "disabled"; | 199 | status = "disabled"; |
154 | }; | 200 | }; |
155 | 201 | ||
202 | pwm_ab: pwm@8550 { | ||
203 | compatible = "amlogic,meson-gxbb-pwm"; | ||
204 | reg = <0x0 0x08550 0x0 0x10>; | ||
205 | #pwm-cells = <3>; | ||
206 | status = "disabled"; | ||
207 | }; | ||
208 | |||
209 | pwm_cd: pwm@8650 { | ||
210 | compatible = "amlogic,meson-gxbb-pwm"; | ||
211 | reg = <0x0 0x08650 0x0 0x10>; | ||
212 | #pwm-cells = <3>; | ||
213 | status = "disabled"; | ||
214 | }; | ||
215 | |||
216 | pwm_ef: pwm@86c0 { | ||
217 | compatible = "amlogic,meson-gxbb-pwm"; | ||
218 | reg = <0x0 0x086c0 0x0 0x10>; | ||
219 | #pwm-cells = <3>; | ||
220 | status = "disabled"; | ||
221 | }; | ||
222 | |||
156 | uart_C: serial@8700 { | 223 | uart_C: serial@8700 { |
157 | compatible = "amlogic,meson-uart"; | 224 | compatible = "amlogic,meson-uart"; |
158 | reg = <0x0 0x8700 0x0 0x14>; | 225 | reg = <0x0 0x8700 0x0 0x14>; |
@@ -160,6 +227,51 @@ | |||
160 | clocks = <&xtal>; | 227 | clocks = <&xtal>; |
161 | status = "disabled"; | 228 | status = "disabled"; |
162 | }; | 229 | }; |
230 | |||
231 | watchdog@98d0 { | ||
232 | compatible = "amlogic,meson-gxbb-wdt"; | ||
233 | reg = <0x0 0x098d0 0x0 0x10>; | ||
234 | clocks = <&xtal>; | ||
235 | }; | ||
236 | |||
237 | spifc: spi@8c80 { | ||
238 | compatible = "amlogic,meson-gxbb-spifc"; | ||
239 | reg = <0x0 0x08c80 0x0 0x80>; | ||
240 | #address-cells = <1>; | ||
241 | #size-cells = <0>; | ||
242 | clocks = <&clkc CLKID_SPI>; | ||
243 | status = "disabled"; | ||
244 | }; | ||
245 | |||
246 | i2c_A: i2c@8500 { | ||
247 | compatible = "amlogic,meson-gxbb-i2c"; | ||
248 | reg = <0x0 0x08500 0x0 0x20>; | ||
249 | interrupts = <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>; | ||
250 | clocks = <&clkc CLKID_I2C>; | ||
251 | #address-cells = <1>; | ||
252 | #size-cells = <0>; | ||
253 | status = "disabled"; | ||
254 | }; | ||
255 | |||
256 | i2c_B: i2c@87c0 { | ||
257 | compatible = "amlogic,meson-gxbb-i2c"; | ||
258 | reg = <0x0 0x087c0 0x0 0x20>; | ||
259 | interrupts = <GIC_SPI 214 IRQ_TYPE_EDGE_RISING>; | ||
260 | clocks = <&clkc CLKID_I2C>; | ||
261 | #address-cells = <1>; | ||
262 | #size-cells = <0>; | ||
263 | status = "disabled"; | ||
264 | }; | ||
265 | |||
266 | i2c_C: i2c@87e0 { | ||
267 | compatible = "amlogic,meson-gxbb-i2c"; | ||
268 | reg = <0x0 0x087e0 0x0 0x20>; | ||
269 | interrupts = <GIC_SPI 215 IRQ_TYPE_EDGE_RISING>; | ||
270 | clocks = <&clkc CLKID_I2C>; | ||
271 | #address-cells = <1>; | ||
272 | #size-cells = <0>; | ||
273 | status = "disabled"; | ||
274 | }; | ||
163 | }; | 275 | }; |
164 | 276 | ||
165 | gic: interrupt-controller@c4301000 { | 277 | gic: interrupt-controller@c4301000 { |
@@ -203,6 +315,56 @@ | |||
203 | function = "uart_ao"; | 315 | function = "uart_ao"; |
204 | }; | 316 | }; |
205 | }; | 317 | }; |
318 | |||
319 | remote_input_ao_pins: remote_input_ao { | ||
320 | mux { | ||
321 | groups = "remote_input_ao"; | ||
322 | function = "remote_input_ao"; | ||
323 | }; | ||
324 | }; | ||
325 | |||
326 | i2c_ao_pins: i2c_ao { | ||
327 | mux { | ||
328 | groups = "i2c_sck_ao", | ||
329 | "i2c_sda_ao"; | ||
330 | function = "i2c_ao"; | ||
331 | }; | ||
332 | }; | ||
333 | |||
334 | pwm_ao_a_3_pins: pwm_ao_a_3 { | ||
335 | mux { | ||
336 | groups = "pwm_ao_a_3"; | ||
337 | function = "pwm_ao_a_3"; | ||
338 | }; | ||
339 | }; | ||
340 | |||
341 | pwm_ao_a_6_pins: pwm_ao_a_6 { | ||
342 | mux { | ||
343 | groups = "pwm_ao_a_6"; | ||
344 | function = "pwm_ao_a_6"; | ||
345 | }; | ||
346 | }; | ||
347 | |||
348 | pwm_ao_a_12_pins: pwm_ao_a_12 { | ||
349 | mux { | ||
350 | groups = "pwm_ao_a_12"; | ||
351 | function = "pwm_ao_a_12"; | ||
352 | }; | ||
353 | }; | ||
354 | |||
355 | pwm_ao_b_pins: pwm_ao_b { | ||
356 | mux { | ||
357 | groups = "pwm_ao_b"; | ||
358 | function = "pwm_ao_b"; | ||
359 | }; | ||
360 | }; | ||
361 | }; | ||
362 | |||
363 | clkc_AO: clock-controller@040 { | ||
364 | compatible = "amlogic,gxbb-aoclkc"; | ||
365 | reg = <0x0 0x00040 0x0 0x4>; | ||
366 | #clock-cells = <1>; | ||
367 | #reset-cells = <1>; | ||
206 | }; | 368 | }; |
207 | 369 | ||
208 | uart_AO: serial@4c0 { | 370 | uart_AO: serial@4c0 { |
@@ -212,6 +374,30 @@ | |||
212 | clocks = <&xtal>; | 374 | clocks = <&xtal>; |
213 | status = "disabled"; | 375 | status = "disabled"; |
214 | }; | 376 | }; |
377 | |||
378 | ir: ir@580 { | ||
379 | compatible = "amlogic,meson-gxbb-ir"; | ||
380 | reg = <0x0 0x00580 0x0 0x40>; | ||
381 | interrupts = <GIC_SPI 196 IRQ_TYPE_EDGE_RISING>; | ||
382 | status = "disabled"; | ||
383 | }; | ||
384 | |||
385 | pwm_ab_AO: pwm@550 { | ||
386 | compatible = "amlogic,meson-gxbb-pwm"; | ||
387 | reg = <0x0 0x0550 0x0 0x10>; | ||
388 | #pwm-cells = <3>; | ||
389 | status = "disabled"; | ||
390 | }; | ||
391 | |||
392 | i2c_AO: i2c@500 { | ||
393 | compatible = "amlogic,meson-gxbb-i2c"; | ||
394 | reg = <0x0 0x500 0x0 0x20>; | ||
395 | interrupts = <GIC_SPI 195 IRQ_TYPE_EDGE_RISING>; | ||
396 | clocks = <&clkc CLKID_AO_I2C>; | ||
397 | #address-cells = <1>; | ||
398 | #size-cells = <0>; | ||
399 | status = "disabled"; | ||
400 | }; | ||
215 | }; | 401 | }; |
216 | 402 | ||
217 | periphs: periphs@c8834000 { | 403 | periphs: periphs@c8834000 { |
@@ -251,6 +437,16 @@ | |||
251 | }; | 437 | }; |
252 | }; | 438 | }; |
253 | 439 | ||
440 | nor_pins: nor { | ||
441 | mux { | ||
442 | groups = "nor_d", | ||
443 | "nor_q", | ||
444 | "nor_c", | ||
445 | "nor_cs"; | ||
446 | function = "nor"; | ||
447 | }; | ||
448 | }; | ||
449 | |||
254 | sdcard_pins: sdcard { | 450 | sdcard_pins: sdcard { |
255 | mux { | 451 | mux { |
256 | groups = "sdcard_d0", | 452 | groups = "sdcard_d0", |
@@ -263,6 +459,25 @@ | |||
263 | }; | 459 | }; |
264 | }; | 460 | }; |
265 | 461 | ||
462 | sdio_pins: sdio { | ||
463 | mux { | ||
464 | groups = "sdio_d0", | ||
465 | "sdio_d1", | ||
466 | "sdio_d2", | ||
467 | "sdio_d3", | ||
468 | "sdio_cmd", | ||
469 | "sdio_clk"; | ||
470 | function = "sdio"; | ||
471 | }; | ||
472 | }; | ||
473 | |||
474 | sdio_irq_pins: sdio_irq { | ||
475 | mux { | ||
476 | groups = "sdio_irq"; | ||
477 | function = "sdio"; | ||
478 | }; | ||
479 | }; | ||
480 | |||
266 | uart_a_pins: uart_a { | 481 | uart_a_pins: uart_a { |
267 | mux { | 482 | mux { |
268 | groups = "uart_tx_a", | 483 | groups = "uart_tx_a", |
@@ -287,6 +502,30 @@ | |||
287 | }; | 502 | }; |
288 | }; | 503 | }; |
289 | 504 | ||
505 | i2c_a_pins: i2c_a { | ||
506 | mux { | ||
507 | groups = "i2c_sck_a", | ||
508 | "i2c_sda_a"; | ||
509 | function = "i2c_a"; | ||
510 | }; | ||
511 | }; | ||
512 | |||
513 | i2c_b_pins: i2c_b { | ||
514 | mux { | ||
515 | groups = "i2c_sck_b", | ||
516 | "i2c_sda_b"; | ||
517 | function = "i2c_b"; | ||
518 | }; | ||
519 | }; | ||
520 | |||
521 | i2c_c_pins: i2c_c { | ||
522 | mux { | ||
523 | groups = "i2c_sck_c", | ||
524 | "i2c_sda_c"; | ||
525 | function = "i2c_c"; | ||
526 | }; | ||
527 | }; | ||
528 | |||
290 | eth_pins: eth_c { | 529 | eth_pins: eth_c { |
291 | mux { | 530 | mux { |
292 | groups = "eth_mdio", | 531 | groups = "eth_mdio", |
@@ -306,6 +545,55 @@ | |||
306 | function = "eth"; | 545 | function = "eth"; |
307 | }; | 546 | }; |
308 | }; | 547 | }; |
548 | |||
549 | pwm_a_x_pins: pwm_a_x { | ||
550 | mux { | ||
551 | groups = "pwm_a_x"; | ||
552 | function = "pwm_a_x"; | ||
553 | }; | ||
554 | }; | ||
555 | |||
556 | pwm_a_y_pins: pwm_a_y { | ||
557 | mux { | ||
558 | groups = "pwm_a_y"; | ||
559 | function = "pwm_a_y"; | ||
560 | }; | ||
561 | }; | ||
562 | |||
563 | pwm_b_pins: pwm_b { | ||
564 | mux { | ||
565 | groups = "pwm_b"; | ||
566 | function = "pwm_b"; | ||
567 | }; | ||
568 | }; | ||
569 | |||
570 | pwm_d_pins: pwm_d { | ||
571 | mux { | ||
572 | groups = "pwm_d"; | ||
573 | function = "pwm_d"; | ||
574 | }; | ||
575 | }; | ||
576 | |||
577 | pwm_e_pins: pwm_e { | ||
578 | mux { | ||
579 | groups = "pwm_e"; | ||
580 | function = "pwm_e"; | ||
581 | }; | ||
582 | }; | ||
583 | |||
584 | pwm_f_x_pins: pwm_f_x { | ||
585 | mux { | ||
586 | groups = "pwm_f_x"; | ||
587 | function = "pwm_f_x"; | ||
588 | }; | ||
589 | }; | ||
590 | |||
591 | pwm_f_y_pins: pwm_f_y { | ||
592 | mux { | ||
593 | groups = "pwm_f_y"; | ||
594 | function = "pwm_f_y"; | ||
595 | }; | ||
596 | }; | ||
309 | }; | 597 | }; |
310 | }; | 598 | }; |
311 | 599 | ||
@@ -321,6 +609,15 @@ | |||
321 | #clock-cells = <1>; | 609 | #clock-cells = <1>; |
322 | reg = <0x0 0x0 0x0 0x3db>; | 610 | reg = <0x0 0x0 0x0 0x3db>; |
323 | }; | 611 | }; |
612 | |||
613 | mailbox: mailbox@404 { | ||
614 | compatible = "amlogic,meson-gxbb-mhu"; | ||
615 | reg = <0 0x404 0 0x4c>; | ||
616 | interrupts = <0 208 IRQ_TYPE_EDGE_RISING>, | ||
617 | <0 209 IRQ_TYPE_EDGE_RISING>, | ||
618 | <0 210 IRQ_TYPE_EDGE_RISING>; | ||
619 | #mbox-cells = <1>; | ||
620 | }; | ||
324 | }; | 621 | }; |
325 | 622 | ||
326 | apb: apb@d0000000 { | 623 | apb: apb@d0000000 { |
@@ -331,14 +628,40 @@ | |||
331 | ranges = <0x0 0x0 0x0 0xd0000000 0x0 0x200000>; | 628 | ranges = <0x0 0x0 0x0 0xd0000000 0x0 0x200000>; |
332 | }; | 629 | }; |
333 | 630 | ||
631 | usb0: usb@c9000000 { | ||
632 | compatible = "amlogic,meson-gxbb-usb", "snps,dwc2"; | ||
633 | reg = <0x0 0xc9000000 0x0 0x40000>; | ||
634 | interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; | ||
635 | clocks = <&clkc CLKID_USB0_DDR_BRIDGE>; | ||
636 | clock-names = "otg"; | ||
637 | phys = <&usb0_phy>; | ||
638 | phy-names = "usb2-phy"; | ||
639 | dr_mode = "host"; | ||
640 | status = "disabled"; | ||
641 | }; | ||
642 | |||
643 | usb1: usb@c9100000 { | ||
644 | compatible = "amlogic,meson-gxbb-usb", "snps,dwc2"; | ||
645 | reg = <0x0 0xc9100000 0x0 0x40000>; | ||
646 | interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; | ||
647 | clocks = <&clkc CLKID_USB1_DDR_BRIDGE>; | ||
648 | clock-names = "otg"; | ||
649 | phys = <&usb1_phy>; | ||
650 | phy-names = "usb2-phy"; | ||
651 | dr_mode = "host"; | ||
652 | status = "disabled"; | ||
653 | }; | ||
654 | |||
334 | ethmac: ethernet@c9410000 { | 655 | ethmac: ethernet@c9410000 { |
335 | compatible = "amlogic,meson6-dwmac", "snps,dwmac"; | 656 | compatible = "amlogic,meson-gxbb-dwmac", "snps,dwmac"; |
336 | reg = <0x0 0xc9410000 0x0 0x10000 | 657 | reg = <0x0 0xc9410000 0x0 0x10000 |
337 | 0x0 0xc8834540 0x0 0x4>; | 658 | 0x0 0xc8834540 0x0 0x4>; |
338 | interrupts = <0 8 1>; | 659 | interrupts = <0 8 1>; |
339 | interrupt-names = "macirq"; | 660 | interrupt-names = "macirq"; |
340 | clocks = <&xtal>; | 661 | clocks = <&clkc CLKID_ETH>, |
341 | clock-names = "stmmaceth"; | 662 | <&clkc CLKID_FCLK_DIV2>, |
663 | <&clkc CLKID_MPLL2>; | ||
664 | clock-names = "stmmaceth", "clkin0", "clkin1"; | ||
342 | phy-mode = "rgmii"; | 665 | phy-mode = "rgmii"; |
343 | status = "disabled"; | 666 | status = "disabled"; |
344 | }; | 667 | }; |