xref: /freebsd-src/sys/contrib/device-tree/src/arm/ti/keystone/keystone-k2g.dtsi (revision 7d0873ebb83b19ba1e8a89e679470d885efe12e3)
1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2f126890aSEmmanuel Vadot/*
3f126890aSEmmanuel Vadot * Device Tree Source for K2G SOC
4f126890aSEmmanuel Vadot *
5*01950c46SEmmanuel Vadot * Copyright (C) 2016-2017 Texas Instruments Incorporated - https://www.ti.com/
6f126890aSEmmanuel Vadot */
7f126890aSEmmanuel Vadot
8f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h>
9f126890aSEmmanuel Vadot#include <dt-bindings/pinctrl/keystone.h>
10f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
11f126890aSEmmanuel Vadot
12f126890aSEmmanuel Vadot/ {
13f126890aSEmmanuel Vadot	compatible = "ti,k2g","ti,keystone";
14f126890aSEmmanuel Vadot	model = "Texas Instruments K2G SoC";
15f126890aSEmmanuel Vadot	#address-cells = <2>;
16f126890aSEmmanuel Vadot	#size-cells = <2>;
17f126890aSEmmanuel Vadot	interrupt-parent = <&gic>;
18f126890aSEmmanuel Vadot
19f126890aSEmmanuel Vadot	chosen { };
20f126890aSEmmanuel Vadot
21f126890aSEmmanuel Vadot	aliases {
22f126890aSEmmanuel Vadot		serial0 = &uart0;
23f126890aSEmmanuel Vadot		serial1 = &uart1;
24f126890aSEmmanuel Vadot		serial2 = &uart2;
25f126890aSEmmanuel Vadot		i2c0 = &i2c0;
26f126890aSEmmanuel Vadot		i2c1 = &i2c1;
27f126890aSEmmanuel Vadot		i2c2 = &i2c2;
28f126890aSEmmanuel Vadot		rproc0 = &dsp0;
29f126890aSEmmanuel Vadot	};
30f126890aSEmmanuel Vadot
31f126890aSEmmanuel Vadot	cpus {
32f126890aSEmmanuel Vadot		#address-cells = <1>;
33f126890aSEmmanuel Vadot		#size-cells = <0>;
34f126890aSEmmanuel Vadot
35f126890aSEmmanuel Vadot		cpu@0 {
36f126890aSEmmanuel Vadot			compatible = "arm,cortex-a15";
37f126890aSEmmanuel Vadot			device_type = "cpu";
38f126890aSEmmanuel Vadot			reg = <0>;
39f126890aSEmmanuel Vadot		};
40f126890aSEmmanuel Vadot	};
41f126890aSEmmanuel Vadot
42f126890aSEmmanuel Vadot	gic: interrupt-controller@2561000 {
43f126890aSEmmanuel Vadot		compatible = "arm,gic-400", "arm,cortex-a15-gic";
44f126890aSEmmanuel Vadot		#interrupt-cells = <3>;
45f126890aSEmmanuel Vadot		interrupt-controller;
46f126890aSEmmanuel Vadot		reg = <0x0 0x02561000 0x0 0x1000>,
47f126890aSEmmanuel Vadot		      <0x0 0x02562000 0x0 0x2000>,
48f126890aSEmmanuel Vadot		      <0x0 0x02564000 0x0 0x2000>,
49f126890aSEmmanuel Vadot		      <0x0 0x02566000 0x0 0x2000>;
50f126890aSEmmanuel Vadot		interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) |
51f126890aSEmmanuel Vadot				IRQ_TYPE_LEVEL_HIGH)>;
52f126890aSEmmanuel Vadot	};
53f126890aSEmmanuel Vadot
54f126890aSEmmanuel Vadot	timer {
55f126890aSEmmanuel Vadot		compatible = "arm,armv7-timer";
56f126890aSEmmanuel Vadot		interrupts =
57f126890aSEmmanuel Vadot			<GIC_PPI 13
58f126890aSEmmanuel Vadot				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
59f126890aSEmmanuel Vadot			<GIC_PPI 14
60f126890aSEmmanuel Vadot				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
61f126890aSEmmanuel Vadot			<GIC_PPI 11
62f126890aSEmmanuel Vadot				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
63f126890aSEmmanuel Vadot			<GIC_PPI 10
64f126890aSEmmanuel Vadot				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
65f126890aSEmmanuel Vadot	};
66f126890aSEmmanuel Vadot
67f126890aSEmmanuel Vadot	pmu {
68f126890aSEmmanuel Vadot		compatible = "arm,cortex-a15-pmu";
69f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 4 IRQ_TYPE_EDGE_RISING>;
70f126890aSEmmanuel Vadot	};
71f126890aSEmmanuel Vadot
72f126890aSEmmanuel Vadot	usbphy {
73f126890aSEmmanuel Vadot		#address-cells = <1>;
74f126890aSEmmanuel Vadot		#size-cells = <0>;
75f126890aSEmmanuel Vadot		compatible = "simple-bus";
76f126890aSEmmanuel Vadot
77f126890aSEmmanuel Vadot		usb0_phy: usb-phy@0 {
78f126890aSEmmanuel Vadot			compatible = "usb-nop-xceiv";
79f126890aSEmmanuel Vadot			reg = <0>;
80f126890aSEmmanuel Vadot			status = "disabled";
81f126890aSEmmanuel Vadot		};
82f126890aSEmmanuel Vadot
83f126890aSEmmanuel Vadot		usb1_phy: usb-phy@1 {
84f126890aSEmmanuel Vadot			compatible = "usb-nop-xceiv";
85f126890aSEmmanuel Vadot			reg = <1>;
86f126890aSEmmanuel Vadot			status = "disabled";
87f126890aSEmmanuel Vadot		};
88f126890aSEmmanuel Vadot	};
89f126890aSEmmanuel Vadot
90f126890aSEmmanuel Vadot	soc0: soc@0 {
91f126890aSEmmanuel Vadot		#address-cells = <1>;
92f126890aSEmmanuel Vadot		#size-cells = <1>;
93f126890aSEmmanuel Vadot		#pinctrl-cells = <1>;
94f126890aSEmmanuel Vadot		compatible = "ti,keystone","simple-bus";
95f126890aSEmmanuel Vadot		ranges = <0x0 0x0 0x0 0xc0000000>;
96f126890aSEmmanuel Vadot		dma-ranges = <0x80000000 0x8 0x00000000 0x80000000>;
97f126890aSEmmanuel Vadot
98f126890aSEmmanuel Vadot		msm_ram: sram@c000000 {
99f126890aSEmmanuel Vadot			compatible = "mmio-sram";
100f126890aSEmmanuel Vadot			reg = <0x0c000000 0x100000>;
101f126890aSEmmanuel Vadot			ranges = <0x0 0x0c000000 0x100000>;
102f126890aSEmmanuel Vadot			#address-cells = <1>;
103f126890aSEmmanuel Vadot			#size-cells = <1>;
104f126890aSEmmanuel Vadot
105f126890aSEmmanuel Vadot			bm-sram@f7000 {
106f126890aSEmmanuel Vadot				reg = <0x000f7000 0x8000>;
107f126890aSEmmanuel Vadot			};
108f126890aSEmmanuel Vadot		};
109f126890aSEmmanuel Vadot
110f126890aSEmmanuel Vadot		k2g_pinctrl: pinmux@2621000 {
111f126890aSEmmanuel Vadot			compatible = "pinctrl-single";
112f126890aSEmmanuel Vadot			reg = <0x02621000 0x410>;
113f126890aSEmmanuel Vadot			pinctrl-single,register-width = <32>;
114f126890aSEmmanuel Vadot			pinctrl-single,function-mask = <0x001b0007>;
115f126890aSEmmanuel Vadot		};
116f126890aSEmmanuel Vadot
117f126890aSEmmanuel Vadot		devctrl: device-state-control@2620000 {
118f126890aSEmmanuel Vadot			compatible = "ti,keystone-devctrl", "syscon", "simple-mfd";
119f126890aSEmmanuel Vadot			reg = <0x02620000 0x1000>;
120f126890aSEmmanuel Vadot			#address-cells = <1>;
121f126890aSEmmanuel Vadot			#size-cells = <1>;
122f126890aSEmmanuel Vadot			ranges = <0x0 0x02620000 0x1000>;
123f126890aSEmmanuel Vadot
124f126890aSEmmanuel Vadot			kirq0: keystone_irq@2a0 {
125f126890aSEmmanuel Vadot				compatible = "ti,keystone-irq";
126f126890aSEmmanuel Vadot				reg = <0x2a0 0x10>;
127f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 1 IRQ_TYPE_EDGE_RISING>;
128f126890aSEmmanuel Vadot				interrupt-controller;
129f126890aSEmmanuel Vadot				#interrupt-cells = <1>;
130f126890aSEmmanuel Vadot				ti,syscon-dev = <&devctrl 0x2a0>;
131f126890aSEmmanuel Vadot			};
132f126890aSEmmanuel Vadot
133f126890aSEmmanuel Vadot			dspgpio0: keystone_dsp_gpio@240 {
134f126890aSEmmanuel Vadot				compatible = "ti,keystone-dsp-gpio";
135f126890aSEmmanuel Vadot				reg = <0x240 0x4>;
136f126890aSEmmanuel Vadot				gpio-controller;
137f126890aSEmmanuel Vadot				#gpio-cells = <2>;
138f126890aSEmmanuel Vadot				gpio,syscon-dev = <&devctrl 0x240>;
139f126890aSEmmanuel Vadot			};
140f126890aSEmmanuel Vadot		};
141f126890aSEmmanuel Vadot
142f126890aSEmmanuel Vadot		uart0: serial@2530c00 {
143f126890aSEmmanuel Vadot			compatible = "ti,da830-uart", "ns16550a";
144f126890aSEmmanuel Vadot			current-speed = <115200>;
145f126890aSEmmanuel Vadot			reg-shift = <2>;
146f126890aSEmmanuel Vadot			reg-io-width = <4>;
147f126890aSEmmanuel Vadot			reg = <0x02530c00 0x100>;
148f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 164 IRQ_TYPE_EDGE_RISING>;
149f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x2c 0>;
150f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x2c>;
151f126890aSEmmanuel Vadot			status = "disabled";
152f126890aSEmmanuel Vadot		};
153f126890aSEmmanuel Vadot
154f126890aSEmmanuel Vadot		uart1: serial@2531000 {
155f126890aSEmmanuel Vadot			compatible = "ti,da830-uart", "ns16550a";
156f126890aSEmmanuel Vadot			current-speed = <115200>;
157f126890aSEmmanuel Vadot			reg-shift = <2>;
158f126890aSEmmanuel Vadot			reg-io-width = <4>;
159f126890aSEmmanuel Vadot			reg = <0x02531000 0x100>;
160f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 165 IRQ_TYPE_EDGE_RISING>;
161f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x2d 0>;
162f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x2d>;
163f126890aSEmmanuel Vadot			status = "disabled";
164f126890aSEmmanuel Vadot		};
165f126890aSEmmanuel Vadot
166f126890aSEmmanuel Vadot		uart2: serial@2531400 {
167f126890aSEmmanuel Vadot			compatible = "ti,da830-uart", "ns16550a";
168f126890aSEmmanuel Vadot			current-speed = <115200>;
169f126890aSEmmanuel Vadot			reg-shift = <2>;
170f126890aSEmmanuel Vadot			reg-io-width = <4>;
171f126890aSEmmanuel Vadot			reg = <0x02531400 0x100>;
172f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 166 IRQ_TYPE_EDGE_RISING>;
173f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x2e 0>;
174f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x2e>;
175f126890aSEmmanuel Vadot			status = "disabled";
176f126890aSEmmanuel Vadot		};
177f126890aSEmmanuel Vadot
178f126890aSEmmanuel Vadot		dcan0: can@260b200 {
179f126890aSEmmanuel Vadot			compatible = "ti,am4372-d_can", "ti,am3352-d_can";
180f126890aSEmmanuel Vadot			reg = <0x0260b200 0x200>;
181f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 190 IRQ_TYPE_EDGE_RISING>;
182f126890aSEmmanuel Vadot			status = "disabled";
183f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x0008>;
184f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x0008 1>;
185f126890aSEmmanuel Vadot		};
186f126890aSEmmanuel Vadot
187f126890aSEmmanuel Vadot		dcan1: can@260b400 {
188f126890aSEmmanuel Vadot			compatible = "ti,am4372-d_can", "ti,am3352-d_can";
189f126890aSEmmanuel Vadot			reg = <0x0260b400 0x200>;
190f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 193 IRQ_TYPE_EDGE_RISING>;
191f126890aSEmmanuel Vadot			status = "disabled";
192f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x0009>;
193f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x0009 1>;
194f126890aSEmmanuel Vadot		};
195f126890aSEmmanuel Vadot
196f126890aSEmmanuel Vadot		i2c0: i2c@2530000 {
197f126890aSEmmanuel Vadot			compatible = "ti,keystone-i2c";
198f126890aSEmmanuel Vadot			reg = <0x02530000 0x400>;
199f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x003a 0>;
200f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x003a>;
201f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 88 IRQ_TYPE_EDGE_RISING>;
202f126890aSEmmanuel Vadot			#address-cells = <1>;
203f126890aSEmmanuel Vadot			#size-cells = <0>;
204f126890aSEmmanuel Vadot			status = "disabled";
205f126890aSEmmanuel Vadot		};
206f126890aSEmmanuel Vadot
207f126890aSEmmanuel Vadot		i2c1: i2c@2530400 {
208f126890aSEmmanuel Vadot			compatible = "ti,keystone-i2c";
209f126890aSEmmanuel Vadot			reg = <0x02530400 0x400>;
210f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x003b 0>;
211f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x003b>;
212f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 89 IRQ_TYPE_EDGE_RISING>;
213f126890aSEmmanuel Vadot			#address-cells = <1>;
214f126890aSEmmanuel Vadot			#size-cells = <0>;
215f126890aSEmmanuel Vadot			status = "disabled";
216f126890aSEmmanuel Vadot		};
217f126890aSEmmanuel Vadot
218f126890aSEmmanuel Vadot		i2c2: i2c@2530800 {
219f126890aSEmmanuel Vadot			compatible = "ti,keystone-i2c";
220f126890aSEmmanuel Vadot			reg = <0x02530800 0x400>;
221f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x003c 0>;
222f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x003c>;
223f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 90 IRQ_TYPE_EDGE_RISING>;
224f126890aSEmmanuel Vadot			#address-cells = <1>;
225f126890aSEmmanuel Vadot			#size-cells = <0>;
226f126890aSEmmanuel Vadot			status = "disabled";
227f126890aSEmmanuel Vadot		};
228f126890aSEmmanuel Vadot
229f126890aSEmmanuel Vadot		dsp0: dsp@10800000 {
230f126890aSEmmanuel Vadot			compatible = "ti,k2g-dsp";
231f126890aSEmmanuel Vadot			reg = <0x10800000 0x00100000>,
232f126890aSEmmanuel Vadot			      <0x10e00000 0x00008000>,
233f126890aSEmmanuel Vadot			      <0x10f00000 0x00008000>;
234f126890aSEmmanuel Vadot			reg-names = "l2sram", "l1pram", "l1dram";
235f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x0046>;
236f126890aSEmmanuel Vadot			ti,syscon-dev = <&devctrl 0x844>;
237f126890aSEmmanuel Vadot			resets = <&k2g_reset 0x0046 0x1>;
238f126890aSEmmanuel Vadot			interrupt-parent = <&kirq0>;
239f126890aSEmmanuel Vadot			interrupts = <0 8>;
240f126890aSEmmanuel Vadot			interrupt-names = "vring", "exception";
241f126890aSEmmanuel Vadot			kick-gpios = <&dspgpio0 27 0>;
242f126890aSEmmanuel Vadot			status = "disabled";
243f126890aSEmmanuel Vadot		};
244f126890aSEmmanuel Vadot
245f126890aSEmmanuel Vadot		msgmgr: mailbox@2a00000 {
246f126890aSEmmanuel Vadot			compatible = "ti,k2g-message-manager";
247f126890aSEmmanuel Vadot			#mbox-cells = <2>;
248f126890aSEmmanuel Vadot			reg-names = "queue_proxy_region",
249f126890aSEmmanuel Vadot				    "queue_state_debug_region";
250f126890aSEmmanuel Vadot			reg = <0x02a00000 0x400000>, <0x028c3400 0x400>;
251f126890aSEmmanuel Vadot			interrupt-names = "rx_005",
252f126890aSEmmanuel Vadot					  "rx_057";
253f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH>,
254f126890aSEmmanuel Vadot				     <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>;
255f126890aSEmmanuel Vadot		};
256f126890aSEmmanuel Vadot
257f126890aSEmmanuel Vadot		pmmc: system-controller@2921c00 {
258f126890aSEmmanuel Vadot			compatible = "ti,k2g-sci";
259f126890aSEmmanuel Vadot			mbox-names = "rx", "tx";
260f126890aSEmmanuel Vadot			mboxes = <&msgmgr 5 2>,
261f126890aSEmmanuel Vadot				<&msgmgr 0 0>;
262f126890aSEmmanuel Vadot			reg-names = "debug_messages";
263f126890aSEmmanuel Vadot			reg = <0x02921c00 0x400>;
264f126890aSEmmanuel Vadot
265f126890aSEmmanuel Vadot			k2g_pds: power-controller {
266f126890aSEmmanuel Vadot				compatible = "ti,sci-pm-domain";
267f126890aSEmmanuel Vadot				#power-domain-cells = <1>;
268f126890aSEmmanuel Vadot			};
269f126890aSEmmanuel Vadot
270f126890aSEmmanuel Vadot			k2g_clks: clock-controller {
271f126890aSEmmanuel Vadot				compatible = "ti,k2g-sci-clk";
272f126890aSEmmanuel Vadot				#clock-cells = <2>;
273f126890aSEmmanuel Vadot			};
274f126890aSEmmanuel Vadot
275f126890aSEmmanuel Vadot			k2g_reset: reset-controller {
276f126890aSEmmanuel Vadot				compatible = "ti,sci-reset";
277f126890aSEmmanuel Vadot				#reset-cells = <2>;
278f126890aSEmmanuel Vadot			};
279f126890aSEmmanuel Vadot		};
280f126890aSEmmanuel Vadot
281f126890aSEmmanuel Vadot		gpio0: gpio@2603000 {
282f126890aSEmmanuel Vadot			compatible = "ti,k2g-gpio", "ti,keystone-gpio";
283f126890aSEmmanuel Vadot			reg = <0x02603000 0x100>;
284f126890aSEmmanuel Vadot			gpio-controller;
285f126890aSEmmanuel Vadot			#gpio-cells = <2>;
286f126890aSEmmanuel Vadot
287f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 432 IRQ_TYPE_EDGE_RISING>,
288f126890aSEmmanuel Vadot					<GIC_SPI 433 IRQ_TYPE_EDGE_RISING>,
289f126890aSEmmanuel Vadot					<GIC_SPI 434 IRQ_TYPE_EDGE_RISING>,
290f126890aSEmmanuel Vadot					<GIC_SPI 435 IRQ_TYPE_EDGE_RISING>,
291f126890aSEmmanuel Vadot					<GIC_SPI 436 IRQ_TYPE_EDGE_RISING>,
292f126890aSEmmanuel Vadot					<GIC_SPI 437 IRQ_TYPE_EDGE_RISING>,
293f126890aSEmmanuel Vadot					<GIC_SPI 438 IRQ_TYPE_EDGE_RISING>,
294f126890aSEmmanuel Vadot					<GIC_SPI 439 IRQ_TYPE_EDGE_RISING>,
295f126890aSEmmanuel Vadot					<GIC_SPI 440 IRQ_TYPE_EDGE_RISING>;
296f126890aSEmmanuel Vadot			interrupt-controller;
297f126890aSEmmanuel Vadot			#interrupt-cells = <2>;
298f126890aSEmmanuel Vadot			ti,ngpio = <144>;
299f126890aSEmmanuel Vadot			ti,davinci-gpio-unbanked = <0>;
300f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x001b 0x0>;
301f126890aSEmmanuel Vadot			clock-names = "gpio";
302f126890aSEmmanuel Vadot		};
303f126890aSEmmanuel Vadot
304f126890aSEmmanuel Vadot		gpio1: gpio@260a000 {
305f126890aSEmmanuel Vadot			compatible = "ti,k2g-gpio", "ti,keystone-gpio";
306f126890aSEmmanuel Vadot			reg = <0x0260a000 0x100>;
307f126890aSEmmanuel Vadot			gpio-controller;
308f126890aSEmmanuel Vadot			#gpio-cells = <2>;
309f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 442 IRQ_TYPE_EDGE_RISING>,
310f126890aSEmmanuel Vadot					<GIC_SPI 443 IRQ_TYPE_EDGE_RISING>,
311f126890aSEmmanuel Vadot					<GIC_SPI 444 IRQ_TYPE_EDGE_RISING>,
312f126890aSEmmanuel Vadot					<GIC_SPI 445 IRQ_TYPE_EDGE_RISING>,
313f126890aSEmmanuel Vadot					<GIC_SPI 446 IRQ_TYPE_EDGE_RISING>;
314f126890aSEmmanuel Vadot			interrupt-controller;
315f126890aSEmmanuel Vadot			#interrupt-cells = <2>;
316f126890aSEmmanuel Vadot			ti,ngpio = <68>;
317f126890aSEmmanuel Vadot			ti,davinci-gpio-unbanked = <0>;
318f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x001c 0x0>;
319f126890aSEmmanuel Vadot			clock-names = "gpio";
320f126890aSEmmanuel Vadot		};
321f126890aSEmmanuel Vadot
322f126890aSEmmanuel Vadot		dss: dss@02540000 {
323f126890aSEmmanuel Vadot			compatible = "ti,k2g-dss";
324f126890aSEmmanuel Vadot			reg = <0x02540000 0x400>,
325f126890aSEmmanuel Vadot				<0x02550000 0x1000>,
326f126890aSEmmanuel Vadot				<0x02557000 0x1000>,
327f126890aSEmmanuel Vadot				<0x0255a800 0x100>,
328f126890aSEmmanuel Vadot				<0x0255ac00 0x100>;
329f126890aSEmmanuel Vadot			reg-names = "cfg", "common", "vid1", "ovr1", "vp1";
330f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x2 0>,
331f126890aSEmmanuel Vadot					<&k2g_clks 0x2 1>;
332f126890aSEmmanuel Vadot			clock-names = "fck", "vp1";
333f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 247 IRQ_TYPE_EDGE_RISING>;
334f126890aSEmmanuel Vadot
335f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x2>;
336f126890aSEmmanuel Vadot			status = "disabled";
337f126890aSEmmanuel Vadot			#address-cells = <1>;
338f126890aSEmmanuel Vadot			#size-cells = <1>;
339f126890aSEmmanuel Vadot			ranges;
340f126890aSEmmanuel Vadot
341f126890aSEmmanuel Vadot			max-memory-bandwidth = <230000000>;
342f126890aSEmmanuel Vadot		};
343f126890aSEmmanuel Vadot
344f126890aSEmmanuel Vadot		edma0: edma@2700000 {
345f126890aSEmmanuel Vadot			compatible = "ti,k2g-edma3-tpcc", "ti,edma3-tpcc";
346f126890aSEmmanuel Vadot			reg = <0x02700000 0x8000>;
347f126890aSEmmanuel Vadot			reg-names = "edma3_cc";
348f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 200 IRQ_TYPE_EDGE_RISING>,
349f126890aSEmmanuel Vadot					<GIC_SPI 216 IRQ_TYPE_EDGE_RISING>,
350f126890aSEmmanuel Vadot					<GIC_SPI 217 IRQ_TYPE_EDGE_RISING>;
351f126890aSEmmanuel Vadot			interrupt-names = "edma3_ccint", "emda3_mperr",
352f126890aSEmmanuel Vadot					  "edma3_ccerrint";
353f126890aSEmmanuel Vadot			dma-requests = <64>;
354f126890aSEmmanuel Vadot			#dma-cells = <2>;
355f126890aSEmmanuel Vadot
356f126890aSEmmanuel Vadot			ti,tptcs = <&edma0_tptc0 7>, <&edma0_tptc1 0>;
357f126890aSEmmanuel Vadot
358f126890aSEmmanuel Vadot			ti,edma-memcpy-channels = <32 33 34 35>;
359f126890aSEmmanuel Vadot
360f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x3f>;
361f126890aSEmmanuel Vadot		};
362f126890aSEmmanuel Vadot
363f126890aSEmmanuel Vadot		edma0_tptc0: tptc@2760000 {
364f126890aSEmmanuel Vadot			compatible = "ti,k2g-edma3-tptc", "ti,edma3-tptc";
365f126890aSEmmanuel Vadot			reg = <0x02760000 0x400>;
366f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x3f>;
367f126890aSEmmanuel Vadot		};
368f126890aSEmmanuel Vadot
369f126890aSEmmanuel Vadot		edma0_tptc1: tptc@2768000 {
370f126890aSEmmanuel Vadot			compatible = "ti,k2g-edma3-tptc", "ti,edma3-tptc";
371f126890aSEmmanuel Vadot			reg = <0x02768000 0x400>;
372f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x3f>;
373f126890aSEmmanuel Vadot		};
374f126890aSEmmanuel Vadot
375f126890aSEmmanuel Vadot		edma1: edma@2728000 {
376f126890aSEmmanuel Vadot			compatible = "ti,k2g-edma3-tpcc", "ti,edma3-tpcc";
377f126890aSEmmanuel Vadot			reg = <0x02728000 0x8000>;
378f126890aSEmmanuel Vadot			reg-names = "edma3_cc";
379f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 208 IRQ_TYPE_EDGE_RISING>,
380f126890aSEmmanuel Vadot					<GIC_SPI 219 IRQ_TYPE_EDGE_RISING>,
381f126890aSEmmanuel Vadot					<GIC_SPI 220 IRQ_TYPE_EDGE_RISING>;
382f126890aSEmmanuel Vadot			interrupt-names = "edma3_ccint", "emda3_mperr",
383f126890aSEmmanuel Vadot					  "edma3_ccerrint";
384f126890aSEmmanuel Vadot			dma-requests = <64>;
385f126890aSEmmanuel Vadot			#dma-cells = <2>;
386f126890aSEmmanuel Vadot
387f126890aSEmmanuel Vadot			ti,tptcs = <&edma1_tptc0 7>, <&edma1_tptc1 0>;
388f126890aSEmmanuel Vadot
389f126890aSEmmanuel Vadot			/*
390f126890aSEmmanuel Vadot			 * memcpy is disabled, can be enabled with:
391f126890aSEmmanuel Vadot			 * ti,edma-memcpy-channels = <12 13 14 15>;
392f126890aSEmmanuel Vadot			 * for example.
393f126890aSEmmanuel Vadot			 */
394f126890aSEmmanuel Vadot
395f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x4f>;
396f126890aSEmmanuel Vadot		};
397f126890aSEmmanuel Vadot
398f126890aSEmmanuel Vadot		edma1_tptc0: tptc@27b0000 {
399f126890aSEmmanuel Vadot			compatible = "ti,k2g-edma3-tptc", "ti,edma3-tptc";
400f126890aSEmmanuel Vadot			reg = <0x027b0000 0x400>;
401f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x4f>;
402f126890aSEmmanuel Vadot		};
403f126890aSEmmanuel Vadot
404f126890aSEmmanuel Vadot		edma1_tptc1: tptc@27b8000 {
405f126890aSEmmanuel Vadot			compatible = "ti,k2g-edma3-tptc", "ti,edma3-tptc";
406f126890aSEmmanuel Vadot			reg = <0x027b8000 0x400>;
407f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x4f>;
408f126890aSEmmanuel Vadot		};
409f126890aSEmmanuel Vadot
410f126890aSEmmanuel Vadot		mmc0: mmc@23000000 {
411f126890aSEmmanuel Vadot			compatible = "ti,k2g-sdhci";
412f126890aSEmmanuel Vadot			reg = <0x23000000 0x400>;
413f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 96 IRQ_TYPE_EDGE_RISING>;
414f126890aSEmmanuel Vadot			bus-width = <4>;
415f126890aSEmmanuel Vadot			no-1-8-v;
416f126890aSEmmanuel Vadot			max-frequency = <96000000>;
417f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0xb>;
418f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0xb 1>, <&k2g_clks 0xb 2>;
419f126890aSEmmanuel Vadot			clock-names = "fck", "mmchsdb_fck";
420f126890aSEmmanuel Vadot			status = "disabled";
421f126890aSEmmanuel Vadot		};
422f126890aSEmmanuel Vadot
423f126890aSEmmanuel Vadot		mmc1: mmc@23100000 {
424f126890aSEmmanuel Vadot			compatible = "ti,k2g-sdhci";
425f126890aSEmmanuel Vadot			reg = <0x23100000 0x400>;
426f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 97 IRQ_TYPE_EDGE_RISING>;
427f126890aSEmmanuel Vadot			bus-width = <8>;
428f126890aSEmmanuel Vadot			no-1-8-v;
429f126890aSEmmanuel Vadot			non-removable;
430f126890aSEmmanuel Vadot			max-frequency = <96000000>;
431f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0xc>;
432f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0xc 1>, <&k2g_clks 0xc 2>;
433f126890aSEmmanuel Vadot			clock-names = "fck", "mmchsdb_fck";
434f126890aSEmmanuel Vadot		};
435f126890aSEmmanuel Vadot
436f126890aSEmmanuel Vadot		qspi: spi@2940000 {
437f126890aSEmmanuel Vadot			compatible = "ti,k2g-qspi", "cdns,qspi-nor";
438f126890aSEmmanuel Vadot			#address-cells = <1>;
439f126890aSEmmanuel Vadot			#size-cells = <0>;
440f126890aSEmmanuel Vadot			reg = <0x02940000 0x1000>,
441f126890aSEmmanuel Vadot			      <0x24000000 0x4000000>;
442f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 198 IRQ_TYPE_EDGE_RISING>;
443f126890aSEmmanuel Vadot			cdns,fifo-depth = <256>;
444f126890aSEmmanuel Vadot			cdns,fifo-width = <4>;
445f126890aSEmmanuel Vadot			cdns,trigger-address = <0x24000000>;
446f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x43 0x0>;
447f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x43>;
448f126890aSEmmanuel Vadot			status = "disabled";
449f126890aSEmmanuel Vadot		};
450f126890aSEmmanuel Vadot
451f126890aSEmmanuel Vadot		mcasp0: mcasp@2340000 {
452f126890aSEmmanuel Vadot			compatible = "ti,am33xx-mcasp-audio";
453f126890aSEmmanuel Vadot			reg = <0x02340000 0x2000>,
454f126890aSEmmanuel Vadot			      <0x21804000 0x1000>;
455f126890aSEmmanuel Vadot			reg-names = "mpu","dat";
456f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>,
457f126890aSEmmanuel Vadot				     <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
458f126890aSEmmanuel Vadot			interrupt-names = "tx", "rx";
459f126890aSEmmanuel Vadot			dmas = <&edma0 24 1>, <&edma0 25 1>;
460f126890aSEmmanuel Vadot			dma-names = "tx", "rx";
461f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x4>;
462f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x4 0>;
463f126890aSEmmanuel Vadot			clock-names = "fck";
464f126890aSEmmanuel Vadot			status = "disabled";
465f126890aSEmmanuel Vadot		};
466f126890aSEmmanuel Vadot
467f126890aSEmmanuel Vadot		mcasp1: mcasp@2342000 {
468f126890aSEmmanuel Vadot			compatible = "ti,am33xx-mcasp-audio";
469f126890aSEmmanuel Vadot			reg = <0x02342000 0x2000>,
470f126890aSEmmanuel Vadot			      <0x21804400 0x1000>;
471f126890aSEmmanuel Vadot			reg-names = "mpu","dat";
472f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>,
473f126890aSEmmanuel Vadot				     <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
474f126890aSEmmanuel Vadot			interrupt-names = "tx", "rx";
475f126890aSEmmanuel Vadot			dmas = <&edma1 48 1>, <&edma1 49 1>;
476f126890aSEmmanuel Vadot			dma-names = "tx", "rx";
477f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x5>;
478f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x5 0>;
479f126890aSEmmanuel Vadot			clock-names = "fck";
480f126890aSEmmanuel Vadot			status = "disabled";
481f126890aSEmmanuel Vadot		};
482f126890aSEmmanuel Vadot
483f126890aSEmmanuel Vadot		mcasp2: mcasp@2344000 {
484f126890aSEmmanuel Vadot			compatible = "ti,am33xx-mcasp-audio";
485f126890aSEmmanuel Vadot			reg = <0x02344000 0x2000>,
486f126890aSEmmanuel Vadot			      <0x21804800 0x1000>;
487f126890aSEmmanuel Vadot			reg-names = "mpu","dat";
488f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>,
489f126890aSEmmanuel Vadot				     <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
490f126890aSEmmanuel Vadot			interrupt-names = "tx", "rx";
491f126890aSEmmanuel Vadot			dmas = <&edma1 50 1>, <&edma1 51 1>;
492f126890aSEmmanuel Vadot			dma-names = "tx", "rx";
493f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x6>;
494f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x6 0>;
495f126890aSEmmanuel Vadot			clock-names = "fck";
496f126890aSEmmanuel Vadot			status = "disabled";
497f126890aSEmmanuel Vadot		};
498f126890aSEmmanuel Vadot
499f126890aSEmmanuel Vadot		keystone_usb0: keystone-dwc3@2680000 {
500f126890aSEmmanuel Vadot			compatible = "ti,keystone-dwc3";
501f126890aSEmmanuel Vadot			#address-cells = <1>;
502f126890aSEmmanuel Vadot			#size-cells = <1>;
503f126890aSEmmanuel Vadot			reg = <0x2680000 0x10000>;
504f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 128 IRQ_TYPE_EDGE_RISING>;
505f126890aSEmmanuel Vadot			ranges;
506f126890aSEmmanuel Vadot			dma-coherent;
507f126890aSEmmanuel Vadot			dma-ranges;
508f126890aSEmmanuel Vadot			status = "disabled";
509f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x0016>;
510f126890aSEmmanuel Vadot
511f126890aSEmmanuel Vadot			usb0: usb@2690000 {
512f126890aSEmmanuel Vadot				compatible = "snps,dwc3";
513f126890aSEmmanuel Vadot				reg = <0x2690000 0x10000>;
514f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 128 IRQ_TYPE_EDGE_RISING>;
515f126890aSEmmanuel Vadot				maximum-speed = "high-speed";
516f126890aSEmmanuel Vadot				dr_mode = "otg";
517f126890aSEmmanuel Vadot				usb-phy = <&usb0_phy>;
518f126890aSEmmanuel Vadot				status = "disabled";
519f126890aSEmmanuel Vadot			};
520f126890aSEmmanuel Vadot		};
521f126890aSEmmanuel Vadot
522f126890aSEmmanuel Vadot		keystone_usb1: keystone-dwc3@2580000 {
523f126890aSEmmanuel Vadot			compatible = "ti,keystone-dwc3";
524f126890aSEmmanuel Vadot			#address-cells = <1>;
525f126890aSEmmanuel Vadot			#size-cells = <1>;
526f126890aSEmmanuel Vadot			reg = <0x2580000 0x10000>;
527f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 144 IRQ_TYPE_EDGE_RISING>;
528f126890aSEmmanuel Vadot			ranges;
529f126890aSEmmanuel Vadot			dma-coherent;
530f126890aSEmmanuel Vadot			dma-ranges;
531f126890aSEmmanuel Vadot			status = "disabled";
532f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x0017>;
533f126890aSEmmanuel Vadot
534f126890aSEmmanuel Vadot			usb1: usb@2590000 {
535f126890aSEmmanuel Vadot				compatible = "snps,dwc3";
536f126890aSEmmanuel Vadot				reg = <0x2590000 0x10000>;
537f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 144 IRQ_TYPE_EDGE_RISING>;
538f126890aSEmmanuel Vadot				maximum-speed = "high-speed";
539f126890aSEmmanuel Vadot				dr_mode = "otg";
540f126890aSEmmanuel Vadot				usb-phy = <&usb1_phy>;
541f126890aSEmmanuel Vadot				status = "disabled";
542f126890aSEmmanuel Vadot			};
543f126890aSEmmanuel Vadot		};
544f126890aSEmmanuel Vadot
545f126890aSEmmanuel Vadot		ecap0: pwm@21d1800 {
546f126890aSEmmanuel Vadot			compatible = "ti,k2g-ecap", "ti,am3352-ecap";
547f126890aSEmmanuel Vadot			#pwm-cells = <3>;
548f126890aSEmmanuel Vadot			reg = <0x021d1800 0x60>;
549f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x38>;
550f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x38 0>;
551f126890aSEmmanuel Vadot			clock-names = "fck";
552f126890aSEmmanuel Vadot			status = "disabled";
553f126890aSEmmanuel Vadot		};
554f126890aSEmmanuel Vadot
555f126890aSEmmanuel Vadot		ecap1: pwm@21d1c00 {
556f126890aSEmmanuel Vadot			compatible = "ti,k2g-ecap", "ti,am3352-ecap";
557f126890aSEmmanuel Vadot			#pwm-cells = <3>;
558f126890aSEmmanuel Vadot			reg = <0x021d1c00 0x60>;
559f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x39>;
560f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x39 0x0>;
561f126890aSEmmanuel Vadot			clock-names = "fck";
562f126890aSEmmanuel Vadot			status = "disabled";
563f126890aSEmmanuel Vadot		};
564f126890aSEmmanuel Vadot
565f126890aSEmmanuel Vadot		spi0: spi@21805400 {
566f126890aSEmmanuel Vadot			compatible = "ti,keystone-spi";
567f126890aSEmmanuel Vadot			reg = <0x21805400 0x200>;
568f126890aSEmmanuel Vadot			num-cs = <4>;
569f126890aSEmmanuel Vadot			ti,davinci-spi-intr-line = <0>;
570f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 64 IRQ_TYPE_EDGE_RISING>;
571f126890aSEmmanuel Vadot			#address-cells = <1>;
572f126890aSEmmanuel Vadot			#size-cells = <0>;
573f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x0010>;
574f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x0010 0>;
575f126890aSEmmanuel Vadot		};
576f126890aSEmmanuel Vadot
577f126890aSEmmanuel Vadot		spi1: spi@21805800 {
578f126890aSEmmanuel Vadot			compatible = "ti,keystone-spi";
579f126890aSEmmanuel Vadot			reg = <0x21805800 0x200>;
580f126890aSEmmanuel Vadot			num-cs = <4>;
581f126890aSEmmanuel Vadot			ti,davinci-spi-intr-line = <0>;
582f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 66 IRQ_TYPE_EDGE_RISING>;
583f126890aSEmmanuel Vadot			#address-cells = <1>;
584f126890aSEmmanuel Vadot			#size-cells = <0>;
585f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x0011>;
586f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x0011 0>;
587f126890aSEmmanuel Vadot		};
588f126890aSEmmanuel Vadot
589f126890aSEmmanuel Vadot		spi2: spi@21805c00 {
590f126890aSEmmanuel Vadot			compatible = "ti,keystone-spi";
591f126890aSEmmanuel Vadot			reg = <0x21805c00 0x200>;
592f126890aSEmmanuel Vadot			num-cs = <4>;
593f126890aSEmmanuel Vadot			ti,davinci-spi-intr-line = <0>;
594f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 68 IRQ_TYPE_EDGE_RISING>;
595f126890aSEmmanuel Vadot			#address-cells = <1>;
596f126890aSEmmanuel Vadot			#size-cells = <0>;
597f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x0012>;
598f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x0012 0>;
599f126890aSEmmanuel Vadot		};
600f126890aSEmmanuel Vadot
601f126890aSEmmanuel Vadot		spi3: spi@21806000 {
602f126890aSEmmanuel Vadot			compatible = "ti,keystone-spi";
603f126890aSEmmanuel Vadot			reg = <0x21806000 0x200>;
604f126890aSEmmanuel Vadot			num-cs = <4>;
605f126890aSEmmanuel Vadot			ti,davinci-spi-intr-line = <0>;
606f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 70 IRQ_TYPE_EDGE_RISING>;
607f126890aSEmmanuel Vadot			#address-cells = <1>;
608f126890aSEmmanuel Vadot			#size-cells = <0>;
609f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x0013>;
610f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x0013 0>;
611f126890aSEmmanuel Vadot		};
612f126890aSEmmanuel Vadot
613f126890aSEmmanuel Vadot		wdt: wdt@02250000 {
614f126890aSEmmanuel Vadot			compatible = "ti,keystone-wdt", "ti,davinci-wdt";
615f126890aSEmmanuel Vadot			reg = <0x02250000 0x80>;
616f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x22>;
617f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x22 0>;
618f126890aSEmmanuel Vadot		};
619f126890aSEmmanuel Vadot
620f126890aSEmmanuel Vadot		emif: emif@21010000 {
621f126890aSEmmanuel Vadot			compatible = "ti,emif-keystone";
622f126890aSEmmanuel Vadot			reg = <0x21010000 0x200>;
623f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 123 IRQ_TYPE_EDGE_RISING>;
624f126890aSEmmanuel Vadot		};
625f126890aSEmmanuel Vadot
626f126890aSEmmanuel Vadot		mdio: mdio@4200f00 {
627f126890aSEmmanuel Vadot			compatible = "ti,keystone_mdio", "ti,davinci_mdio";
628f126890aSEmmanuel Vadot			reg = <0x04200f00 0x100>;
629f126890aSEmmanuel Vadot			#address-cells = <1>;
630f126890aSEmmanuel Vadot			#size-cells = <0>;
631f126890aSEmmanuel Vadot			clocks = <&k2g_clks 0x0018 3>;
632f126890aSEmmanuel Vadot			clock-names = "fck";
633f126890aSEmmanuel Vadot			power-domains = <&k2g_pds 0x0018>;
634f126890aSEmmanuel Vadot			status = "disabled";
635f126890aSEmmanuel Vadot			bus_freq = <2500000>;
636f126890aSEmmanuel Vadot		};
637f126890aSEmmanuel Vadot		#include "keystone-k2g-netcp.dtsi"
638f126890aSEmmanuel Vadot	};
639f126890aSEmmanuel Vadot};
640