1*10aaa358SMichal Simek// SPDX-License-Identifier: GPL-2.0+
2*10aaa358SMichal Simek/*
3*10aaa358SMichal Simek * dts file for Xilinx ZynqMP zc1751-xm017-dc3
4*10aaa358SMichal Simek *
5*10aaa358SMichal Simek * (C) Copyright 2016 - 2018, Xilinx, Inc.
6*10aaa358SMichal Simek *
7*10aaa358SMichal Simek * Michal Simek <michal.simek@xilinx.com>
8*10aaa358SMichal Simek */
9*10aaa358SMichal Simek
10*10aaa358SMichal Simek/dts-v1/;
11*10aaa358SMichal Simek
12*10aaa358SMichal Simek#include "zynqmp.dtsi"
13*10aaa358SMichal Simek#include "zynqmp-clk-ccf.dtsi"
14*10aaa358SMichal Simek
15*10aaa358SMichal Simek/ {
16*10aaa358SMichal Simek	model = "ZynqMP zc1751-xm017-dc3 RevA";
17*10aaa358SMichal Simek	compatible = "xlnx,zynqmp-zc1751", "xlnx,zynqmp";
18*10aaa358SMichal Simek
19*10aaa358SMichal Simek	aliases {
20*10aaa358SMichal Simek		ethernet0 = &gem0;
21*10aaa358SMichal Simek		gpio0 = &gpio;
22*10aaa358SMichal Simek		i2c0 = &i2c0;
23*10aaa358SMichal Simek		i2c1 = &i2c1;
24*10aaa358SMichal Simek		mmc0 = &sdhci1;
25*10aaa358SMichal Simek		rtc0 = &rtc;
26*10aaa358SMichal Simek		serial0 = &uart0;
27*10aaa358SMichal Simek		serial1 = &uart1;
28*10aaa358SMichal Simek		usb0 = &usb0;
29*10aaa358SMichal Simek		usb1 = &usb1;
30*10aaa358SMichal Simek	};
31*10aaa358SMichal Simek
32*10aaa358SMichal Simek	chosen {
33*10aaa358SMichal Simek		bootargs = "earlycon";
34*10aaa358SMichal Simek		stdout-path = "serial0:115200n8";
35*10aaa358SMichal Simek	};
36*10aaa358SMichal Simek
37*10aaa358SMichal Simek	memory@0 {
38*10aaa358SMichal Simek		device_type = "memory";
39*10aaa358SMichal Simek		reg = <0x0 0x0 0x0 0x80000000>, <0x8 0x00000000 0x0 0x80000000>;
40*10aaa358SMichal Simek	};
41*10aaa358SMichal Simek};
42*10aaa358SMichal Simek
43*10aaa358SMichal Simek&fpd_dma_chan1 {
44*10aaa358SMichal Simek	status = "okay";
45*10aaa358SMichal Simek};
46*10aaa358SMichal Simek
47*10aaa358SMichal Simek&fpd_dma_chan2 {
48*10aaa358SMichal Simek	status = "okay";
49*10aaa358SMichal Simek};
50*10aaa358SMichal Simek
51*10aaa358SMichal Simek&fpd_dma_chan3 {
52*10aaa358SMichal Simek	status = "okay";
53*10aaa358SMichal Simek};
54*10aaa358SMichal Simek
55*10aaa358SMichal Simek&fpd_dma_chan4 {
56*10aaa358SMichal Simek	status = "okay";
57*10aaa358SMichal Simek};
58*10aaa358SMichal Simek
59*10aaa358SMichal Simek&fpd_dma_chan5 {
60*10aaa358SMichal Simek	status = "okay";
61*10aaa358SMichal Simek};
62*10aaa358SMichal Simek
63*10aaa358SMichal Simek&fpd_dma_chan6 {
64*10aaa358SMichal Simek	status = "okay";
65*10aaa358SMichal Simek};
66*10aaa358SMichal Simek
67*10aaa358SMichal Simek&fpd_dma_chan7 {
68*10aaa358SMichal Simek	status = "okay";
69*10aaa358SMichal Simek};
70*10aaa358SMichal Simek
71*10aaa358SMichal Simek&fpd_dma_chan8 {
72*10aaa358SMichal Simek	status = "okay";
73*10aaa358SMichal Simek};
74*10aaa358SMichal Simek
75*10aaa358SMichal Simek&gem0 {
76*10aaa358SMichal Simek	status = "okay";
77*10aaa358SMichal Simek	phy-handle = <&phy0>;
78*10aaa358SMichal Simek	phy-mode = "rgmii-id";
79*10aaa358SMichal Simek	phy0: phy@0 { /* VSC8211 */
80*10aaa358SMichal Simek		reg = <0>;
81*10aaa358SMichal Simek	};
82*10aaa358SMichal Simek};
83*10aaa358SMichal Simek
84*10aaa358SMichal Simek&gpio {
85*10aaa358SMichal Simek	status = "okay";
86*10aaa358SMichal Simek};
87*10aaa358SMichal Simek
88*10aaa358SMichal Simek/* just eeprom here */
89*10aaa358SMichal Simek&i2c0 {
90*10aaa358SMichal Simek	status = "okay";
91*10aaa358SMichal Simek	clock-frequency = <400000>;
92*10aaa358SMichal Simek
93*10aaa358SMichal Simek	tca6416_u26: gpio@20 {
94*10aaa358SMichal Simek		compatible = "ti,tca6416";
95*10aaa358SMichal Simek		reg = <0x20>;
96*10aaa358SMichal Simek		gpio-controller;
97*10aaa358SMichal Simek		#gpio-cells = <2>;
98*10aaa358SMichal Simek		/* IRQ not connected */
99*10aaa358SMichal Simek	};
100*10aaa358SMichal Simek
101*10aaa358SMichal Simek	rtc@68 {
102*10aaa358SMichal Simek		compatible = "dallas,ds1339";
103*10aaa358SMichal Simek		reg = <0x68>;
104*10aaa358SMichal Simek	};
105*10aaa358SMichal Simek};
106*10aaa358SMichal Simek
107*10aaa358SMichal Simek/* eeprom24c02 and SE98A temp chip pca9306 */
108*10aaa358SMichal Simek&i2c1 {
109*10aaa358SMichal Simek	status = "okay";
110*10aaa358SMichal Simek	clock-frequency = <400000>;
111*10aaa358SMichal Simek};
112*10aaa358SMichal Simek
113*10aaa358SMichal Simek/* MT29F64G08AECDBJ4-6 */
114*10aaa358SMichal Simek&nand0 {
115*10aaa358SMichal Simek	status = "okay";
116*10aaa358SMichal Simek	arasan,has-mdma;
117*10aaa358SMichal Simek	num-cs = <2>;
118*10aaa358SMichal Simek
119*10aaa358SMichal Simek	partition@0 {	/* for testing purpose */
120*10aaa358SMichal Simek		label = "nand-fsbl-uboot";
121*10aaa358SMichal Simek		reg = <0x0 0x0 0x400000>;
122*10aaa358SMichal Simek	};
123*10aaa358SMichal Simek	partition@1 {	/* for testing purpose */
124*10aaa358SMichal Simek		label = "nand-linux";
125*10aaa358SMichal Simek		reg = <0x0 0x400000 0x1400000>;
126*10aaa358SMichal Simek	};
127*10aaa358SMichal Simek	partition@2 {	/* for testing purpose */
128*10aaa358SMichal Simek		label = "nand-device-tree";
129*10aaa358SMichal Simek		reg = <0x0 0x1800000 0x400000>;
130*10aaa358SMichal Simek	};
131*10aaa358SMichal Simek	partition@3 {	/* for testing purpose */
132*10aaa358SMichal Simek		label = "nand-rootfs";
133*10aaa358SMichal Simek		reg = <0x0 0x1C00000 0x1400000>;
134*10aaa358SMichal Simek	};
135*10aaa358SMichal Simek	partition@4 {	/* for testing purpose */
136*10aaa358SMichal Simek		label = "nand-bitstream";
137*10aaa358SMichal Simek		reg = <0x0 0x3000000 0x400000>;
138*10aaa358SMichal Simek	};
139*10aaa358SMichal Simek	partition@5 {	/* for testing purpose */
140*10aaa358SMichal Simek		label = "nand-misc";
141*10aaa358SMichal Simek		reg = <0x0 0x3400000 0xFCC00000>;
142*10aaa358SMichal Simek	};
143*10aaa358SMichal Simek
144*10aaa358SMichal Simek	partition@6 {	/* for testing purpose */
145*10aaa358SMichal Simek		label = "nand1-fsbl-uboot";
146*10aaa358SMichal Simek		reg = <0x1 0x0 0x400000>;
147*10aaa358SMichal Simek	};
148*10aaa358SMichal Simek	partition@7 {	/* for testing purpose */
149*10aaa358SMichal Simek		label = "nand1-linux";
150*10aaa358SMichal Simek		reg = <0x1 0x400000 0x1400000>;
151*10aaa358SMichal Simek	};
152*10aaa358SMichal Simek	partition@8 {	/* for testing purpose */
153*10aaa358SMichal Simek		label = "nand1-device-tree";
154*10aaa358SMichal Simek		reg = <0x1 0x1800000 0x400000>;
155*10aaa358SMichal Simek	};
156*10aaa358SMichal Simek	partition@9 {	/* for testing purpose */
157*10aaa358SMichal Simek		label = "nand1-rootfs";
158*10aaa358SMichal Simek		reg = <0x1 0x1C00000 0x1400000>;
159*10aaa358SMichal Simek	};
160*10aaa358SMichal Simek	partition@10 {	/* for testing purpose */
161*10aaa358SMichal Simek		label = "nand1-bitstream";
162*10aaa358SMichal Simek		reg = <0x1 0x3000000 0x400000>;
163*10aaa358SMichal Simek	};
164*10aaa358SMichal Simek	partition@11 {	/* for testing purpose */
165*10aaa358SMichal Simek		label = "nand1-misc";
166*10aaa358SMichal Simek		reg = <0x1 0x3400000 0xFCC00000>;
167*10aaa358SMichal Simek	};
168*10aaa358SMichal Simek};
169*10aaa358SMichal Simek
170*10aaa358SMichal Simek&rtc {
171*10aaa358SMichal Simek	status = "okay";
172*10aaa358SMichal Simek};
173*10aaa358SMichal Simek
174*10aaa358SMichal Simek&sata {
175*10aaa358SMichal Simek	status = "okay";
176*10aaa358SMichal Simek	/* SATA phy OOB timing settings */
177*10aaa358SMichal Simek	ceva,p0-cominit-params = /bits/ 8 <0x1B 0x4D 0x18 0x28>;
178*10aaa358SMichal Simek	ceva,p0-comwake-params = /bits/ 8 <0x06 0x19 0x08 0x0E>;
179*10aaa358SMichal Simek	ceva,p0-burst-params = /bits/ 8 <0x13 0x08 0x4A 0x06>;
180*10aaa358SMichal Simek	ceva,p0-retry-params = /bits/ 16 <0x96A4 0x3FFC>;
181*10aaa358SMichal Simek	ceva,p1-cominit-params = /bits/ 8 <0x1B 0x4D 0x18 0x28>;
182*10aaa358SMichal Simek	ceva,p1-comwake-params = /bits/ 8 <0x06 0x19 0x08 0x0E>;
183*10aaa358SMichal Simek	ceva,p1-burst-params = /bits/ 8 <0x13 0x08 0x4A 0x06>;
184*10aaa358SMichal Simek	ceva,p1-retry-params = /bits/ 16 <0x96A4 0x3FFC>;
185*10aaa358SMichal Simek};
186*10aaa358SMichal Simek
187*10aaa358SMichal Simek&sdhci1 { /* emmc with some settings */
188*10aaa358SMichal Simek	status = "okay";
189*10aaa358SMichal Simek};
190*10aaa358SMichal Simek
191*10aaa358SMichal Simek/* main */
192*10aaa358SMichal Simek&uart0 {
193*10aaa358SMichal Simek	status = "okay";
194*10aaa358SMichal Simek};
195*10aaa358SMichal Simek
196*10aaa358SMichal Simek/* DB9 */
197*10aaa358SMichal Simek&uart1 {
198*10aaa358SMichal Simek	status = "okay";
199*10aaa358SMichal Simek};
200*10aaa358SMichal Simek
201*10aaa358SMichal Simek&usb0 {
202*10aaa358SMichal Simek	status = "okay";
203*10aaa358SMichal Simek	dr_mode = "host";
204*10aaa358SMichal Simek};
205*10aaa358SMichal Simek
206*10aaa358SMichal Simek/* ULPI SMSC USB3320 */
207*10aaa358SMichal Simek&usb1 {
208*10aaa358SMichal Simek	status = "okay";
209*10aaa358SMichal Simek	dr_mode = "host";
210*10aaa358SMichal Simek};
211