xref: /freebsd-src/sys/contrib/device-tree/src/arm/allwinner/sun7i-a20.dtsi (revision 7d0873ebb83b19ba1e8a89e679470d885efe12e3)
1f126890aSEmmanuel Vadot/*
2f126890aSEmmanuel Vadot * Copyright 2013 Maxime Ripard
3f126890aSEmmanuel Vadot *
4f126890aSEmmanuel Vadot * Maxime Ripard <maxime.ripard@free-electrons.com>
5f126890aSEmmanuel Vadot *
6f126890aSEmmanuel Vadot * This file is dual-licensed: you can use it either under the terms
7f126890aSEmmanuel Vadot * of the GPL or the X11 license, at your option. Note that this dual
8f126890aSEmmanuel Vadot * licensing only applies to this file, and not this project as a
9f126890aSEmmanuel Vadot * whole.
10f126890aSEmmanuel Vadot *
11f126890aSEmmanuel Vadot *  a) This file is free software; you can redistribute it and/or
12f126890aSEmmanuel Vadot *     modify it under the terms of the GNU General Public License as
13f126890aSEmmanuel Vadot *     published by the Free Software Foundation; either version 2 of the
14f126890aSEmmanuel Vadot *     License, or (at your option) any later version.
15f126890aSEmmanuel Vadot *
16f126890aSEmmanuel Vadot *     This file is distributed in the hope that it will be useful,
17f126890aSEmmanuel Vadot *     but WITHOUT ANY WARRANTY; without even the implied warranty of
18f126890aSEmmanuel Vadot *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19f126890aSEmmanuel Vadot *     GNU General Public License for more details.
20f126890aSEmmanuel Vadot *
21f126890aSEmmanuel Vadot * Or, alternatively,
22f126890aSEmmanuel Vadot *
23f126890aSEmmanuel Vadot *  b) Permission is hereby granted, free of charge, to any person
24f126890aSEmmanuel Vadot *     obtaining a copy of this software and associated documentation
25f126890aSEmmanuel Vadot *     files (the "Software"), to deal in the Software without
26f126890aSEmmanuel Vadot *     restriction, including without limitation the rights to use,
27f126890aSEmmanuel Vadot *     copy, modify, merge, publish, distribute, sublicense, and/or
28f126890aSEmmanuel Vadot *     sell copies of the Software, and to permit persons to whom the
29f126890aSEmmanuel Vadot *     Software is furnished to do so, subject to the following
30f126890aSEmmanuel Vadot *     conditions:
31f126890aSEmmanuel Vadot *
32f126890aSEmmanuel Vadot *     The above copyright notice and this permission notice shall be
33f126890aSEmmanuel Vadot *     included in all copies or substantial portions of the Software.
34f126890aSEmmanuel Vadot *
35f126890aSEmmanuel Vadot *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
36f126890aSEmmanuel Vadot *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
37f126890aSEmmanuel Vadot *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
38f126890aSEmmanuel Vadot *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
39f126890aSEmmanuel Vadot *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
40f126890aSEmmanuel Vadot *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
41f126890aSEmmanuel Vadot *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
42f126890aSEmmanuel Vadot *     OTHER DEALINGS IN THE SOFTWARE.
43f126890aSEmmanuel Vadot */
44f126890aSEmmanuel Vadot
45f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h>
46f126890aSEmmanuel Vadot#include <dt-bindings/thermal/thermal.h>
47f126890aSEmmanuel Vadot#include <dt-bindings/dma/sun4i-a10.h>
48f126890aSEmmanuel Vadot#include <dt-bindings/clock/sun7i-a20-ccu.h>
49f126890aSEmmanuel Vadot#include <dt-bindings/reset/sun4i-a10-ccu.h>
50f126890aSEmmanuel Vadot#include <dt-bindings/pinctrl/sun4i-a10.h>
51f126890aSEmmanuel Vadot
52f126890aSEmmanuel Vadot/ {
53f126890aSEmmanuel Vadot	interrupt-parent = <&gic>;
54f126890aSEmmanuel Vadot	#address-cells = <1>;
55f126890aSEmmanuel Vadot	#size-cells = <1>;
56f126890aSEmmanuel Vadot
57f126890aSEmmanuel Vadot	aliases {
58f126890aSEmmanuel Vadot		ethernet0 = &gmac;
59f126890aSEmmanuel Vadot	};
60f126890aSEmmanuel Vadot
61f126890aSEmmanuel Vadot	chosen {
62f126890aSEmmanuel Vadot		#address-cells = <1>;
63f126890aSEmmanuel Vadot		#size-cells = <1>;
64f126890aSEmmanuel Vadot		ranges;
65f126890aSEmmanuel Vadot
66f126890aSEmmanuel Vadot		framebuffer-lcd0-hdmi {
67f126890aSEmmanuel Vadot			compatible = "allwinner,simple-framebuffer",
68f126890aSEmmanuel Vadot				     "simple-framebuffer";
69f126890aSEmmanuel Vadot			allwinner,pipeline = "de_be0-lcd0-hdmi";
70f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_LCD0>, <&ccu CLK_AHB_HDMI0>,
71f126890aSEmmanuel Vadot				 <&ccu CLK_AHB_DE_BE0>, <&ccu CLK_DE_BE0>,
72f126890aSEmmanuel Vadot				 <&ccu CLK_TCON0_CH1>, <&ccu CLK_DRAM_DE_BE0>,
73f126890aSEmmanuel Vadot				 <&ccu CLK_HDMI>;
74f126890aSEmmanuel Vadot			status = "disabled";
75f126890aSEmmanuel Vadot		};
76f126890aSEmmanuel Vadot
77f126890aSEmmanuel Vadot		framebuffer-lcd0 {
78f126890aSEmmanuel Vadot			compatible = "allwinner,simple-framebuffer",
79f126890aSEmmanuel Vadot				     "simple-framebuffer";
80f126890aSEmmanuel Vadot			allwinner,pipeline = "de_be0-lcd0";
81f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_LCD0>, <&ccu CLK_AHB_DE_BE0>,
82f126890aSEmmanuel Vadot				 <&ccu CLK_DE_BE0>, <&ccu CLK_TCON0_CH0>,
83f126890aSEmmanuel Vadot				 <&ccu CLK_DRAM_DE_BE0>;
84f126890aSEmmanuel Vadot			status = "disabled";
85f126890aSEmmanuel Vadot		};
86f126890aSEmmanuel Vadot
87f126890aSEmmanuel Vadot		framebuffer-lcd0-tve0 {
88f126890aSEmmanuel Vadot			compatible = "allwinner,simple-framebuffer",
89f126890aSEmmanuel Vadot				     "simple-framebuffer";
90f126890aSEmmanuel Vadot			allwinner,pipeline = "de_be0-lcd0-tve0";
91f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_TVE0>, <&ccu CLK_AHB_LCD0>,
92f126890aSEmmanuel Vadot				 <&ccu CLK_AHB_DE_BE0>,
93f126890aSEmmanuel Vadot				 <&ccu CLK_DE_BE0>, <&ccu CLK_TCON0_CH1>,
94f126890aSEmmanuel Vadot				 <&ccu CLK_DRAM_TVE0>, <&ccu CLK_DRAM_DE_BE0>;
95f126890aSEmmanuel Vadot			status = "disabled";
96f126890aSEmmanuel Vadot		};
97f126890aSEmmanuel Vadot	};
98f126890aSEmmanuel Vadot
99f126890aSEmmanuel Vadot	cpus {
100f126890aSEmmanuel Vadot		#address-cells = <1>;
101f126890aSEmmanuel Vadot		#size-cells = <0>;
102f126890aSEmmanuel Vadot
103f126890aSEmmanuel Vadot		cpu0: cpu@0 {
104f126890aSEmmanuel Vadot			compatible = "arm,cortex-a7";
105f126890aSEmmanuel Vadot			device_type = "cpu";
106f126890aSEmmanuel Vadot			reg = <0>;
107f126890aSEmmanuel Vadot			clocks = <&ccu CLK_CPU>;
108f126890aSEmmanuel Vadot			clock-latency = <244144>; /* 8 32k periods */
109f126890aSEmmanuel Vadot			operating-points =
110f126890aSEmmanuel Vadot				/* kHz	  uV */
111f126890aSEmmanuel Vadot				<960000	1400000>,
112f126890aSEmmanuel Vadot				<912000	1400000>,
113f126890aSEmmanuel Vadot				<864000	1300000>,
114f126890aSEmmanuel Vadot				<720000	1200000>,
115f126890aSEmmanuel Vadot				<528000	1100000>,
116f126890aSEmmanuel Vadot				<312000	1000000>,
117f126890aSEmmanuel Vadot				<144000	1000000>;
118f126890aSEmmanuel Vadot			#cooling-cells = <2>;
119f126890aSEmmanuel Vadot		};
120f126890aSEmmanuel Vadot
121f126890aSEmmanuel Vadot		cpu1: cpu@1 {
122f126890aSEmmanuel Vadot			compatible = "arm,cortex-a7";
123f126890aSEmmanuel Vadot			device_type = "cpu";
124f126890aSEmmanuel Vadot			reg = <1>;
125f126890aSEmmanuel Vadot			clocks = <&ccu CLK_CPU>;
126f126890aSEmmanuel Vadot			clock-latency = <244144>; /* 8 32k periods */
127f126890aSEmmanuel Vadot			operating-points =
128f126890aSEmmanuel Vadot				/* kHz	  uV */
129f126890aSEmmanuel Vadot				<960000	1400000>,
130f126890aSEmmanuel Vadot				<912000	1400000>,
131f126890aSEmmanuel Vadot				<864000	1300000>,
132f126890aSEmmanuel Vadot				<720000	1200000>,
133f126890aSEmmanuel Vadot				<528000	1100000>,
134f126890aSEmmanuel Vadot				<312000	1000000>,
135f126890aSEmmanuel Vadot				<144000	1000000>;
136f126890aSEmmanuel Vadot			#cooling-cells = <2>;
137f126890aSEmmanuel Vadot		};
138f126890aSEmmanuel Vadot	};
139f126890aSEmmanuel Vadot
140f126890aSEmmanuel Vadot	thermal-zones {
141f126890aSEmmanuel Vadot		cpu-thermal {
142f126890aSEmmanuel Vadot			/* milliseconds */
143f126890aSEmmanuel Vadot			polling-delay-passive = <250>;
144f126890aSEmmanuel Vadot			polling-delay = <1000>;
145f126890aSEmmanuel Vadot			thermal-sensors = <&rtp>;
146f126890aSEmmanuel Vadot
147f126890aSEmmanuel Vadot			cooling-maps {
148f126890aSEmmanuel Vadot				map0 {
149f126890aSEmmanuel Vadot					trip = <&cpu_alert0>;
150f126890aSEmmanuel Vadot					cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
151f126890aSEmmanuel Vadot							 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
152f126890aSEmmanuel Vadot				};
153f126890aSEmmanuel Vadot			};
154f126890aSEmmanuel Vadot
155f126890aSEmmanuel Vadot			trips {
156*7d0873ebSEmmanuel Vadot				cpu_alert0: cpu-alert0 {
157f126890aSEmmanuel Vadot					/* milliCelsius */
158f126890aSEmmanuel Vadot					temperature = <75000>;
159f126890aSEmmanuel Vadot					hysteresis = <2000>;
160f126890aSEmmanuel Vadot					type = "passive";
161f126890aSEmmanuel Vadot				};
162f126890aSEmmanuel Vadot
163*7d0873ebSEmmanuel Vadot				cpu_crit: cpu-crit {
164f126890aSEmmanuel Vadot					/* milliCelsius */
165f126890aSEmmanuel Vadot					temperature = <100000>;
166f126890aSEmmanuel Vadot					hysteresis = <2000>;
167f126890aSEmmanuel Vadot					type = "critical";
168f126890aSEmmanuel Vadot				};
169f126890aSEmmanuel Vadot			};
170f126890aSEmmanuel Vadot		};
171f126890aSEmmanuel Vadot	};
172f126890aSEmmanuel Vadot
173f126890aSEmmanuel Vadot	reserved-memory {
174f126890aSEmmanuel Vadot		#address-cells = <1>;
175f126890aSEmmanuel Vadot		#size-cells = <1>;
176f126890aSEmmanuel Vadot		ranges;
177f126890aSEmmanuel Vadot
178f126890aSEmmanuel Vadot		/* Address must be kept in the lower 256 MiBs of DRAM for VE. */
179f126890aSEmmanuel Vadot		default-pool {
180f126890aSEmmanuel Vadot			compatible = "shared-dma-pool";
181f126890aSEmmanuel Vadot			size = <0x6000000>;
182f126890aSEmmanuel Vadot			alloc-ranges = <0x40000000 0x10000000>;
183f126890aSEmmanuel Vadot			reusable;
184f126890aSEmmanuel Vadot			linux,cma-default;
185f126890aSEmmanuel Vadot		};
186f126890aSEmmanuel Vadot	};
187f126890aSEmmanuel Vadot
188f126890aSEmmanuel Vadot	timer {
189f126890aSEmmanuel Vadot		compatible = "arm,armv7-timer";
190f126890aSEmmanuel Vadot		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
191f126890aSEmmanuel Vadot			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
192f126890aSEmmanuel Vadot			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
193f126890aSEmmanuel Vadot			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
194f126890aSEmmanuel Vadot	};
195f126890aSEmmanuel Vadot
196f126890aSEmmanuel Vadot	pmu {
197f126890aSEmmanuel Vadot		compatible = "arm,cortex-a7-pmu";
198f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
199f126890aSEmmanuel Vadot			     <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
200f126890aSEmmanuel Vadot	};
201f126890aSEmmanuel Vadot
202f126890aSEmmanuel Vadot	clocks {
203f126890aSEmmanuel Vadot		#address-cells = <1>;
204f126890aSEmmanuel Vadot		#size-cells = <1>;
205f126890aSEmmanuel Vadot		ranges;
206f126890aSEmmanuel Vadot
207f126890aSEmmanuel Vadot		osc24M: clk-24M {
208f126890aSEmmanuel Vadot			#clock-cells = <0>;
209f126890aSEmmanuel Vadot			compatible = "fixed-clock";
210f126890aSEmmanuel Vadot			clock-frequency = <24000000>;
211f126890aSEmmanuel Vadot			clock-output-names = "osc24M";
212f126890aSEmmanuel Vadot		};
213f126890aSEmmanuel Vadot
214f126890aSEmmanuel Vadot		osc32k: clk-32k {
215f126890aSEmmanuel Vadot			#clock-cells = <0>;
216f126890aSEmmanuel Vadot			compatible = "fixed-clock";
217f126890aSEmmanuel Vadot			clock-frequency = <32768>;
218f126890aSEmmanuel Vadot			clock-output-names = "osc32k";
219f126890aSEmmanuel Vadot		};
220f126890aSEmmanuel Vadot
221f126890aSEmmanuel Vadot		/*
222f126890aSEmmanuel Vadot		 * The following two are dummy clocks, placeholders
223f126890aSEmmanuel Vadot		 * used in the gmac_tx clock. The gmac driver will
224f126890aSEmmanuel Vadot		 * choose one parent depending on the PHY interface
225f126890aSEmmanuel Vadot		 * mode, using clk_set_rate auto-reparenting.
226f126890aSEmmanuel Vadot		 *
227f126890aSEmmanuel Vadot		 * The actual TX clock rate is not controlled by the
228f126890aSEmmanuel Vadot		 * gmac_tx clock.
229f126890aSEmmanuel Vadot		 */
230f126890aSEmmanuel Vadot		mii_phy_tx_clk: clk-mii-phy-tx {
231f126890aSEmmanuel Vadot			#clock-cells = <0>;
232f126890aSEmmanuel Vadot			compatible = "fixed-clock";
233f126890aSEmmanuel Vadot			clock-frequency = <25000000>;
234f126890aSEmmanuel Vadot			clock-output-names = "mii_phy_tx";
235f126890aSEmmanuel Vadot		};
236f126890aSEmmanuel Vadot
237f126890aSEmmanuel Vadot		gmac_int_tx_clk: clk-gmac-int-tx {
238f126890aSEmmanuel Vadot			#clock-cells = <0>;
239f126890aSEmmanuel Vadot			compatible = "fixed-clock";
240f126890aSEmmanuel Vadot			clock-frequency = <125000000>;
241f126890aSEmmanuel Vadot			clock-output-names = "gmac_int_tx";
242f126890aSEmmanuel Vadot		};
243f126890aSEmmanuel Vadot
244f126890aSEmmanuel Vadot		gmac_tx_clk: clk@1c20164 {
245f126890aSEmmanuel Vadot			#clock-cells = <0>;
246f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-gmac-clk";
247f126890aSEmmanuel Vadot			reg = <0x01c20164 0x4>;
248f126890aSEmmanuel Vadot			clocks = <&mii_phy_tx_clk>, <&gmac_int_tx_clk>;
249f126890aSEmmanuel Vadot			clock-output-names = "gmac_tx";
250f126890aSEmmanuel Vadot		};
251f126890aSEmmanuel Vadot	};
252f126890aSEmmanuel Vadot
253f126890aSEmmanuel Vadot
254f126890aSEmmanuel Vadot	de: display-engine {
255f126890aSEmmanuel Vadot		compatible = "allwinner,sun7i-a20-display-engine";
256f126890aSEmmanuel Vadot		allwinner,pipelines = <&fe0>, <&fe1>;
257f126890aSEmmanuel Vadot		status = "disabled";
258f126890aSEmmanuel Vadot	};
259f126890aSEmmanuel Vadot
260f126890aSEmmanuel Vadot	soc {
261f126890aSEmmanuel Vadot		compatible = "simple-bus";
262f126890aSEmmanuel Vadot		#address-cells = <1>;
263f126890aSEmmanuel Vadot		#size-cells = <1>;
264f126890aSEmmanuel Vadot		ranges;
265f126890aSEmmanuel Vadot
266f126890aSEmmanuel Vadot		system-control@1c00000 {
267f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-system-control",
268f126890aSEmmanuel Vadot				     "allwinner,sun4i-a10-system-control";
269f126890aSEmmanuel Vadot			reg = <0x01c00000 0x30>;
270f126890aSEmmanuel Vadot			#address-cells = <1>;
271f126890aSEmmanuel Vadot			#size-cells = <1>;
272f126890aSEmmanuel Vadot			ranges;
273f126890aSEmmanuel Vadot
274f126890aSEmmanuel Vadot			sram_a: sram@0 {
275f126890aSEmmanuel Vadot				compatible = "mmio-sram";
276f126890aSEmmanuel Vadot				reg = <0x00000000 0xc000>;
277f126890aSEmmanuel Vadot				#address-cells = <1>;
278f126890aSEmmanuel Vadot				#size-cells = <1>;
279f126890aSEmmanuel Vadot				ranges = <0 0x00000000 0xc000>;
280f126890aSEmmanuel Vadot
281f126890aSEmmanuel Vadot				emac_sram: sram-section@8000 {
282f126890aSEmmanuel Vadot					compatible = "allwinner,sun7i-a20-sram-a3-a4",
283f126890aSEmmanuel Vadot						     "allwinner,sun4i-a10-sram-a3-a4";
284f126890aSEmmanuel Vadot					reg = <0x8000 0x4000>;
285f126890aSEmmanuel Vadot					status = "disabled";
286f126890aSEmmanuel Vadot				};
287f126890aSEmmanuel Vadot			};
288f126890aSEmmanuel Vadot
289f126890aSEmmanuel Vadot			sram_d: sram@10000 {
290f126890aSEmmanuel Vadot				compatible = "mmio-sram";
291f126890aSEmmanuel Vadot				reg = <0x00010000 0x1000>;
292f126890aSEmmanuel Vadot				#address-cells = <1>;
293f126890aSEmmanuel Vadot				#size-cells = <1>;
294f126890aSEmmanuel Vadot				ranges = <0 0x00010000 0x1000>;
295f126890aSEmmanuel Vadot
296f126890aSEmmanuel Vadot				otg_sram: sram-section@0 {
297f126890aSEmmanuel Vadot					compatible = "allwinner,sun7i-a20-sram-d",
298f126890aSEmmanuel Vadot						     "allwinner,sun4i-a10-sram-d";
299f126890aSEmmanuel Vadot					reg = <0x0000 0x1000>;
300f126890aSEmmanuel Vadot					status = "disabled";
301f126890aSEmmanuel Vadot				};
302f126890aSEmmanuel Vadot			};
303f126890aSEmmanuel Vadot
304f126890aSEmmanuel Vadot			sram_c: sram@1d00000 {
305f126890aSEmmanuel Vadot				compatible = "mmio-sram";
306f126890aSEmmanuel Vadot				reg = <0x01d00000 0xd0000>;
307f126890aSEmmanuel Vadot				#address-cells = <1>;
308f126890aSEmmanuel Vadot				#size-cells = <1>;
309f126890aSEmmanuel Vadot				ranges = <0 0x01d00000 0xd0000>;
310f126890aSEmmanuel Vadot
311f126890aSEmmanuel Vadot				ve_sram: sram-section@0 {
312f126890aSEmmanuel Vadot					compatible = "allwinner,sun7i-a20-sram-c1",
313f126890aSEmmanuel Vadot						     "allwinner,sun4i-a10-sram-c1";
314f126890aSEmmanuel Vadot					reg = <0x000000 0x80000>;
315f126890aSEmmanuel Vadot				};
316f126890aSEmmanuel Vadot			};
317f126890aSEmmanuel Vadot		};
318f126890aSEmmanuel Vadot
319f126890aSEmmanuel Vadot		nmi_intc: interrupt-controller@1c00030 {
320f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-sc-nmi";
321f126890aSEmmanuel Vadot			interrupt-controller;
322f126890aSEmmanuel Vadot			#interrupt-cells = <2>;
323f126890aSEmmanuel Vadot			reg = <0x01c00030 0x0c>;
324f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>;
325f126890aSEmmanuel Vadot		};
326f126890aSEmmanuel Vadot
327f126890aSEmmanuel Vadot		dma: dma-controller@1c02000 {
328f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-dma";
329f126890aSEmmanuel Vadot			reg = <0x01c02000 0x1000>;
330f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
331f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_DMA>;
332f126890aSEmmanuel Vadot			#dma-cells = <2>;
333f126890aSEmmanuel Vadot		};
334f126890aSEmmanuel Vadot
335f126890aSEmmanuel Vadot		nfc: nand-controller@1c03000 {
336f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-nand";
337f126890aSEmmanuel Vadot			reg = <0x01c03000 0x1000>;
338f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
339f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_NAND>, <&ccu CLK_NAND>;
340f126890aSEmmanuel Vadot			clock-names = "ahb", "mod";
341f126890aSEmmanuel Vadot			dmas = <&dma SUN4I_DMA_DEDICATED 3>;
342f126890aSEmmanuel Vadot			dma-names = "rxtx";
343f126890aSEmmanuel Vadot			status = "disabled";
344f126890aSEmmanuel Vadot			#address-cells = <1>;
345f126890aSEmmanuel Vadot			#size-cells = <0>;
346f126890aSEmmanuel Vadot		};
347f126890aSEmmanuel Vadot
348f126890aSEmmanuel Vadot		spi0: spi@1c05000 {
349f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-spi";
350f126890aSEmmanuel Vadot			reg = <0x01c05000 0x1000>;
351f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
352f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_SPI0>, <&ccu CLK_SPI0>;
353f126890aSEmmanuel Vadot			clock-names = "ahb", "mod";
354f126890aSEmmanuel Vadot			dmas = <&dma SUN4I_DMA_DEDICATED 27>,
355f126890aSEmmanuel Vadot			       <&dma SUN4I_DMA_DEDICATED 26>;
356f126890aSEmmanuel Vadot			dma-names = "rx", "tx";
357f126890aSEmmanuel Vadot			status = "disabled";
358f126890aSEmmanuel Vadot			#address-cells = <1>;
359f126890aSEmmanuel Vadot			#size-cells = <0>;
360f126890aSEmmanuel Vadot			num-cs = <4>;
361f126890aSEmmanuel Vadot		};
362f126890aSEmmanuel Vadot
363f126890aSEmmanuel Vadot		spi1: spi@1c06000 {
364f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-spi";
365f126890aSEmmanuel Vadot			reg = <0x01c06000 0x1000>;
366f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
367f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_SPI1>, <&ccu CLK_SPI1>;
368f126890aSEmmanuel Vadot			clock-names = "ahb", "mod";
369f126890aSEmmanuel Vadot			dmas = <&dma SUN4I_DMA_DEDICATED 9>,
370f126890aSEmmanuel Vadot			       <&dma SUN4I_DMA_DEDICATED 8>;
371f126890aSEmmanuel Vadot			dma-names = "rx", "tx";
372f126890aSEmmanuel Vadot			status = "disabled";
373f126890aSEmmanuel Vadot			#address-cells = <1>;
374f126890aSEmmanuel Vadot			#size-cells = <0>;
375f126890aSEmmanuel Vadot			num-cs = <1>;
376f126890aSEmmanuel Vadot		};
377f126890aSEmmanuel Vadot
378f126890aSEmmanuel Vadot		csi0: csi@1c09000 {
379f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-csi0";
380f126890aSEmmanuel Vadot			reg = <0x01c09000 0x1000>;
381f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
382f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_CSI0>, <&ccu CLK_CSI_SCLK>, <&ccu CLK_DRAM_CSI0>;
383f126890aSEmmanuel Vadot			clock-names = "bus", "isp", "ram";
384f126890aSEmmanuel Vadot			resets = <&ccu RST_CSI0>;
385f126890aSEmmanuel Vadot			status = "disabled";
386f126890aSEmmanuel Vadot		};
387f126890aSEmmanuel Vadot
388f126890aSEmmanuel Vadot		emac: ethernet@1c0b000 {
389f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-emac";
390f126890aSEmmanuel Vadot			reg = <0x01c0b000 0x1000>;
391f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
392f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_EMAC>;
393f126890aSEmmanuel Vadot			allwinner,sram = <&emac_sram 1>;
394f126890aSEmmanuel Vadot			status = "disabled";
395f126890aSEmmanuel Vadot		};
396f126890aSEmmanuel Vadot
397f126890aSEmmanuel Vadot		mdio: mdio@1c0b080 {
398f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-mdio";
399f126890aSEmmanuel Vadot			reg = <0x01c0b080 0x14>;
400f126890aSEmmanuel Vadot			status = "disabled";
401f126890aSEmmanuel Vadot			#address-cells = <1>;
402f126890aSEmmanuel Vadot			#size-cells = <0>;
403f126890aSEmmanuel Vadot		};
404f126890aSEmmanuel Vadot
405f126890aSEmmanuel Vadot		tcon0: lcd-controller@1c0c000 {
406f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-tcon0",
407f126890aSEmmanuel Vadot				     "allwinner,sun7i-a20-tcon";
408f126890aSEmmanuel Vadot			reg = <0x01c0c000 0x1000>;
409f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
410f126890aSEmmanuel Vadot			resets = <&ccu RST_TCON0>, <&ccu RST_LVDS>;
411f126890aSEmmanuel Vadot			reset-names = "lcd", "lvds";
412f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_LCD0>,
413f126890aSEmmanuel Vadot				 <&ccu CLK_TCON0_CH0>,
414f126890aSEmmanuel Vadot				 <&ccu CLK_TCON0_CH1>;
415f126890aSEmmanuel Vadot			clock-names = "ahb",
416f126890aSEmmanuel Vadot				      "tcon-ch0",
417f126890aSEmmanuel Vadot				      "tcon-ch1";
418f126890aSEmmanuel Vadot			clock-output-names = "tcon0-pixel-clock";
419f126890aSEmmanuel Vadot			#clock-cells = <0>;
420f126890aSEmmanuel Vadot			dmas = <&dma SUN4I_DMA_DEDICATED 14>;
421f126890aSEmmanuel Vadot
422f126890aSEmmanuel Vadot			ports {
423f126890aSEmmanuel Vadot				#address-cells = <1>;
424f126890aSEmmanuel Vadot				#size-cells = <0>;
425f126890aSEmmanuel Vadot
426f126890aSEmmanuel Vadot				tcon0_in: port@0 {
427f126890aSEmmanuel Vadot					#address-cells = <1>;
428f126890aSEmmanuel Vadot					#size-cells = <0>;
429f126890aSEmmanuel Vadot					reg = <0>;
430f126890aSEmmanuel Vadot
431f126890aSEmmanuel Vadot					tcon0_in_be0: endpoint@0 {
432f126890aSEmmanuel Vadot						reg = <0>;
433f126890aSEmmanuel Vadot						remote-endpoint = <&be0_out_tcon0>;
434f126890aSEmmanuel Vadot					};
435f126890aSEmmanuel Vadot
436f126890aSEmmanuel Vadot					tcon0_in_be1: endpoint@1 {
437f126890aSEmmanuel Vadot						reg = <1>;
438f126890aSEmmanuel Vadot						remote-endpoint = <&be1_out_tcon0>;
439f126890aSEmmanuel Vadot					};
440f126890aSEmmanuel Vadot				};
441f126890aSEmmanuel Vadot
442f126890aSEmmanuel Vadot				tcon0_out: port@1 {
443f126890aSEmmanuel Vadot					#address-cells = <1>;
444f126890aSEmmanuel Vadot					#size-cells = <0>;
445f126890aSEmmanuel Vadot					reg = <1>;
446f126890aSEmmanuel Vadot
447f126890aSEmmanuel Vadot					tcon0_out_hdmi: endpoint@1 {
448f126890aSEmmanuel Vadot						reg = <1>;
449f126890aSEmmanuel Vadot						remote-endpoint = <&hdmi_in_tcon0>;
450f126890aSEmmanuel Vadot						allwinner,tcon-channel = <1>;
451f126890aSEmmanuel Vadot					};
452f126890aSEmmanuel Vadot				};
453f126890aSEmmanuel Vadot			};
454f126890aSEmmanuel Vadot		};
455f126890aSEmmanuel Vadot
456f126890aSEmmanuel Vadot		tcon1: lcd-controller@1c0d000 {
457f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-tcon1",
458f126890aSEmmanuel Vadot				     "allwinner,sun7i-a20-tcon";
459f126890aSEmmanuel Vadot			reg = <0x01c0d000 0x1000>;
460f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
461f126890aSEmmanuel Vadot			resets = <&ccu RST_TCON1>;
462f126890aSEmmanuel Vadot			reset-names = "lcd";
463f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_LCD1>,
464f126890aSEmmanuel Vadot				 <&ccu CLK_TCON1_CH0>,
465f126890aSEmmanuel Vadot				 <&ccu CLK_TCON1_CH1>;
466f126890aSEmmanuel Vadot			clock-names = "ahb",
467f126890aSEmmanuel Vadot				      "tcon-ch0",
468f126890aSEmmanuel Vadot				      "tcon-ch1";
469f126890aSEmmanuel Vadot			clock-output-names = "tcon1-pixel-clock";
470f126890aSEmmanuel Vadot			#clock-cells = <0>;
471f126890aSEmmanuel Vadot			dmas = <&dma SUN4I_DMA_DEDICATED 15>;
472f126890aSEmmanuel Vadot
473f126890aSEmmanuel Vadot			ports {
474f126890aSEmmanuel Vadot				#address-cells = <1>;
475f126890aSEmmanuel Vadot				#size-cells = <0>;
476f126890aSEmmanuel Vadot
477f126890aSEmmanuel Vadot				tcon1_in: port@0 {
478f126890aSEmmanuel Vadot					#address-cells = <1>;
479f126890aSEmmanuel Vadot					#size-cells = <0>;
480f126890aSEmmanuel Vadot					reg = <0>;
481f126890aSEmmanuel Vadot
482f126890aSEmmanuel Vadot					tcon1_in_be0: endpoint@0 {
483f126890aSEmmanuel Vadot						reg = <0>;
484f126890aSEmmanuel Vadot						remote-endpoint = <&be0_out_tcon1>;
485f126890aSEmmanuel Vadot					};
486f126890aSEmmanuel Vadot
487f126890aSEmmanuel Vadot					tcon1_in_be1: endpoint@1 {
488f126890aSEmmanuel Vadot						reg = <1>;
489f126890aSEmmanuel Vadot						remote-endpoint = <&be1_out_tcon1>;
490f126890aSEmmanuel Vadot					};
491f126890aSEmmanuel Vadot				};
492f126890aSEmmanuel Vadot
493f126890aSEmmanuel Vadot				tcon1_out: port@1 {
494f126890aSEmmanuel Vadot					#address-cells = <1>;
495f126890aSEmmanuel Vadot					#size-cells = <0>;
496f126890aSEmmanuel Vadot					reg = <1>;
497f126890aSEmmanuel Vadot
498f126890aSEmmanuel Vadot					tcon1_out_hdmi: endpoint@1 {
499f126890aSEmmanuel Vadot						reg = <1>;
500f126890aSEmmanuel Vadot						remote-endpoint = <&hdmi_in_tcon1>;
501f126890aSEmmanuel Vadot						allwinner,tcon-channel = <1>;
502f126890aSEmmanuel Vadot					};
503f126890aSEmmanuel Vadot				};
504f126890aSEmmanuel Vadot			};
505f126890aSEmmanuel Vadot		};
506f126890aSEmmanuel Vadot
507f126890aSEmmanuel Vadot		video-codec@1c0e000 {
508f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-video-engine";
509f126890aSEmmanuel Vadot			reg = <0x01c0e000 0x1000>;
510f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_VE>, <&ccu CLK_VE>,
511f126890aSEmmanuel Vadot				 <&ccu CLK_DRAM_VE>;
512f126890aSEmmanuel Vadot			clock-names = "ahb", "mod", "ram";
513f126890aSEmmanuel Vadot			resets = <&ccu RST_VE>;
514f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
515f126890aSEmmanuel Vadot			allwinner,sram = <&ve_sram 1>;
516f126890aSEmmanuel Vadot		};
517f126890aSEmmanuel Vadot
518f126890aSEmmanuel Vadot		mmc0: mmc@1c0f000 {
519f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-mmc";
520f126890aSEmmanuel Vadot			reg = <0x01c0f000 0x1000>;
521f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_MMC0>,
522f126890aSEmmanuel Vadot				 <&ccu CLK_MMC0>,
523f126890aSEmmanuel Vadot				 <&ccu CLK_MMC0_OUTPUT>,
524f126890aSEmmanuel Vadot				 <&ccu CLK_MMC0_SAMPLE>;
525f126890aSEmmanuel Vadot			clock-names = "ahb",
526f126890aSEmmanuel Vadot				      "mmc",
527f126890aSEmmanuel Vadot				      "output",
528f126890aSEmmanuel Vadot				      "sample";
529f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
530f126890aSEmmanuel Vadot			pinctrl-names = "default";
531f126890aSEmmanuel Vadot			pinctrl-0 = <&mmc0_pins>;
532f126890aSEmmanuel Vadot			status = "disabled";
533f126890aSEmmanuel Vadot			#address-cells = <1>;
534f126890aSEmmanuel Vadot			#size-cells = <0>;
535f126890aSEmmanuel Vadot		};
536f126890aSEmmanuel Vadot
537f126890aSEmmanuel Vadot		mmc1: mmc@1c10000 {
538f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-mmc";
539f126890aSEmmanuel Vadot			reg = <0x01c10000 0x1000>;
540f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_MMC1>,
541f126890aSEmmanuel Vadot				 <&ccu CLK_MMC1>,
542f126890aSEmmanuel Vadot				 <&ccu CLK_MMC1_OUTPUT>,
543f126890aSEmmanuel Vadot				 <&ccu CLK_MMC1_SAMPLE>;
544f126890aSEmmanuel Vadot			clock-names = "ahb",
545f126890aSEmmanuel Vadot				      "mmc",
546f126890aSEmmanuel Vadot				      "output",
547f126890aSEmmanuel Vadot				      "sample";
548f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
549f126890aSEmmanuel Vadot			status = "disabled";
550f126890aSEmmanuel Vadot			#address-cells = <1>;
551f126890aSEmmanuel Vadot			#size-cells = <0>;
552f126890aSEmmanuel Vadot		};
553f126890aSEmmanuel Vadot
554f126890aSEmmanuel Vadot		mmc2: mmc@1c11000 {
555f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-mmc";
556f126890aSEmmanuel Vadot			reg = <0x01c11000 0x1000>;
557f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_MMC2>,
558f126890aSEmmanuel Vadot				 <&ccu CLK_MMC2>,
559f126890aSEmmanuel Vadot				 <&ccu CLK_MMC2_OUTPUT>,
560f126890aSEmmanuel Vadot				 <&ccu CLK_MMC2_SAMPLE>;
561f126890aSEmmanuel Vadot			clock-names = "ahb",
562f126890aSEmmanuel Vadot				      "mmc",
563f126890aSEmmanuel Vadot				      "output",
564f126890aSEmmanuel Vadot				      "sample";
565f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
566f126890aSEmmanuel Vadot			pinctrl-names = "default";
567f126890aSEmmanuel Vadot			pinctrl-0 = <&mmc2_pins>;
568f126890aSEmmanuel Vadot			status = "disabled";
569f126890aSEmmanuel Vadot			#address-cells = <1>;
570f126890aSEmmanuel Vadot			#size-cells = <0>;
571f126890aSEmmanuel Vadot		};
572f126890aSEmmanuel Vadot
573f126890aSEmmanuel Vadot		mmc3: mmc@1c12000 {
574f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-mmc";
575f126890aSEmmanuel Vadot			reg = <0x01c12000 0x1000>;
576f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_MMC3>,
577f126890aSEmmanuel Vadot				 <&ccu CLK_MMC3>,
578f126890aSEmmanuel Vadot				 <&ccu CLK_MMC3_OUTPUT>,
579f126890aSEmmanuel Vadot				 <&ccu CLK_MMC3_SAMPLE>;
580f126890aSEmmanuel Vadot			clock-names = "ahb",
581f126890aSEmmanuel Vadot				      "mmc",
582f126890aSEmmanuel Vadot				      "output",
583f126890aSEmmanuel Vadot				      "sample";
584f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
585f126890aSEmmanuel Vadot			pinctrl-names = "default";
586f126890aSEmmanuel Vadot			pinctrl-0 = <&mmc3_pins>;
587f126890aSEmmanuel Vadot			status = "disabled";
588f126890aSEmmanuel Vadot			#address-cells = <1>;
589f126890aSEmmanuel Vadot			#size-cells = <0>;
590f126890aSEmmanuel Vadot		};
591f126890aSEmmanuel Vadot
592f126890aSEmmanuel Vadot		usb_otg: usb@1c13000 {
593f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-musb";
594f126890aSEmmanuel Vadot			reg = <0x01c13000 0x0400>;
595f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_OTG>;
596f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
597f126890aSEmmanuel Vadot			interrupt-names = "mc";
598f126890aSEmmanuel Vadot			phys = <&usbphy 0>;
599f126890aSEmmanuel Vadot			phy-names = "usb";
600f126890aSEmmanuel Vadot			extcon = <&usbphy 0>;
601f126890aSEmmanuel Vadot			allwinner,sram = <&otg_sram 1>;
602f126890aSEmmanuel Vadot			dr_mode = "otg";
603f126890aSEmmanuel Vadot			status = "disabled";
604f126890aSEmmanuel Vadot		};
605f126890aSEmmanuel Vadot
606f126890aSEmmanuel Vadot		usbphy: phy@1c13400 {
607f126890aSEmmanuel Vadot			#phy-cells = <1>;
608f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-usb-phy";
609f126890aSEmmanuel Vadot			reg = <0x01c13400 0x10>, <0x01c14800 0x4>, <0x01c1c800 0x4>;
610f126890aSEmmanuel Vadot			reg-names = "phy_ctrl", "pmu1", "pmu2";
611f126890aSEmmanuel Vadot			clocks = <&ccu CLK_USB_PHY>;
612f126890aSEmmanuel Vadot			clock-names = "usb_phy";
613f126890aSEmmanuel Vadot			resets = <&ccu RST_USB_PHY0>,
614f126890aSEmmanuel Vadot				 <&ccu RST_USB_PHY1>,
615f126890aSEmmanuel Vadot				 <&ccu RST_USB_PHY2>;
616f126890aSEmmanuel Vadot			reset-names = "usb0_reset", "usb1_reset", "usb2_reset";
617f126890aSEmmanuel Vadot			status = "disabled";
618f126890aSEmmanuel Vadot		};
619f126890aSEmmanuel Vadot
620f126890aSEmmanuel Vadot		ehci0: usb@1c14000 {
621f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-ehci", "generic-ehci";
622f126890aSEmmanuel Vadot			reg = <0x01c14000 0x100>;
623f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
624f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_EHCI0>;
625f126890aSEmmanuel Vadot			phys = <&usbphy 1>;
626f126890aSEmmanuel Vadot			phy-names = "usb";
627f126890aSEmmanuel Vadot			status = "disabled";
628f126890aSEmmanuel Vadot		};
629f126890aSEmmanuel Vadot
630f126890aSEmmanuel Vadot		ohci0: usb@1c14400 {
631f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-ohci", "generic-ohci";
632f126890aSEmmanuel Vadot			reg = <0x01c14400 0x100>;
633f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
634f126890aSEmmanuel Vadot			clocks = <&ccu CLK_USB_OHCI0>, <&ccu CLK_AHB_OHCI0>;
635f126890aSEmmanuel Vadot			phys = <&usbphy 1>;
636f126890aSEmmanuel Vadot			phy-names = "usb";
637f126890aSEmmanuel Vadot			status = "disabled";
638f126890aSEmmanuel Vadot		};
639f126890aSEmmanuel Vadot
640f126890aSEmmanuel Vadot		crypto: crypto-engine@1c15000 {
641f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-crypto",
642f126890aSEmmanuel Vadot				     "allwinner,sun4i-a10-crypto";
643f126890aSEmmanuel Vadot			reg = <0x01c15000 0x1000>;
644f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
645f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_SS>, <&ccu CLK_SS>;
646f126890aSEmmanuel Vadot			clock-names = "ahb", "mod";
647f126890aSEmmanuel Vadot		};
648f126890aSEmmanuel Vadot
649f126890aSEmmanuel Vadot		hdmi: hdmi@1c16000 {
650f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-hdmi",
651f126890aSEmmanuel Vadot				     "allwinner,sun5i-a10s-hdmi";
652f126890aSEmmanuel Vadot			reg = <0x01c16000 0x1000>;
653f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
654f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_HDMI0>, <&ccu CLK_HDMI>,
655f126890aSEmmanuel Vadot				 <&ccu CLK_PLL_VIDEO0_2X>,
656f126890aSEmmanuel Vadot				 <&ccu CLK_PLL_VIDEO1_2X>;
657f126890aSEmmanuel Vadot			clock-names = "ahb", "mod", "pll-0", "pll-1";
658f126890aSEmmanuel Vadot			dmas = <&dma SUN4I_DMA_NORMAL 16>,
659f126890aSEmmanuel Vadot			       <&dma SUN4I_DMA_NORMAL 16>,
660f126890aSEmmanuel Vadot			       <&dma SUN4I_DMA_DEDICATED 24>;
661f126890aSEmmanuel Vadot			dma-names = "ddc-tx", "ddc-rx", "audio-tx";
662f126890aSEmmanuel Vadot			status = "disabled";
663f126890aSEmmanuel Vadot
664f126890aSEmmanuel Vadot			ports {
665f126890aSEmmanuel Vadot				#address-cells = <1>;
666f126890aSEmmanuel Vadot				#size-cells = <0>;
667f126890aSEmmanuel Vadot
668f126890aSEmmanuel Vadot				hdmi_in: port@0 {
669f126890aSEmmanuel Vadot					#address-cells = <1>;
670f126890aSEmmanuel Vadot					#size-cells = <0>;
671f126890aSEmmanuel Vadot					reg = <0>;
672f126890aSEmmanuel Vadot
673f126890aSEmmanuel Vadot					hdmi_in_tcon0: endpoint@0 {
674f126890aSEmmanuel Vadot						reg = <0>;
675f126890aSEmmanuel Vadot						remote-endpoint = <&tcon0_out_hdmi>;
676f126890aSEmmanuel Vadot					};
677f126890aSEmmanuel Vadot
678f126890aSEmmanuel Vadot					hdmi_in_tcon1: endpoint@1 {
679f126890aSEmmanuel Vadot						reg = <1>;
680f126890aSEmmanuel Vadot						remote-endpoint = <&tcon1_out_hdmi>;
681f126890aSEmmanuel Vadot					};
682f126890aSEmmanuel Vadot				};
683f126890aSEmmanuel Vadot
684f126890aSEmmanuel Vadot				hdmi_out: port@1 {
685f126890aSEmmanuel Vadot					reg = <1>;
686f126890aSEmmanuel Vadot				};
687f126890aSEmmanuel Vadot			};
688f126890aSEmmanuel Vadot		};
689f126890aSEmmanuel Vadot
690f126890aSEmmanuel Vadot		spi2: spi@1c17000 {
691f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-spi";
692f126890aSEmmanuel Vadot			reg = <0x01c17000 0x1000>;
693f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
694f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_SPI2>, <&ccu CLK_SPI2>;
695f126890aSEmmanuel Vadot			clock-names = "ahb", "mod";
696f126890aSEmmanuel Vadot			dmas = <&dma SUN4I_DMA_DEDICATED 29>,
697f126890aSEmmanuel Vadot			       <&dma SUN4I_DMA_DEDICATED 28>;
698f126890aSEmmanuel Vadot			dma-names = "rx", "tx";
699f126890aSEmmanuel Vadot			status = "disabled";
700f126890aSEmmanuel Vadot			#address-cells = <1>;
701f126890aSEmmanuel Vadot			#size-cells = <0>;
702f126890aSEmmanuel Vadot			num-cs = <1>;
703f126890aSEmmanuel Vadot		};
704f126890aSEmmanuel Vadot
705f126890aSEmmanuel Vadot		ahci: sata@1c18000 {
706f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-ahci";
707f126890aSEmmanuel Vadot			reg = <0x01c18000 0x1000>;
708f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
709f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_SATA>, <&ccu CLK_SATA>;
710f126890aSEmmanuel Vadot			status = "disabled";
711f126890aSEmmanuel Vadot		};
712f126890aSEmmanuel Vadot
713f126890aSEmmanuel Vadot		ehci1: usb@1c1c000 {
714f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-ehci", "generic-ehci";
715f126890aSEmmanuel Vadot			reg = <0x01c1c000 0x100>;
716f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
717f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_EHCI1>;
718f126890aSEmmanuel Vadot			phys = <&usbphy 2>;
719f126890aSEmmanuel Vadot			phy-names = "usb";
720f126890aSEmmanuel Vadot			status = "disabled";
721f126890aSEmmanuel Vadot		};
722f126890aSEmmanuel Vadot
723f126890aSEmmanuel Vadot		ohci1: usb@1c1c400 {
724f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-ohci", "generic-ohci";
725f126890aSEmmanuel Vadot			reg = <0x01c1c400 0x100>;
726f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
727f126890aSEmmanuel Vadot			clocks = <&ccu CLK_USB_OHCI1>, <&ccu CLK_AHB_OHCI1>;
728f126890aSEmmanuel Vadot			phys = <&usbphy 2>;
729f126890aSEmmanuel Vadot			phy-names = "usb";
730f126890aSEmmanuel Vadot			status = "disabled";
731f126890aSEmmanuel Vadot		};
732f126890aSEmmanuel Vadot
733f126890aSEmmanuel Vadot		csi1: csi@1c1d000 {
734f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-csi1",
735f126890aSEmmanuel Vadot				     "allwinner,sun4i-a10-csi1";
736f126890aSEmmanuel Vadot			reg = <0x01c1d000 0x1000>;
737f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
738f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_CSI1>, <&ccu CLK_DRAM_CSI1>;
739f126890aSEmmanuel Vadot			clock-names = "bus", "ram";
740f126890aSEmmanuel Vadot			resets = <&ccu RST_CSI1>;
741f126890aSEmmanuel Vadot			status = "disabled";
742f126890aSEmmanuel Vadot		};
743f126890aSEmmanuel Vadot
744f126890aSEmmanuel Vadot		spi3: spi@1c1f000 {
745f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-spi";
746f126890aSEmmanuel Vadot			reg = <0x01c1f000 0x1000>;
747f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
748f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_SPI3>, <&ccu CLK_SPI3>;
749f126890aSEmmanuel Vadot			clock-names = "ahb", "mod";
750f126890aSEmmanuel Vadot			dmas = <&dma SUN4I_DMA_DEDICATED 31>,
751f126890aSEmmanuel Vadot			       <&dma SUN4I_DMA_DEDICATED 30>;
752f126890aSEmmanuel Vadot			dma-names = "rx", "tx";
753f126890aSEmmanuel Vadot			status = "disabled";
754f126890aSEmmanuel Vadot			#address-cells = <1>;
755f126890aSEmmanuel Vadot			#size-cells = <0>;
756f126890aSEmmanuel Vadot			num-cs = <1>;
757f126890aSEmmanuel Vadot		};
758f126890aSEmmanuel Vadot
759f126890aSEmmanuel Vadot		ccu: clock@1c20000 {
760f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-ccu";
761f126890aSEmmanuel Vadot			reg = <0x01c20000 0x400>;
762f126890aSEmmanuel Vadot			clocks = <&osc24M>, <&osc32k>;
763f126890aSEmmanuel Vadot			clock-names = "hosc", "losc";
764f126890aSEmmanuel Vadot			#clock-cells = <1>;
765f126890aSEmmanuel Vadot			#reset-cells = <1>;
766f126890aSEmmanuel Vadot		};
767f126890aSEmmanuel Vadot
768f126890aSEmmanuel Vadot		pio: pinctrl@1c20800 {
769f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-pinctrl";
770f126890aSEmmanuel Vadot			reg = <0x01c20800 0x400>;
771f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
772f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB0_PIO>, <&osc24M>, <&osc32k>;
773f126890aSEmmanuel Vadot			clock-names = "apb", "hosc", "losc";
774f126890aSEmmanuel Vadot			gpio-controller;
775f126890aSEmmanuel Vadot			interrupt-controller;
776f126890aSEmmanuel Vadot			#interrupt-cells = <3>;
777f126890aSEmmanuel Vadot			#gpio-cells = <3>;
778f126890aSEmmanuel Vadot
779f126890aSEmmanuel Vadot			/omit-if-no-ref/
780f126890aSEmmanuel Vadot			can_pa_pins: can-pa-pins {
781f126890aSEmmanuel Vadot				pins = "PA16", "PA17";
782f126890aSEmmanuel Vadot				function = "can";
783f126890aSEmmanuel Vadot			};
784f126890aSEmmanuel Vadot
785f126890aSEmmanuel Vadot			/omit-if-no-ref/
786f126890aSEmmanuel Vadot			can_ph_pins: can-ph-pins {
787f126890aSEmmanuel Vadot				pins = "PH20", "PH21";
788f126890aSEmmanuel Vadot				function = "can";
789f126890aSEmmanuel Vadot			};
790f126890aSEmmanuel Vadot
791f126890aSEmmanuel Vadot			/omit-if-no-ref/
792f126890aSEmmanuel Vadot			clk_out_a_pin: clk-out-a-pin {
793f126890aSEmmanuel Vadot				pins = "PI12";
794f126890aSEmmanuel Vadot				function = "clk_out_a";
795f126890aSEmmanuel Vadot			};
796f126890aSEmmanuel Vadot
797f126890aSEmmanuel Vadot			/omit-if-no-ref/
798f126890aSEmmanuel Vadot			clk_out_b_pin: clk-out-b-pin {
799f126890aSEmmanuel Vadot				pins = "PI13";
800f126890aSEmmanuel Vadot				function = "clk_out_b";
801f126890aSEmmanuel Vadot			};
802f126890aSEmmanuel Vadot
803f126890aSEmmanuel Vadot			/omit-if-no-ref/
804f126890aSEmmanuel Vadot			csi0_8bits_pins: csi-8bits-pins {
805f126890aSEmmanuel Vadot				pins = "PE0", "PE2", "PE3", "PE4", "PE5",
806f126890aSEmmanuel Vadot				       "PE6", "PE7", "PE8", "PE9", "PE10",
807f126890aSEmmanuel Vadot				       "PE11";
808f126890aSEmmanuel Vadot				function = "csi0";
809f126890aSEmmanuel Vadot			};
810f126890aSEmmanuel Vadot
811f126890aSEmmanuel Vadot			/omit-if-no-ref/
812f126890aSEmmanuel Vadot			csi0_clk_pin: csi-clk-pin {
813f126890aSEmmanuel Vadot				pins = "PE1";
814f126890aSEmmanuel Vadot				function = "csi0";
815f126890aSEmmanuel Vadot			};
816f126890aSEmmanuel Vadot
817f126890aSEmmanuel Vadot			/omit-if-no-ref/
818f126890aSEmmanuel Vadot			csi1_8bits_pg_pins: csi1-8bits-pg-pins {
819f126890aSEmmanuel Vadot				pins = "PG0", "PG2", "PG3", "PG4", "PG5",
820f126890aSEmmanuel Vadot				       "PG6", "PG7", "PG8", "PG9", "PG10",
821f126890aSEmmanuel Vadot				       "PG11";
822f126890aSEmmanuel Vadot				function = "csi1";
823f126890aSEmmanuel Vadot			};
824f126890aSEmmanuel Vadot
825f126890aSEmmanuel Vadot			/omit-if-no-ref/
826f126890aSEmmanuel Vadot			csi1_24bits_ph_pins: csi1-24bits-ph-pins {
827f126890aSEmmanuel Vadot				pins = "PH0", "PH1", "PH2", "PH3", "PH4",
828f126890aSEmmanuel Vadot				       "PH5", "PH6", "PH7", "PH8", "PH9",
829f126890aSEmmanuel Vadot				       "PH10", "PH11", "PH12", "PH13", "PH14",
830f126890aSEmmanuel Vadot				       "PH15", "PH16", "PH17", "PH18", "PH19",
831f126890aSEmmanuel Vadot				       "PH20", "PH21", "PH22", "PH23", "PH24",
832f126890aSEmmanuel Vadot				       "PH25", "PH26", "PH27";
833f126890aSEmmanuel Vadot				function = "csi1";
834f126890aSEmmanuel Vadot			};
835f126890aSEmmanuel Vadot
836f126890aSEmmanuel Vadot			/omit-if-no-ref/
837f126890aSEmmanuel Vadot			csi1_clk_pg_pin: csi1-clk-pg-pin {
838f126890aSEmmanuel Vadot				pins = "PG1";
839f126890aSEmmanuel Vadot				function = "csi1";
840f126890aSEmmanuel Vadot			};
841f126890aSEmmanuel Vadot
842f126890aSEmmanuel Vadot			/omit-if-no-ref/
843f126890aSEmmanuel Vadot			emac_pa_pins: emac-pa-pins {
844f126890aSEmmanuel Vadot				pins = "PA0", "PA1", "PA2",
845f126890aSEmmanuel Vadot				       "PA3", "PA4", "PA5", "PA6",
846f126890aSEmmanuel Vadot				       "PA7", "PA8", "PA9", "PA10",
847f126890aSEmmanuel Vadot				       "PA11", "PA12", "PA13", "PA14",
848f126890aSEmmanuel Vadot				       "PA15", "PA16";
849f126890aSEmmanuel Vadot				function = "emac";
850f126890aSEmmanuel Vadot			};
851f126890aSEmmanuel Vadot
852f126890aSEmmanuel Vadot			/omit-if-no-ref/
853f126890aSEmmanuel Vadot			emac_ph_pins: emac-ph-pins {
854f126890aSEmmanuel Vadot				pins = "PH8", "PH9", "PH10", "PH11",
855f126890aSEmmanuel Vadot				       "PH14", "PH15", "PH16", "PH17",
856f126890aSEmmanuel Vadot				       "PH18", "PH19", "PH20", "PH21",
857f126890aSEmmanuel Vadot				       "PH22", "PH23", "PH24", "PH25",
858f126890aSEmmanuel Vadot				       "PH26";
859f126890aSEmmanuel Vadot				function = "emac";
860f126890aSEmmanuel Vadot			};
861f126890aSEmmanuel Vadot
862f126890aSEmmanuel Vadot			/omit-if-no-ref/
863f126890aSEmmanuel Vadot			gmac_mii_pins: gmac-mii-pins {
864f126890aSEmmanuel Vadot				pins = "PA0", "PA1", "PA2",
865f126890aSEmmanuel Vadot				       "PA3", "PA4", "PA5", "PA6",
866f126890aSEmmanuel Vadot				       "PA7", "PA8", "PA9", "PA10",
867f126890aSEmmanuel Vadot				       "PA11", "PA12", "PA13", "PA14",
868f126890aSEmmanuel Vadot				       "PA15", "PA16";
869f126890aSEmmanuel Vadot				function = "gmac";
870f126890aSEmmanuel Vadot			};
871f126890aSEmmanuel Vadot
872f126890aSEmmanuel Vadot			/omit-if-no-ref/
873f126890aSEmmanuel Vadot			gmac_rgmii_pins: gmac-rgmii-pins {
874f126890aSEmmanuel Vadot				pins = "PA0", "PA1", "PA2",
875f126890aSEmmanuel Vadot				       "PA3", "PA4", "PA5", "PA6",
876f126890aSEmmanuel Vadot				        "PA7", "PA8", "PA10",
877f126890aSEmmanuel Vadot				       "PA11", "PA12", "PA13",
878f126890aSEmmanuel Vadot				       "PA15", "PA16";
879f126890aSEmmanuel Vadot				function = "gmac";
880f126890aSEmmanuel Vadot				/*
881f126890aSEmmanuel Vadot				 * data lines in RGMII mode use DDR mode
882f126890aSEmmanuel Vadot				 * and need a higher signal drive strength
883f126890aSEmmanuel Vadot				 */
884f126890aSEmmanuel Vadot				drive-strength = <40>;
885f126890aSEmmanuel Vadot			};
886f126890aSEmmanuel Vadot
887f126890aSEmmanuel Vadot			/omit-if-no-ref/
888f126890aSEmmanuel Vadot			i2c0_pins: i2c0-pins {
889f126890aSEmmanuel Vadot				pins = "PB0", "PB1";
890f126890aSEmmanuel Vadot				function = "i2c0";
891f126890aSEmmanuel Vadot			};
892f126890aSEmmanuel Vadot
893f126890aSEmmanuel Vadot			/omit-if-no-ref/
894f126890aSEmmanuel Vadot			i2c1_pins: i2c1-pins {
895f126890aSEmmanuel Vadot				pins = "PB18", "PB19";
896f126890aSEmmanuel Vadot				function = "i2c1";
897f126890aSEmmanuel Vadot			};
898f126890aSEmmanuel Vadot
899f126890aSEmmanuel Vadot			/omit-if-no-ref/
900f126890aSEmmanuel Vadot			i2c2_pins: i2c2-pins {
901f126890aSEmmanuel Vadot				pins = "PB20", "PB21";
902f126890aSEmmanuel Vadot				function = "i2c2";
903f126890aSEmmanuel Vadot			};
904f126890aSEmmanuel Vadot
905f126890aSEmmanuel Vadot			/omit-if-no-ref/
906f126890aSEmmanuel Vadot			i2c3_pins: i2c3-pins {
907f126890aSEmmanuel Vadot				pins = "PI0", "PI1";
908f126890aSEmmanuel Vadot				function = "i2c3";
909f126890aSEmmanuel Vadot			};
910f126890aSEmmanuel Vadot
911f126890aSEmmanuel Vadot			/omit-if-no-ref/
912f126890aSEmmanuel Vadot			ir0_rx_pin: ir0-rx-pin {
913f126890aSEmmanuel Vadot				pins = "PB4";
914f126890aSEmmanuel Vadot				function = "ir0";
915f126890aSEmmanuel Vadot			};
916f126890aSEmmanuel Vadot
917f126890aSEmmanuel Vadot			/omit-if-no-ref/
918f126890aSEmmanuel Vadot			ir0_tx_pin: ir0-tx-pin {
919f126890aSEmmanuel Vadot				pins = "PB3";
920f126890aSEmmanuel Vadot				function = "ir0";
921f126890aSEmmanuel Vadot			};
922f126890aSEmmanuel Vadot
923f126890aSEmmanuel Vadot			/omit-if-no-ref/
924f126890aSEmmanuel Vadot			ir1_rx_pin: ir1-rx-pin {
925f126890aSEmmanuel Vadot				pins = "PB23";
926f126890aSEmmanuel Vadot				function = "ir1";
927f126890aSEmmanuel Vadot			};
928f126890aSEmmanuel Vadot
929f126890aSEmmanuel Vadot			/omit-if-no-ref/
930f126890aSEmmanuel Vadot			ir1_tx_pin: ir1-tx-pin {
931f126890aSEmmanuel Vadot				pins = "PB22";
932f126890aSEmmanuel Vadot				function = "ir1";
933f126890aSEmmanuel Vadot			};
934f126890aSEmmanuel Vadot
935f126890aSEmmanuel Vadot			/omit-if-no-ref/
936f126890aSEmmanuel Vadot			lcd_lvds0_pins: lcd-lvds0-pins {
937f126890aSEmmanuel Vadot				pins = "PD0", "PD1", "PD2", "PD3", "PD4",
938f126890aSEmmanuel Vadot				       "PD5", "PD6", "PD7", "PD8", "PD9";
939f126890aSEmmanuel Vadot				function = "lvds0";
940f126890aSEmmanuel Vadot			};
941f126890aSEmmanuel Vadot
942f126890aSEmmanuel Vadot			/omit-if-no-ref/
943f126890aSEmmanuel Vadot			lcd_lvds1_pins: lcd-lvds1-pins {
944f126890aSEmmanuel Vadot				pins = "PD10", "PD11", "PD12", "PD13", "PD14",
945f126890aSEmmanuel Vadot				       "PD15", "PD16", "PD17", "PD18", "PD19";
946f126890aSEmmanuel Vadot				function = "lvds1";
947f126890aSEmmanuel Vadot			};
948f126890aSEmmanuel Vadot
949f126890aSEmmanuel Vadot			/omit-if-no-ref/
950f126890aSEmmanuel Vadot			mmc0_pins: mmc0-pins {
951f126890aSEmmanuel Vadot				pins = "PF0", "PF1", "PF2",
952f126890aSEmmanuel Vadot				       "PF3", "PF4", "PF5";
953f126890aSEmmanuel Vadot				function = "mmc0";
954f126890aSEmmanuel Vadot				drive-strength = <30>;
955f126890aSEmmanuel Vadot				bias-pull-up;
956f126890aSEmmanuel Vadot			};
957f126890aSEmmanuel Vadot
958f126890aSEmmanuel Vadot			/omit-if-no-ref/
959f126890aSEmmanuel Vadot			mmc2_pins: mmc2-pins {
960f126890aSEmmanuel Vadot				pins = "PC6", "PC7", "PC8",
961f126890aSEmmanuel Vadot				       "PC9", "PC10", "PC11";
962f126890aSEmmanuel Vadot				function = "mmc2";
963f126890aSEmmanuel Vadot				drive-strength = <30>;
964f126890aSEmmanuel Vadot				bias-pull-up;
965f126890aSEmmanuel Vadot			};
966f126890aSEmmanuel Vadot
967f126890aSEmmanuel Vadot			/omit-if-no-ref/
968f126890aSEmmanuel Vadot			mmc3_pins: mmc3-pins {
969f126890aSEmmanuel Vadot				pins = "PI4", "PI5", "PI6",
970f126890aSEmmanuel Vadot				       "PI7", "PI8", "PI9";
971f126890aSEmmanuel Vadot				function = "mmc3";
972f126890aSEmmanuel Vadot				drive-strength = <30>;
973f126890aSEmmanuel Vadot				bias-pull-up;
974f126890aSEmmanuel Vadot			};
975f126890aSEmmanuel Vadot
976f126890aSEmmanuel Vadot			/omit-if-no-ref/
977f126890aSEmmanuel Vadot			ps2_0_pins: ps2-0-pins {
978f126890aSEmmanuel Vadot				pins = "PI20", "PI21";
979f126890aSEmmanuel Vadot				function = "ps2";
980f126890aSEmmanuel Vadot			};
981f126890aSEmmanuel Vadot
982f126890aSEmmanuel Vadot			/omit-if-no-ref/
983f126890aSEmmanuel Vadot			ps2_1_ph_pins: ps2-1-ph-pins {
984f126890aSEmmanuel Vadot				pins = "PH12", "PH13";
985f126890aSEmmanuel Vadot				function = "ps2";
986f126890aSEmmanuel Vadot			};
987f126890aSEmmanuel Vadot
988f126890aSEmmanuel Vadot			/omit-if-no-ref/
989f126890aSEmmanuel Vadot			pwm0_pin: pwm0-pin {
990f126890aSEmmanuel Vadot				pins = "PB2";
991f126890aSEmmanuel Vadot				function = "pwm";
992f126890aSEmmanuel Vadot			};
993f126890aSEmmanuel Vadot
994f126890aSEmmanuel Vadot			/omit-if-no-ref/
995f126890aSEmmanuel Vadot			pwm1_pin: pwm1-pin {
996f126890aSEmmanuel Vadot				pins = "PI3";
997f126890aSEmmanuel Vadot				function = "pwm";
998f126890aSEmmanuel Vadot			};
999f126890aSEmmanuel Vadot
1000f126890aSEmmanuel Vadot			/omit-if-no-ref/
1001f126890aSEmmanuel Vadot			spdif_tx_pin: spdif-tx-pin {
1002f126890aSEmmanuel Vadot				pins = "PB13";
1003f126890aSEmmanuel Vadot				function = "spdif";
1004f126890aSEmmanuel Vadot				bias-pull-up;
1005f126890aSEmmanuel Vadot			};
1006f126890aSEmmanuel Vadot
1007f126890aSEmmanuel Vadot			/omit-if-no-ref/
1008f126890aSEmmanuel Vadot			spi0_pi_pins: spi0-pi-pins {
1009f126890aSEmmanuel Vadot				pins = "PI11", "PI12", "PI13";
1010f126890aSEmmanuel Vadot				function = "spi0";
1011f126890aSEmmanuel Vadot			};
1012f126890aSEmmanuel Vadot
1013f126890aSEmmanuel Vadot			/omit-if-no-ref/
1014f126890aSEmmanuel Vadot			spi0_cs0_pi_pin: spi0-cs0-pi-pin {
1015f126890aSEmmanuel Vadot				pins = "PI10";
1016f126890aSEmmanuel Vadot				function = "spi0";
1017f126890aSEmmanuel Vadot			};
1018f126890aSEmmanuel Vadot
1019f126890aSEmmanuel Vadot			/omit-if-no-ref/
1020f126890aSEmmanuel Vadot			spi0_cs1_pi_pin: spi0-cs1-pi-pin {
1021f126890aSEmmanuel Vadot				pins = "PI14";
1022f126890aSEmmanuel Vadot				function = "spi0";
1023f126890aSEmmanuel Vadot			};
1024f126890aSEmmanuel Vadot
1025f126890aSEmmanuel Vadot			/omit-if-no-ref/
1026f126890aSEmmanuel Vadot			spi1_pi_pins: spi1-pi-pins {
1027f126890aSEmmanuel Vadot				pins = "PI17", "PI18", "PI19";
1028f126890aSEmmanuel Vadot				function = "spi1";
1029f126890aSEmmanuel Vadot			};
1030f126890aSEmmanuel Vadot
1031f126890aSEmmanuel Vadot			/omit-if-no-ref/
1032f126890aSEmmanuel Vadot			spi1_cs0_pi_pin: spi1-cs0-pi-pin {
1033f126890aSEmmanuel Vadot				pins = "PI16";
1034f126890aSEmmanuel Vadot				function = "spi1";
1035f126890aSEmmanuel Vadot			};
1036f126890aSEmmanuel Vadot
1037f126890aSEmmanuel Vadot			/omit-if-no-ref/
1038f126890aSEmmanuel Vadot			spi2_pb_pins: spi2-pb-pins {
1039f126890aSEmmanuel Vadot				pins = "PB15", "PB16", "PB17";
1040f126890aSEmmanuel Vadot				function = "spi2";
1041f126890aSEmmanuel Vadot			};
1042f126890aSEmmanuel Vadot
1043f126890aSEmmanuel Vadot			/omit-if-no-ref/
1044f126890aSEmmanuel Vadot			spi2_cs0_pb_pin: spi2-cs0-pb-pin {
1045f126890aSEmmanuel Vadot				pins = "PB14";
1046f126890aSEmmanuel Vadot				function = "spi2";
1047f126890aSEmmanuel Vadot			};
1048f126890aSEmmanuel Vadot
1049f126890aSEmmanuel Vadot			/omit-if-no-ref/
1050f126890aSEmmanuel Vadot			spi2_pc_pins: spi2-pc-pins {
1051f126890aSEmmanuel Vadot				pins = "PC20", "PC21", "PC22";
1052f126890aSEmmanuel Vadot				function = "spi2";
1053f126890aSEmmanuel Vadot			};
1054f126890aSEmmanuel Vadot
1055f126890aSEmmanuel Vadot			/omit-if-no-ref/
1056f126890aSEmmanuel Vadot			spi2_cs0_pc_pin: spi2-cs0-pc-pin {
1057f126890aSEmmanuel Vadot				pins = "PC19";
1058f126890aSEmmanuel Vadot				function = "spi2";
1059f126890aSEmmanuel Vadot			};
1060f126890aSEmmanuel Vadot
1061f126890aSEmmanuel Vadot			/omit-if-no-ref/
1062f126890aSEmmanuel Vadot			uart0_pb_pins: uart0-pb-pins {
1063f126890aSEmmanuel Vadot				pins = "PB22", "PB23";
1064f126890aSEmmanuel Vadot				function = "uart0";
1065f126890aSEmmanuel Vadot			};
1066f126890aSEmmanuel Vadot
1067f126890aSEmmanuel Vadot			/omit-if-no-ref/
1068f126890aSEmmanuel Vadot			uart0_pf_pins: uart0-pf-pins {
1069f126890aSEmmanuel Vadot				pins = "PF2", "PF4";
1070f126890aSEmmanuel Vadot				function = "uart0";
1071f126890aSEmmanuel Vadot			};
1072f126890aSEmmanuel Vadot
1073f126890aSEmmanuel Vadot			/omit-if-no-ref/
1074f126890aSEmmanuel Vadot			uart1_pa_pins: uart1-pa-pins {
1075f126890aSEmmanuel Vadot				pins = "PA10", "PA11";
1076f126890aSEmmanuel Vadot				function = "uart1";
1077f126890aSEmmanuel Vadot			};
1078f126890aSEmmanuel Vadot
1079f126890aSEmmanuel Vadot			/omit-if-no-ref/
1080f126890aSEmmanuel Vadot			uart1_cts_rts_pa_pins: uart1-cts-rts-pa-pins {
1081f126890aSEmmanuel Vadot				pins = "PA12", "PA13";
1082f126890aSEmmanuel Vadot				function = "uart1";
1083f126890aSEmmanuel Vadot			};
1084f126890aSEmmanuel Vadot
1085f126890aSEmmanuel Vadot			/omit-if-no-ref/
1086f126890aSEmmanuel Vadot			uart2_pa_pins: uart2-pa-pins {
1087f126890aSEmmanuel Vadot				pins = "PA2", "PA3";
1088f126890aSEmmanuel Vadot				function = "uart2";
1089f126890aSEmmanuel Vadot			};
1090f126890aSEmmanuel Vadot
1091f126890aSEmmanuel Vadot			/omit-if-no-ref/
1092f126890aSEmmanuel Vadot			uart2_cts_rts_pa_pins: uart2-cts-rts-pa-pins {
1093f126890aSEmmanuel Vadot				pins = "PA0", "PA1";
1094f126890aSEmmanuel Vadot				function = "uart2";
1095f126890aSEmmanuel Vadot			};
1096f126890aSEmmanuel Vadot
1097f126890aSEmmanuel Vadot			/omit-if-no-ref/
1098f126890aSEmmanuel Vadot			uart2_pi_pins: uart2-pi-pins {
1099f126890aSEmmanuel Vadot				pins = "PI18", "PI19";
1100f126890aSEmmanuel Vadot				function = "uart2";
1101f126890aSEmmanuel Vadot			};
1102f126890aSEmmanuel Vadot
1103f126890aSEmmanuel Vadot			/omit-if-no-ref/
1104f126890aSEmmanuel Vadot			uart2_cts_rts_pi_pins: uart2-cts-rts-pi-pins {
1105f126890aSEmmanuel Vadot				pins = "PI16", "PI17";
1106f126890aSEmmanuel Vadot				function = "uart2";
1107f126890aSEmmanuel Vadot			};
1108f126890aSEmmanuel Vadot
1109f126890aSEmmanuel Vadot			/omit-if-no-ref/
1110f126890aSEmmanuel Vadot			uart3_pg_pins: uart3-pg-pins {
1111f126890aSEmmanuel Vadot				pins = "PG6", "PG7";
1112f126890aSEmmanuel Vadot				function = "uart3";
1113f126890aSEmmanuel Vadot			};
1114f126890aSEmmanuel Vadot
1115f126890aSEmmanuel Vadot			/omit-if-no-ref/
1116f126890aSEmmanuel Vadot			uart3_cts_rts_pg_pins: uart3-cts-rts-pg-pins {
1117f126890aSEmmanuel Vadot				pins = "PG8", "PG9";
1118f126890aSEmmanuel Vadot				function = "uart3";
1119f126890aSEmmanuel Vadot			};
1120f126890aSEmmanuel Vadot
1121f126890aSEmmanuel Vadot			/omit-if-no-ref/
1122f126890aSEmmanuel Vadot			uart3_ph_pins: uart3-ph-pins {
1123f126890aSEmmanuel Vadot				pins = "PH0", "PH1";
1124f126890aSEmmanuel Vadot				function = "uart3";
1125f126890aSEmmanuel Vadot			};
1126f126890aSEmmanuel Vadot
1127f126890aSEmmanuel Vadot			/omit-if-no-ref/
1128f126890aSEmmanuel Vadot			uart3_cts_rts_ph_pins: uart3-cts-rts-ph-pins {
1129f126890aSEmmanuel Vadot				pins = "PH2", "PH3";
1130f126890aSEmmanuel Vadot				function = "uart3";
1131f126890aSEmmanuel Vadot			};
1132f126890aSEmmanuel Vadot
1133f126890aSEmmanuel Vadot			/omit-if-no-ref/
1134f126890aSEmmanuel Vadot			uart4_pg_pins: uart4-pg-pins {
1135f126890aSEmmanuel Vadot				pins = "PG10", "PG11";
1136f126890aSEmmanuel Vadot				function = "uart4";
1137f126890aSEmmanuel Vadot			};
1138f126890aSEmmanuel Vadot
1139f126890aSEmmanuel Vadot			/omit-if-no-ref/
1140f126890aSEmmanuel Vadot			uart4_ph_pins: uart4-ph-pins {
1141f126890aSEmmanuel Vadot				pins = "PH4", "PH5";
1142f126890aSEmmanuel Vadot				function = "uart4";
1143f126890aSEmmanuel Vadot			};
1144f126890aSEmmanuel Vadot
1145f126890aSEmmanuel Vadot			/omit-if-no-ref/
1146f126890aSEmmanuel Vadot			uart5_ph_pins: uart5-ph-pins {
1147f126890aSEmmanuel Vadot				pins = "PH6", "PH7";
1148f126890aSEmmanuel Vadot				function = "uart5";
1149f126890aSEmmanuel Vadot			};
1150f126890aSEmmanuel Vadot
1151f126890aSEmmanuel Vadot			/omit-if-no-ref/
1152f126890aSEmmanuel Vadot			uart5_pi_pins: uart5-pi-pins {
1153f126890aSEmmanuel Vadot				pins = "PI10", "PI11";
1154f126890aSEmmanuel Vadot				function = "uart5";
1155f126890aSEmmanuel Vadot			};
1156f126890aSEmmanuel Vadot
1157f126890aSEmmanuel Vadot			/omit-if-no-ref/
1158f126890aSEmmanuel Vadot			uart6_pa_pins: uart6-pa-pins {
1159f126890aSEmmanuel Vadot				pins = "PA12", "PA13";
1160f126890aSEmmanuel Vadot				function = "uart6";
1161f126890aSEmmanuel Vadot			};
1162f126890aSEmmanuel Vadot
1163f126890aSEmmanuel Vadot			/omit-if-no-ref/
1164f126890aSEmmanuel Vadot			uart6_pi_pins: uart6-pi-pins {
1165f126890aSEmmanuel Vadot				pins = "PI12", "PI13";
1166f126890aSEmmanuel Vadot				function = "uart6";
1167f126890aSEmmanuel Vadot			};
1168f126890aSEmmanuel Vadot
1169f126890aSEmmanuel Vadot			/omit-if-no-ref/
1170f126890aSEmmanuel Vadot			uart7_pa_pins: uart7-pa-pins {
1171f126890aSEmmanuel Vadot				pins = "PA14", "PA15";
1172f126890aSEmmanuel Vadot				function = "uart7";
1173f126890aSEmmanuel Vadot			};
1174f126890aSEmmanuel Vadot
1175f126890aSEmmanuel Vadot			/omit-if-no-ref/
1176f126890aSEmmanuel Vadot			uart7_pi_pins: uart7-pi-pins {
1177f126890aSEmmanuel Vadot				pins = "PI20", "PI21";
1178f126890aSEmmanuel Vadot				function = "uart7";
1179f126890aSEmmanuel Vadot			};
1180f126890aSEmmanuel Vadot		};
1181f126890aSEmmanuel Vadot
1182f126890aSEmmanuel Vadot		timer@1c20c00 {
1183f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-timer";
1184f126890aSEmmanuel Vadot			reg = <0x01c20c00 0x90>;
1185f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>,
1186f126890aSEmmanuel Vadot				     <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>,
1187f126890aSEmmanuel Vadot				     <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>,
1188f126890aSEmmanuel Vadot				     <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>,
1189f126890aSEmmanuel Vadot				     <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>,
1190f126890aSEmmanuel Vadot				     <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
1191f126890aSEmmanuel Vadot			clocks = <&osc24M>;
1192f126890aSEmmanuel Vadot		};
1193f126890aSEmmanuel Vadot
1194f126890aSEmmanuel Vadot		wdt: watchdog@1c20c90 {
1195f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-wdt";
1196f126890aSEmmanuel Vadot			reg = <0x01c20c90 0x10>;
1197f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
1198f126890aSEmmanuel Vadot			clocks = <&osc24M>;
1199f126890aSEmmanuel Vadot		};
1200f126890aSEmmanuel Vadot
1201f126890aSEmmanuel Vadot		rtc: rtc@1c20d00 {
1202f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-rtc";
1203f126890aSEmmanuel Vadot			reg = <0x01c20d00 0x20>;
1204f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
1205f126890aSEmmanuel Vadot		};
1206f126890aSEmmanuel Vadot
1207f126890aSEmmanuel Vadot		pwm: pwm@1c20e00 {
1208f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-pwm";
1209f126890aSEmmanuel Vadot			reg = <0x01c20e00 0xc>;
1210f126890aSEmmanuel Vadot			clocks = <&osc24M>;
1211f126890aSEmmanuel Vadot			#pwm-cells = <3>;
1212f126890aSEmmanuel Vadot			status = "disabled";
1213f126890aSEmmanuel Vadot		};
1214f126890aSEmmanuel Vadot
1215f126890aSEmmanuel Vadot		spdif: spdif@1c21000 {
1216f126890aSEmmanuel Vadot			#sound-dai-cells = <0>;
1217f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-spdif";
1218f126890aSEmmanuel Vadot			reg = <0x01c21000 0x400>;
1219f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
1220f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB0_SPDIF>, <&ccu CLK_SPDIF>;
1221f126890aSEmmanuel Vadot			clock-names = "apb", "spdif";
1222f126890aSEmmanuel Vadot			dmas = <&dma SUN4I_DMA_NORMAL 2>,
1223f126890aSEmmanuel Vadot			       <&dma SUN4I_DMA_NORMAL 2>;
1224f126890aSEmmanuel Vadot			dma-names = "rx", "tx";
1225f126890aSEmmanuel Vadot			status = "disabled";
1226f126890aSEmmanuel Vadot		};
1227f126890aSEmmanuel Vadot
1228f126890aSEmmanuel Vadot		ir0: ir@1c21800 {
1229f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-ir";
1230f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB0_IR0>, <&ccu CLK_IR0>;
1231f126890aSEmmanuel Vadot			clock-names = "apb", "ir";
1232f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
1233f126890aSEmmanuel Vadot			reg = <0x01c21800 0x40>;
1234f126890aSEmmanuel Vadot			status = "disabled";
1235f126890aSEmmanuel Vadot		};
1236f126890aSEmmanuel Vadot
1237f126890aSEmmanuel Vadot		ir1: ir@1c21c00 {
1238f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-ir";
1239f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB0_IR1>, <&ccu CLK_IR1>;
1240f126890aSEmmanuel Vadot			clock-names = "apb", "ir";
1241f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
1242f126890aSEmmanuel Vadot			reg = <0x01c21c00 0x40>;
1243f126890aSEmmanuel Vadot			status = "disabled";
1244f126890aSEmmanuel Vadot		};
1245f126890aSEmmanuel Vadot
1246f126890aSEmmanuel Vadot		i2s1: i2s@1c22000 {
1247f126890aSEmmanuel Vadot			#sound-dai-cells = <0>;
1248f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-i2s";
1249f126890aSEmmanuel Vadot			reg = <0x01c22000 0x400>;
1250f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
1251f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB0_I2S1>, <&ccu CLK_I2S1>;
1252f126890aSEmmanuel Vadot			clock-names = "apb", "mod";
1253f126890aSEmmanuel Vadot			dmas = <&dma SUN4I_DMA_NORMAL 4>,
1254f126890aSEmmanuel Vadot			       <&dma SUN4I_DMA_NORMAL 4>;
1255f126890aSEmmanuel Vadot			dma-names = "rx", "tx";
1256f126890aSEmmanuel Vadot			status = "disabled";
1257f126890aSEmmanuel Vadot		};
1258f126890aSEmmanuel Vadot
1259f126890aSEmmanuel Vadot		i2s0: i2s@1c22400 {
1260f126890aSEmmanuel Vadot			#sound-dai-cells = <0>;
1261f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-i2s";
1262f126890aSEmmanuel Vadot			reg = <0x01c22400 0x400>;
1263f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
1264f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB0_I2S0>, <&ccu CLK_I2S0>;
1265f126890aSEmmanuel Vadot			clock-names = "apb", "mod";
1266f126890aSEmmanuel Vadot			dmas = <&dma SUN4I_DMA_NORMAL 3>,
1267f126890aSEmmanuel Vadot			       <&dma SUN4I_DMA_NORMAL 3>;
1268f126890aSEmmanuel Vadot			dma-names = "rx", "tx";
1269f126890aSEmmanuel Vadot			status = "disabled";
1270f126890aSEmmanuel Vadot		};
1271f126890aSEmmanuel Vadot
1272f126890aSEmmanuel Vadot		lradc: lradc@1c22800 {
1273f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-lradc-keys";
1274f126890aSEmmanuel Vadot			reg = <0x01c22800 0x100>;
1275f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
1276f126890aSEmmanuel Vadot			status = "disabled";
1277f126890aSEmmanuel Vadot		};
1278f126890aSEmmanuel Vadot
1279f126890aSEmmanuel Vadot		codec: codec@1c22c00 {
1280f126890aSEmmanuel Vadot			#sound-dai-cells = <0>;
1281f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-codec";
1282f126890aSEmmanuel Vadot			reg = <0x01c22c00 0x40>;
1283f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
1284f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB0_CODEC>, <&ccu CLK_CODEC>;
1285f126890aSEmmanuel Vadot			clock-names = "apb", "codec";
1286f126890aSEmmanuel Vadot			dmas = <&dma SUN4I_DMA_NORMAL 19>,
1287f126890aSEmmanuel Vadot			       <&dma SUN4I_DMA_NORMAL 19>;
1288f126890aSEmmanuel Vadot			dma-names = "rx", "tx";
1289f126890aSEmmanuel Vadot			status = "disabled";
1290f126890aSEmmanuel Vadot		};
1291f126890aSEmmanuel Vadot
1292f126890aSEmmanuel Vadot		sid: eeprom@1c23800 {
1293f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-sid";
1294f126890aSEmmanuel Vadot			reg = <0x01c23800 0x200>;
1295f126890aSEmmanuel Vadot		};
1296f126890aSEmmanuel Vadot
1297f126890aSEmmanuel Vadot		i2s2: i2s@1c24400 {
1298f126890aSEmmanuel Vadot			#sound-dai-cells = <0>;
1299f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-i2s";
1300f126890aSEmmanuel Vadot			reg = <0x01c24400 0x400>;
1301f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
1302f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB0_I2S2>, <&ccu CLK_I2S2>;
1303f126890aSEmmanuel Vadot			clock-names = "apb", "mod";
1304f126890aSEmmanuel Vadot			dmas = <&dma SUN4I_DMA_NORMAL 6>,
1305f126890aSEmmanuel Vadot			       <&dma SUN4I_DMA_NORMAL 6>;
1306f126890aSEmmanuel Vadot			dma-names = "rx", "tx";
1307f126890aSEmmanuel Vadot			status = "disabled";
1308f126890aSEmmanuel Vadot		};
1309f126890aSEmmanuel Vadot
1310f126890aSEmmanuel Vadot		rtp: rtp@1c25000 {
1311f126890aSEmmanuel Vadot			compatible = "allwinner,sun5i-a13-ts";
1312f126890aSEmmanuel Vadot			reg = <0x01c25000 0x100>;
1313f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
1314f126890aSEmmanuel Vadot			#thermal-sensor-cells = <0>;
1315f126890aSEmmanuel Vadot		};
1316f126890aSEmmanuel Vadot
1317f126890aSEmmanuel Vadot		uart0: serial@1c28000 {
1318f126890aSEmmanuel Vadot			compatible = "snps,dw-apb-uart";
1319f126890aSEmmanuel Vadot			reg = <0x01c28000 0x400>;
1320f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
1321f126890aSEmmanuel Vadot			reg-shift = <2>;
1322f126890aSEmmanuel Vadot			reg-io-width = <4>;
1323f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB1_UART0>;
1324f126890aSEmmanuel Vadot			status = "disabled";
1325f126890aSEmmanuel Vadot		};
1326f126890aSEmmanuel Vadot
1327f126890aSEmmanuel Vadot		uart1: serial@1c28400 {
1328f126890aSEmmanuel Vadot			compatible = "snps,dw-apb-uart";
1329f126890aSEmmanuel Vadot			reg = <0x01c28400 0x400>;
1330f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
1331f126890aSEmmanuel Vadot			reg-shift = <2>;
1332f126890aSEmmanuel Vadot			reg-io-width = <4>;
1333f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB1_UART1>;
1334f126890aSEmmanuel Vadot			status = "disabled";
1335f126890aSEmmanuel Vadot		};
1336f126890aSEmmanuel Vadot
1337f126890aSEmmanuel Vadot		uart2: serial@1c28800 {
1338f126890aSEmmanuel Vadot			compatible = "snps,dw-apb-uart";
1339f126890aSEmmanuel Vadot			reg = <0x01c28800 0x400>;
1340f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
1341f126890aSEmmanuel Vadot			reg-shift = <2>;
1342f126890aSEmmanuel Vadot			reg-io-width = <4>;
1343f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB1_UART2>;
1344f126890aSEmmanuel Vadot			status = "disabled";
1345f126890aSEmmanuel Vadot		};
1346f126890aSEmmanuel Vadot
1347f126890aSEmmanuel Vadot		uart3: serial@1c28c00 {
1348f126890aSEmmanuel Vadot			compatible = "snps,dw-apb-uart";
1349f126890aSEmmanuel Vadot			reg = <0x01c28c00 0x400>;
1350f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
1351f126890aSEmmanuel Vadot			reg-shift = <2>;
1352f126890aSEmmanuel Vadot			reg-io-width = <4>;
1353f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB1_UART3>;
1354f126890aSEmmanuel Vadot			status = "disabled";
1355f126890aSEmmanuel Vadot		};
1356f126890aSEmmanuel Vadot
1357f126890aSEmmanuel Vadot		uart4: serial@1c29000 {
1358f126890aSEmmanuel Vadot			compatible = "snps,dw-apb-uart";
1359f126890aSEmmanuel Vadot			reg = <0x01c29000 0x400>;
1360f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
1361f126890aSEmmanuel Vadot			reg-shift = <2>;
1362f126890aSEmmanuel Vadot			reg-io-width = <4>;
1363f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB1_UART4>;
1364f126890aSEmmanuel Vadot			status = "disabled";
1365f126890aSEmmanuel Vadot		};
1366f126890aSEmmanuel Vadot
1367f126890aSEmmanuel Vadot		uart5: serial@1c29400 {
1368f126890aSEmmanuel Vadot			compatible = "snps,dw-apb-uart";
1369f126890aSEmmanuel Vadot			reg = <0x01c29400 0x400>;
1370f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>;
1371f126890aSEmmanuel Vadot			reg-shift = <2>;
1372f126890aSEmmanuel Vadot			reg-io-width = <4>;
1373f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB1_UART5>;
1374f126890aSEmmanuel Vadot			status = "disabled";
1375f126890aSEmmanuel Vadot		};
1376f126890aSEmmanuel Vadot
1377f126890aSEmmanuel Vadot		uart6: serial@1c29800 {
1378f126890aSEmmanuel Vadot			compatible = "snps,dw-apb-uart";
1379f126890aSEmmanuel Vadot			reg = <0x01c29800 0x400>;
1380f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
1381f126890aSEmmanuel Vadot			reg-shift = <2>;
1382f126890aSEmmanuel Vadot			reg-io-width = <4>;
1383f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB1_UART6>;
1384f126890aSEmmanuel Vadot			status = "disabled";
1385f126890aSEmmanuel Vadot		};
1386f126890aSEmmanuel Vadot
1387f126890aSEmmanuel Vadot		uart7: serial@1c29c00 {
1388f126890aSEmmanuel Vadot			compatible = "snps,dw-apb-uart";
1389f126890aSEmmanuel Vadot			reg = <0x01c29c00 0x400>;
1390f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
1391f126890aSEmmanuel Vadot			reg-shift = <2>;
1392f126890aSEmmanuel Vadot			reg-io-width = <4>;
1393f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB1_UART7>;
1394f126890aSEmmanuel Vadot			status = "disabled";
1395f126890aSEmmanuel Vadot		};
1396f126890aSEmmanuel Vadot
1397f126890aSEmmanuel Vadot		ps20: ps2@1c2a000 {
1398f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-ps2";
1399f126890aSEmmanuel Vadot			reg = <0x01c2a000 0x400>;
1400f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
1401f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB1_PS20>;
1402f126890aSEmmanuel Vadot			status = "disabled";
1403f126890aSEmmanuel Vadot		};
1404f126890aSEmmanuel Vadot
1405f126890aSEmmanuel Vadot		ps21: ps2@1c2a400 {
1406f126890aSEmmanuel Vadot			compatible = "allwinner,sun4i-a10-ps2";
1407f126890aSEmmanuel Vadot			reg = <0x01c2a400 0x400>;
1408f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
1409f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB1_PS21>;
1410f126890aSEmmanuel Vadot			status = "disabled";
1411f126890aSEmmanuel Vadot		};
1412f126890aSEmmanuel Vadot
1413f126890aSEmmanuel Vadot		i2c0: i2c@1c2ac00 {
1414f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-i2c",
1415f126890aSEmmanuel Vadot				     "allwinner,sun4i-a10-i2c";
1416f126890aSEmmanuel Vadot			reg = <0x01c2ac00 0x400>;
1417f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
1418f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB1_I2C0>;
1419f126890aSEmmanuel Vadot			pinctrl-names = "default";
1420f126890aSEmmanuel Vadot			pinctrl-0 = <&i2c0_pins>;
1421f126890aSEmmanuel Vadot			status = "disabled";
1422f126890aSEmmanuel Vadot			#address-cells = <1>;
1423f126890aSEmmanuel Vadot			#size-cells = <0>;
1424f126890aSEmmanuel Vadot		};
1425f126890aSEmmanuel Vadot
1426f126890aSEmmanuel Vadot		i2c1: i2c@1c2b000 {
1427f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-i2c",
1428f126890aSEmmanuel Vadot				     "allwinner,sun4i-a10-i2c";
1429f126890aSEmmanuel Vadot			reg = <0x01c2b000 0x400>;
1430f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
1431f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB1_I2C1>;
1432f126890aSEmmanuel Vadot			pinctrl-names = "default";
1433f126890aSEmmanuel Vadot			pinctrl-0 = <&i2c1_pins>;
1434f126890aSEmmanuel Vadot			status = "disabled";
1435f126890aSEmmanuel Vadot			#address-cells = <1>;
1436f126890aSEmmanuel Vadot			#size-cells = <0>;
1437f126890aSEmmanuel Vadot		};
1438f126890aSEmmanuel Vadot
1439f126890aSEmmanuel Vadot		i2c2: i2c@1c2b400 {
1440f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-i2c",
1441f126890aSEmmanuel Vadot				     "allwinner,sun4i-a10-i2c";
1442f126890aSEmmanuel Vadot			reg = <0x01c2b400 0x400>;
1443f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
1444f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB1_I2C2>;
1445f126890aSEmmanuel Vadot			pinctrl-names = "default";
1446f126890aSEmmanuel Vadot			pinctrl-0 = <&i2c2_pins>;
1447f126890aSEmmanuel Vadot			status = "disabled";
1448f126890aSEmmanuel Vadot			#address-cells = <1>;
1449f126890aSEmmanuel Vadot			#size-cells = <0>;
1450f126890aSEmmanuel Vadot		};
1451f126890aSEmmanuel Vadot
1452f126890aSEmmanuel Vadot		i2c3: i2c@1c2b800 {
1453f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-i2c",
1454f126890aSEmmanuel Vadot				     "allwinner,sun4i-a10-i2c";
1455f126890aSEmmanuel Vadot			reg = <0x01c2b800 0x400>;
1456f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>;
1457f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB1_I2C3>;
1458f126890aSEmmanuel Vadot			pinctrl-names = "default";
1459f126890aSEmmanuel Vadot			pinctrl-0 = <&i2c3_pins>;
1460f126890aSEmmanuel Vadot			status = "disabled";
1461f126890aSEmmanuel Vadot			#address-cells = <1>;
1462f126890aSEmmanuel Vadot			#size-cells = <0>;
1463f126890aSEmmanuel Vadot		};
1464f126890aSEmmanuel Vadot
1465f126890aSEmmanuel Vadot		can0: can@1c2bc00 {
1466f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-can",
1467f126890aSEmmanuel Vadot				     "allwinner,sun4i-a10-can";
1468f126890aSEmmanuel Vadot			reg = <0x01c2bc00 0x400>;
1469f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
1470f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB1_CAN>;
1471f126890aSEmmanuel Vadot			status = "disabled";
1472f126890aSEmmanuel Vadot		};
1473f126890aSEmmanuel Vadot
1474f126890aSEmmanuel Vadot		i2c4: i2c@1c2c000 {
1475f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-i2c",
1476f126890aSEmmanuel Vadot				     "allwinner,sun4i-a10-i2c";
1477f126890aSEmmanuel Vadot			reg = <0x01c2c000 0x400>;
1478f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
1479f126890aSEmmanuel Vadot			clocks = <&ccu CLK_APB1_I2C4>;
1480f126890aSEmmanuel Vadot			status = "disabled";
1481f126890aSEmmanuel Vadot			#address-cells = <1>;
1482f126890aSEmmanuel Vadot			#size-cells = <0>;
1483f126890aSEmmanuel Vadot		};
1484f126890aSEmmanuel Vadot
1485f126890aSEmmanuel Vadot		mali: gpu@1c40000 {
1486f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-mali", "arm,mali-400";
1487f126890aSEmmanuel Vadot			reg = <0x01c40000 0x10000>;
1488f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>,
1489f126890aSEmmanuel Vadot				     <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>,
1490f126890aSEmmanuel Vadot				     <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>,
1491f126890aSEmmanuel Vadot				     <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>,
1492f126890aSEmmanuel Vadot				     <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>,
1493f126890aSEmmanuel Vadot				     <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>,
1494f126890aSEmmanuel Vadot				     <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
1495f126890aSEmmanuel Vadot			interrupt-names = "gp",
1496f126890aSEmmanuel Vadot					  "gpmmu",
1497f126890aSEmmanuel Vadot					  "pp0",
1498f126890aSEmmanuel Vadot					  "ppmmu0",
1499f126890aSEmmanuel Vadot					  "pp1",
1500f126890aSEmmanuel Vadot					  "ppmmu1",
1501f126890aSEmmanuel Vadot					  "pmu";
1502f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_GPU>, <&ccu CLK_GPU>;
1503f126890aSEmmanuel Vadot			clock-names = "bus", "core";
1504f126890aSEmmanuel Vadot			resets = <&ccu RST_GPU>;
1505f126890aSEmmanuel Vadot
1506f126890aSEmmanuel Vadot			assigned-clocks = <&ccu CLK_GPU>;
1507f126890aSEmmanuel Vadot			assigned-clock-rates = <384000000>;
1508f126890aSEmmanuel Vadot		};
1509f126890aSEmmanuel Vadot
1510f126890aSEmmanuel Vadot		gmac: ethernet@1c50000 {
1511f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-gmac";
1512f126890aSEmmanuel Vadot			reg = <0x01c50000 0x10000>;
1513f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
1514f126890aSEmmanuel Vadot			interrupt-names = "macirq";
1515f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_GMAC>, <&gmac_tx_clk>;
1516f126890aSEmmanuel Vadot			clock-names = "stmmaceth", "allwinner_gmac_tx";
1517f126890aSEmmanuel Vadot			snps,pbl = <2>;
1518f126890aSEmmanuel Vadot			snps,fixed-burst;
1519f126890aSEmmanuel Vadot			snps,force_sf_dma_mode;
1520f126890aSEmmanuel Vadot			status = "disabled";
1521f126890aSEmmanuel Vadot
1522f126890aSEmmanuel Vadot			gmac_mdio: mdio {
1523f126890aSEmmanuel Vadot				compatible = "snps,dwmac-mdio";
1524f126890aSEmmanuel Vadot				#address-cells = <1>;
1525f126890aSEmmanuel Vadot				#size-cells = <0>;
1526f126890aSEmmanuel Vadot			};
1527f126890aSEmmanuel Vadot		};
1528f126890aSEmmanuel Vadot
1529f126890aSEmmanuel Vadot		hstimer@1c60000 {
1530f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-hstimer";
1531f126890aSEmmanuel Vadot			reg = <0x01c60000 0x1000>;
1532f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>,
1533f126890aSEmmanuel Vadot				     <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>,
1534f126890aSEmmanuel Vadot				     <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>,
1535f126890aSEmmanuel Vadot				     <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
1536f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_HSTIMER>;
1537f126890aSEmmanuel Vadot		};
1538f126890aSEmmanuel Vadot
1539f126890aSEmmanuel Vadot		gic: interrupt-controller@1c81000 {
1540f126890aSEmmanuel Vadot			compatible = "arm,gic-400";
1541f126890aSEmmanuel Vadot			reg = <0x01c81000 0x1000>,
1542f126890aSEmmanuel Vadot			      <0x01c82000 0x2000>,
1543f126890aSEmmanuel Vadot			      <0x01c84000 0x2000>,
1544f126890aSEmmanuel Vadot			      <0x01c86000 0x2000>;
1545f126890aSEmmanuel Vadot			interrupt-controller;
1546f126890aSEmmanuel Vadot			#interrupt-cells = <3>;
1547f126890aSEmmanuel Vadot			interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
1548f126890aSEmmanuel Vadot		};
1549f126890aSEmmanuel Vadot
1550f126890aSEmmanuel Vadot		fe0: display-frontend@1e00000 {
1551f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-display-frontend";
1552f126890aSEmmanuel Vadot			reg = <0x01e00000 0x20000>;
1553f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
1554f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_DE_FE0>, <&ccu CLK_DE_FE0>,
1555f126890aSEmmanuel Vadot				 <&ccu CLK_DRAM_DE_FE0>;
1556f126890aSEmmanuel Vadot			clock-names = "ahb", "mod",
1557f126890aSEmmanuel Vadot				      "ram";
1558f126890aSEmmanuel Vadot			resets = <&ccu RST_DE_FE0>;
1559f126890aSEmmanuel Vadot
1560f126890aSEmmanuel Vadot			ports {
1561f126890aSEmmanuel Vadot				#address-cells = <1>;
1562f126890aSEmmanuel Vadot				#size-cells = <0>;
1563f126890aSEmmanuel Vadot
1564f126890aSEmmanuel Vadot				fe0_out: port@1 {
1565f126890aSEmmanuel Vadot					#address-cells = <1>;
1566f126890aSEmmanuel Vadot					#size-cells = <0>;
1567f126890aSEmmanuel Vadot					reg = <1>;
1568f126890aSEmmanuel Vadot
1569f126890aSEmmanuel Vadot					fe0_out_be0: endpoint@0 {
1570f126890aSEmmanuel Vadot						reg = <0>;
1571f126890aSEmmanuel Vadot						remote-endpoint = <&be0_in_fe0>;
1572f126890aSEmmanuel Vadot					};
1573f126890aSEmmanuel Vadot
1574f126890aSEmmanuel Vadot					fe0_out_be1: endpoint@1 {
1575f126890aSEmmanuel Vadot						reg = <1>;
1576f126890aSEmmanuel Vadot						remote-endpoint = <&be1_in_fe0>;
1577f126890aSEmmanuel Vadot					};
1578f126890aSEmmanuel Vadot				};
1579f126890aSEmmanuel Vadot			};
1580f126890aSEmmanuel Vadot		};
1581f126890aSEmmanuel Vadot
1582f126890aSEmmanuel Vadot		fe1: display-frontend@1e20000 {
1583f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-display-frontend";
1584f126890aSEmmanuel Vadot			reg = <0x01e20000 0x20000>;
1585f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
1586f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_DE_FE1>, <&ccu CLK_DE_FE1>,
1587f126890aSEmmanuel Vadot				 <&ccu CLK_DRAM_DE_FE1>;
1588f126890aSEmmanuel Vadot			clock-names = "ahb", "mod",
1589f126890aSEmmanuel Vadot				      "ram";
1590f126890aSEmmanuel Vadot			resets = <&ccu RST_DE_FE1>;
1591f126890aSEmmanuel Vadot
1592f126890aSEmmanuel Vadot			ports {
1593f126890aSEmmanuel Vadot				#address-cells = <1>;
1594f126890aSEmmanuel Vadot				#size-cells = <0>;
1595f126890aSEmmanuel Vadot
1596f126890aSEmmanuel Vadot				fe1_out: port@1 {
1597f126890aSEmmanuel Vadot					#address-cells = <1>;
1598f126890aSEmmanuel Vadot					#size-cells = <0>;
1599f126890aSEmmanuel Vadot					reg = <1>;
1600f126890aSEmmanuel Vadot
1601f126890aSEmmanuel Vadot					fe1_out_be0: endpoint@0 {
1602f126890aSEmmanuel Vadot						reg = <0>;
1603f126890aSEmmanuel Vadot						remote-endpoint = <&be0_in_fe1>;
1604f126890aSEmmanuel Vadot					};
1605f126890aSEmmanuel Vadot
1606f126890aSEmmanuel Vadot					fe1_out_be1: endpoint@1 {
1607f126890aSEmmanuel Vadot						reg = <1>;
1608f126890aSEmmanuel Vadot						remote-endpoint = <&be1_in_fe1>;
1609f126890aSEmmanuel Vadot					};
1610f126890aSEmmanuel Vadot				};
1611f126890aSEmmanuel Vadot			};
1612f126890aSEmmanuel Vadot		};
1613f126890aSEmmanuel Vadot
1614f126890aSEmmanuel Vadot		be1: display-backend@1e40000 {
1615f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-display-backend";
1616f126890aSEmmanuel Vadot			reg = <0x01e40000 0x10000>;
1617f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
1618f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_DE_BE1>, <&ccu CLK_DE_BE1>,
1619f126890aSEmmanuel Vadot				 <&ccu CLK_DRAM_DE_BE1>;
1620f126890aSEmmanuel Vadot			clock-names = "ahb", "mod",
1621f126890aSEmmanuel Vadot				      "ram";
1622f126890aSEmmanuel Vadot			resets = <&ccu RST_DE_BE1>;
1623f126890aSEmmanuel Vadot
1624f126890aSEmmanuel Vadot			ports {
1625f126890aSEmmanuel Vadot				#address-cells = <1>;
1626f126890aSEmmanuel Vadot				#size-cells = <0>;
1627f126890aSEmmanuel Vadot
1628f126890aSEmmanuel Vadot				be1_in: port@0 {
1629f126890aSEmmanuel Vadot					#address-cells = <1>;
1630f126890aSEmmanuel Vadot					#size-cells = <0>;
1631f126890aSEmmanuel Vadot					reg = <0>;
1632f126890aSEmmanuel Vadot
1633f126890aSEmmanuel Vadot					be1_in_fe0: endpoint@0 {
1634f126890aSEmmanuel Vadot						reg = <0>;
1635f126890aSEmmanuel Vadot						remote-endpoint = <&fe0_out_be1>;
1636f126890aSEmmanuel Vadot					};
1637f126890aSEmmanuel Vadot
1638f126890aSEmmanuel Vadot					be1_in_fe1: endpoint@1 {
1639f126890aSEmmanuel Vadot						reg = <1>;
1640f126890aSEmmanuel Vadot						remote-endpoint = <&fe1_out_be1>;
1641f126890aSEmmanuel Vadot					};
1642f126890aSEmmanuel Vadot				};
1643f126890aSEmmanuel Vadot
1644f126890aSEmmanuel Vadot				be1_out: port@1 {
1645f126890aSEmmanuel Vadot					#address-cells = <1>;
1646f126890aSEmmanuel Vadot					#size-cells = <0>;
1647f126890aSEmmanuel Vadot					reg = <1>;
1648f126890aSEmmanuel Vadot
1649f126890aSEmmanuel Vadot					be1_out_tcon0: endpoint@0 {
1650f126890aSEmmanuel Vadot						reg = <0>;
1651f126890aSEmmanuel Vadot						remote-endpoint = <&tcon0_in_be1>;
1652f126890aSEmmanuel Vadot					};
1653f126890aSEmmanuel Vadot
1654f126890aSEmmanuel Vadot					be1_out_tcon1: endpoint@1 {
1655f126890aSEmmanuel Vadot						reg = <1>;
1656f126890aSEmmanuel Vadot						remote-endpoint = <&tcon1_in_be1>;
1657f126890aSEmmanuel Vadot					};
1658f126890aSEmmanuel Vadot				};
1659f126890aSEmmanuel Vadot			};
1660f126890aSEmmanuel Vadot		};
1661f126890aSEmmanuel Vadot
1662f126890aSEmmanuel Vadot		be0: display-backend@1e60000 {
1663f126890aSEmmanuel Vadot			compatible = "allwinner,sun7i-a20-display-backend";
1664f126890aSEmmanuel Vadot			reg = <0x01e60000 0x10000>;
1665f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
1666f126890aSEmmanuel Vadot			clocks = <&ccu CLK_AHB_DE_BE0>, <&ccu CLK_DE_BE0>,
1667f126890aSEmmanuel Vadot				 <&ccu CLK_DRAM_DE_BE0>;
1668f126890aSEmmanuel Vadot			clock-names = "ahb", "mod",
1669f126890aSEmmanuel Vadot				      "ram";
1670f126890aSEmmanuel Vadot			resets = <&ccu RST_DE_BE0>;
1671f126890aSEmmanuel Vadot
1672f126890aSEmmanuel Vadot			ports {
1673f126890aSEmmanuel Vadot				#address-cells = <1>;
1674f126890aSEmmanuel Vadot				#size-cells = <0>;
1675f126890aSEmmanuel Vadot
1676f126890aSEmmanuel Vadot				be0_in: port@0 {
1677f126890aSEmmanuel Vadot					#address-cells = <1>;
1678f126890aSEmmanuel Vadot					#size-cells = <0>;
1679f126890aSEmmanuel Vadot					reg = <0>;
1680f126890aSEmmanuel Vadot
1681f126890aSEmmanuel Vadot					be0_in_fe0: endpoint@0 {
1682f126890aSEmmanuel Vadot						reg = <0>;
1683f126890aSEmmanuel Vadot						remote-endpoint = <&fe0_out_be0>;
1684f126890aSEmmanuel Vadot					};
1685f126890aSEmmanuel Vadot
1686f126890aSEmmanuel Vadot					be0_in_fe1: endpoint@1 {
1687f126890aSEmmanuel Vadot						reg = <1>;
1688f126890aSEmmanuel Vadot						remote-endpoint = <&fe1_out_be0>;
1689f126890aSEmmanuel Vadot					};
1690f126890aSEmmanuel Vadot				};
1691f126890aSEmmanuel Vadot
1692f126890aSEmmanuel Vadot				be0_out: port@1 {
1693f126890aSEmmanuel Vadot					#address-cells = <1>;
1694f126890aSEmmanuel Vadot					#size-cells = <0>;
1695f126890aSEmmanuel Vadot					reg = <1>;
1696f126890aSEmmanuel Vadot
1697f126890aSEmmanuel Vadot					be0_out_tcon0: endpoint@0 {
1698f126890aSEmmanuel Vadot						reg = <0>;
1699f126890aSEmmanuel Vadot						remote-endpoint = <&tcon0_in_be0>;
1700f126890aSEmmanuel Vadot					};
1701f126890aSEmmanuel Vadot
1702f126890aSEmmanuel Vadot					be0_out_tcon1: endpoint@1 {
1703f126890aSEmmanuel Vadot						reg = <1>;
1704f126890aSEmmanuel Vadot						remote-endpoint = <&tcon1_in_be0>;
1705f126890aSEmmanuel Vadot					};
1706f126890aSEmmanuel Vadot				};
1707f126890aSEmmanuel Vadot			};
1708f126890aSEmmanuel Vadot		};
1709f126890aSEmmanuel Vadot	};
1710f126890aSEmmanuel Vadot};
1711