xref: /freebsd/sys/contrib/device-tree/src/arm/ti/keystone/keystone-k2hk-evm.dts (revision 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Keystone 2 Kepler/Hawking EVM device tree
4*f126890aSEmmanuel Vadot *
5*f126890aSEmmanuel Vadot * Copyright (C) 2013-2017 Texas Instruments Incorporated - http://www.ti.com/
6*f126890aSEmmanuel Vadot */
7*f126890aSEmmanuel Vadot/dts-v1/;
8*f126890aSEmmanuel Vadot
9*f126890aSEmmanuel Vadot#include "keystone.dtsi"
10*f126890aSEmmanuel Vadot#include "keystone-k2hk.dtsi"
11*f126890aSEmmanuel Vadot
12*f126890aSEmmanuel Vadot/ {
13*f126890aSEmmanuel Vadot	compatible = "ti,k2hk-evm", "ti,k2hk", "ti,keystone";
14*f126890aSEmmanuel Vadot	model = "Texas Instruments Keystone 2 Kepler/Hawking EVM";
15*f126890aSEmmanuel Vadot
16*f126890aSEmmanuel Vadot	reserved-memory {
17*f126890aSEmmanuel Vadot		#address-cells = <2>;
18*f126890aSEmmanuel Vadot		#size-cells = <2>;
19*f126890aSEmmanuel Vadot		ranges;
20*f126890aSEmmanuel Vadot
21*f126890aSEmmanuel Vadot		dsp_common_memory: dsp-common-memory@81f800000 {
22*f126890aSEmmanuel Vadot			compatible = "shared-dma-pool";
23*f126890aSEmmanuel Vadot			reg = <0x00000008 0x1f800000 0x00000000 0x800000>;
24*f126890aSEmmanuel Vadot			reusable;
25*f126890aSEmmanuel Vadot			status = "okay";
26*f126890aSEmmanuel Vadot		};
27*f126890aSEmmanuel Vadot	};
28*f126890aSEmmanuel Vadot
29*f126890aSEmmanuel Vadot	leds {
30*f126890aSEmmanuel Vadot		compatible = "gpio-leds";
31*f126890aSEmmanuel Vadot		led-debug-1-1 {
32*f126890aSEmmanuel Vadot			label = "keystone:green:debug1";
33*f126890aSEmmanuel Vadot			gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>; /* 12 */
34*f126890aSEmmanuel Vadot		};
35*f126890aSEmmanuel Vadot
36*f126890aSEmmanuel Vadot		led-debug-1-2 {
37*f126890aSEmmanuel Vadot			label = "keystone:red:debug1";
38*f126890aSEmmanuel Vadot			gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>; /* 13 */
39*f126890aSEmmanuel Vadot		};
40*f126890aSEmmanuel Vadot
41*f126890aSEmmanuel Vadot		led-debug-2 {
42*f126890aSEmmanuel Vadot			label = "keystone:blue:debug2";
43*f126890aSEmmanuel Vadot			gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>; /* 14 */
44*f126890aSEmmanuel Vadot		};
45*f126890aSEmmanuel Vadot
46*f126890aSEmmanuel Vadot		led-debug-3 {
47*f126890aSEmmanuel Vadot			label = "keystone:blue:debug3";
48*f126890aSEmmanuel Vadot			gpios = <&gpio0 15 GPIO_ACTIVE_HIGH>; /* 15 */
49*f126890aSEmmanuel Vadot		};
50*f126890aSEmmanuel Vadot	};
51*f126890aSEmmanuel Vadot};
52*f126890aSEmmanuel Vadot
53*f126890aSEmmanuel Vadot&soc0 {
54*f126890aSEmmanuel Vadot		clocks {
55*f126890aSEmmanuel Vadot			refclksys: refclksys {
56*f126890aSEmmanuel Vadot				#clock-cells = <0>;
57*f126890aSEmmanuel Vadot				compatible = "fixed-clock";
58*f126890aSEmmanuel Vadot				clock-frequency = <122880000>;
59*f126890aSEmmanuel Vadot				clock-output-names = "refclk-sys";
60*f126890aSEmmanuel Vadot			};
61*f126890aSEmmanuel Vadot
62*f126890aSEmmanuel Vadot			refclkpass: refclkpass {
63*f126890aSEmmanuel Vadot				#clock-cells = <0>;
64*f126890aSEmmanuel Vadot				compatible = "fixed-clock";
65*f126890aSEmmanuel Vadot				clock-frequency = <122880000>;
66*f126890aSEmmanuel Vadot				clock-output-names = "refclk-pass";
67*f126890aSEmmanuel Vadot			};
68*f126890aSEmmanuel Vadot
69*f126890aSEmmanuel Vadot			refclkarm: refclkarm {
70*f126890aSEmmanuel Vadot				#clock-cells = <0>;
71*f126890aSEmmanuel Vadot				compatible = "fixed-clock";
72*f126890aSEmmanuel Vadot				clock-frequency = <125000000>;
73*f126890aSEmmanuel Vadot				clock-output-names = "refclk-arm";
74*f126890aSEmmanuel Vadot			};
75*f126890aSEmmanuel Vadot
76*f126890aSEmmanuel Vadot			refclkddr3a: refclkddr3a {
77*f126890aSEmmanuel Vadot				#clock-cells = <0>;
78*f126890aSEmmanuel Vadot				compatible = "fixed-clock";
79*f126890aSEmmanuel Vadot				clock-frequency = <100000000>;
80*f126890aSEmmanuel Vadot				clock-output-names = "refclk-ddr3a";
81*f126890aSEmmanuel Vadot			};
82*f126890aSEmmanuel Vadot
83*f126890aSEmmanuel Vadot			refclkddr3b: refclkddr3b {
84*f126890aSEmmanuel Vadot				#clock-cells = <0>;
85*f126890aSEmmanuel Vadot				compatible = "fixed-clock";
86*f126890aSEmmanuel Vadot				clock-frequency = <100000000>;
87*f126890aSEmmanuel Vadot				clock-output-names = "refclk-ddr3b";
88*f126890aSEmmanuel Vadot			};
89*f126890aSEmmanuel Vadot		};
90*f126890aSEmmanuel Vadot};
91*f126890aSEmmanuel Vadot
92*f126890aSEmmanuel Vadot&usb_phy {
93*f126890aSEmmanuel Vadot	status = "okay";
94*f126890aSEmmanuel Vadot};
95*f126890aSEmmanuel Vadot
96*f126890aSEmmanuel Vadot&keystone_usb0 {
97*f126890aSEmmanuel Vadot	status = "okay";
98*f126890aSEmmanuel Vadot};
99*f126890aSEmmanuel Vadot
100*f126890aSEmmanuel Vadot&usb0 {
101*f126890aSEmmanuel Vadot	dr_mode = "host";
102*f126890aSEmmanuel Vadot};
103*f126890aSEmmanuel Vadot
104*f126890aSEmmanuel Vadot&aemif {
105*f126890aSEmmanuel Vadot	cs0 {
106*f126890aSEmmanuel Vadot		#address-cells = <2>;
107*f126890aSEmmanuel Vadot		#size-cells = <1>;
108*f126890aSEmmanuel Vadot		clock-ranges;
109*f126890aSEmmanuel Vadot		ranges;
110*f126890aSEmmanuel Vadot
111*f126890aSEmmanuel Vadot		ti,cs-chipselect = <0>;
112*f126890aSEmmanuel Vadot		/* all timings in nanoseconds */
113*f126890aSEmmanuel Vadot		ti,cs-min-turnaround-ns = <12>;
114*f126890aSEmmanuel Vadot		ti,cs-read-hold-ns = <6>;
115*f126890aSEmmanuel Vadot		ti,cs-read-strobe-ns = <23>;
116*f126890aSEmmanuel Vadot		ti,cs-read-setup-ns = <9>;
117*f126890aSEmmanuel Vadot		ti,cs-write-hold-ns = <8>;
118*f126890aSEmmanuel Vadot		ti,cs-write-strobe-ns = <23>;
119*f126890aSEmmanuel Vadot		ti,cs-write-setup-ns = <8>;
120*f126890aSEmmanuel Vadot
121*f126890aSEmmanuel Vadot		nand@0,0 {
122*f126890aSEmmanuel Vadot			compatible = "ti,keystone-nand","ti,davinci-nand";
123*f126890aSEmmanuel Vadot			#address-cells = <1>;
124*f126890aSEmmanuel Vadot			#size-cells = <1>;
125*f126890aSEmmanuel Vadot			reg = <0 0 0x4000000
126*f126890aSEmmanuel Vadot			       1 0 0x0000100>;
127*f126890aSEmmanuel Vadot
128*f126890aSEmmanuel Vadot			ti,davinci-chipselect = <0>;
129*f126890aSEmmanuel Vadot			ti,davinci-mask-ale = <0x2000>;
130*f126890aSEmmanuel Vadot			ti,davinci-mask-cle = <0x4000>;
131*f126890aSEmmanuel Vadot			ti,davinci-mask-chipsel = <0>;
132*f126890aSEmmanuel Vadot			nand-ecc-mode = "hw";
133*f126890aSEmmanuel Vadot			ti,davinci-ecc-bits = <4>;
134*f126890aSEmmanuel Vadot			nand-on-flash-bbt;
135*f126890aSEmmanuel Vadot
136*f126890aSEmmanuel Vadot			partition@0 {
137*f126890aSEmmanuel Vadot				label = "u-boot";
138*f126890aSEmmanuel Vadot				reg = <0x0 0x100000>;
139*f126890aSEmmanuel Vadot				read-only;
140*f126890aSEmmanuel Vadot			};
141*f126890aSEmmanuel Vadot
142*f126890aSEmmanuel Vadot			partition@100000 {
143*f126890aSEmmanuel Vadot				label = "params";
144*f126890aSEmmanuel Vadot				reg = <0x100000 0x80000>;
145*f126890aSEmmanuel Vadot				read-only;
146*f126890aSEmmanuel Vadot			};
147*f126890aSEmmanuel Vadot
148*f126890aSEmmanuel Vadot			partition@180000 {
149*f126890aSEmmanuel Vadot				label = "ubifs";
150*f126890aSEmmanuel Vadot				reg = <0x180000 0x1fe80000>;
151*f126890aSEmmanuel Vadot			};
152*f126890aSEmmanuel Vadot		};
153*f126890aSEmmanuel Vadot	};
154*f126890aSEmmanuel Vadot};
155*f126890aSEmmanuel Vadot
156*f126890aSEmmanuel Vadot&i2c0 {
157*f126890aSEmmanuel Vadot	eeprom@50 {
158*f126890aSEmmanuel Vadot		compatible = "atmel,24c1024";
159*f126890aSEmmanuel Vadot		reg = <0x50>;
160*f126890aSEmmanuel Vadot	};
161*f126890aSEmmanuel Vadot};
162*f126890aSEmmanuel Vadot
163*f126890aSEmmanuel Vadot&spi0 {
164*f126890aSEmmanuel Vadot	nor_flash: flash@0 {
165*f126890aSEmmanuel Vadot		#address-cells = <1>;
166*f126890aSEmmanuel Vadot		#size-cells = <1>;
167*f126890aSEmmanuel Vadot		compatible = "micron,n25q128a11", "jedec,spi-nor";
168*f126890aSEmmanuel Vadot		spi-max-frequency = <54000000>;
169*f126890aSEmmanuel Vadot		m25p,fast-read;
170*f126890aSEmmanuel Vadot		reg = <0>;
171*f126890aSEmmanuel Vadot
172*f126890aSEmmanuel Vadot		partition@0 {
173*f126890aSEmmanuel Vadot			label = "u-boot-spl";
174*f126890aSEmmanuel Vadot			reg = <0x0 0x80000>;
175*f126890aSEmmanuel Vadot			read-only;
176*f126890aSEmmanuel Vadot		};
177*f126890aSEmmanuel Vadot
178*f126890aSEmmanuel Vadot		partition@1 {
179*f126890aSEmmanuel Vadot			label = "misc";
180*f126890aSEmmanuel Vadot			reg = <0x80000 0xf80000>;
181*f126890aSEmmanuel Vadot		};
182*f126890aSEmmanuel Vadot	};
183*f126890aSEmmanuel Vadot};
184*f126890aSEmmanuel Vadot
185*f126890aSEmmanuel Vadot&mdio {
186*f126890aSEmmanuel Vadot	status = "okay";
187*f126890aSEmmanuel Vadot	ethphy0: ethernet-phy@0 {
188*f126890aSEmmanuel Vadot		compatible = "marvell,88E1111", "ethernet-phy-ieee802.3-c22";
189*f126890aSEmmanuel Vadot		reg = <0>;
190*f126890aSEmmanuel Vadot	};
191*f126890aSEmmanuel Vadot
192*f126890aSEmmanuel Vadot	ethphy1: ethernet-phy@1 {
193*f126890aSEmmanuel Vadot		compatible = "marvell,88E1111", "ethernet-phy-ieee802.3-c22";
194*f126890aSEmmanuel Vadot		reg = <1>;
195*f126890aSEmmanuel Vadot	};
196*f126890aSEmmanuel Vadot};
197*f126890aSEmmanuel Vadot
198*f126890aSEmmanuel Vadot&dsp0 {
199*f126890aSEmmanuel Vadot	memory-region = <&dsp_common_memory>;
200*f126890aSEmmanuel Vadot	status = "okay";
201*f126890aSEmmanuel Vadot};
202*f126890aSEmmanuel Vadot
203*f126890aSEmmanuel Vadot&dsp1 {
204*f126890aSEmmanuel Vadot	memory-region = <&dsp_common_memory>;
205*f126890aSEmmanuel Vadot	status = "okay";
206*f126890aSEmmanuel Vadot};
207*f126890aSEmmanuel Vadot
208*f126890aSEmmanuel Vadot&dsp2 {
209*f126890aSEmmanuel Vadot	memory-region = <&dsp_common_memory>;
210*f126890aSEmmanuel Vadot	status = "okay";
211*f126890aSEmmanuel Vadot};
212*f126890aSEmmanuel Vadot
213*f126890aSEmmanuel Vadot&dsp3 {
214*f126890aSEmmanuel Vadot	memory-region = <&dsp_common_memory>;
215*f126890aSEmmanuel Vadot	status = "okay";
216*f126890aSEmmanuel Vadot};
217*f126890aSEmmanuel Vadot
218*f126890aSEmmanuel Vadot&dsp4 {
219*f126890aSEmmanuel Vadot	memory-region = <&dsp_common_memory>;
220*f126890aSEmmanuel Vadot	status = "okay";
221*f126890aSEmmanuel Vadot};
222*f126890aSEmmanuel Vadot
223*f126890aSEmmanuel Vadot&dsp5 {
224*f126890aSEmmanuel Vadot	memory-region = <&dsp_common_memory>;
225*f126890aSEmmanuel Vadot	status = "okay";
226*f126890aSEmmanuel Vadot};
227*f126890aSEmmanuel Vadot
228*f126890aSEmmanuel Vadot&dsp6 {
229*f126890aSEmmanuel Vadot	memory-region = <&dsp_common_memory>;
230*f126890aSEmmanuel Vadot	status = "okay";
231*f126890aSEmmanuel Vadot};
232*f126890aSEmmanuel Vadot
233*f126890aSEmmanuel Vadot&dsp7 {
234*f126890aSEmmanuel Vadot	memory-region = <&dsp_common_memory>;
235*f126890aSEmmanuel Vadot	status = "okay";
236*f126890aSEmmanuel Vadot};
237