xref: /freebsd/sys/contrib/device-tree/src/arm64/xilinx/zynqmp-zc1751-xm017-dc3.dts (revision 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0)
1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0+
2c66ec88fSEmmanuel Vadot/*
3c66ec88fSEmmanuel Vadot * dts file for Xilinx ZynqMP zc1751-xm017-dc3
4c66ec88fSEmmanuel Vadot *
58cc087a1SEmmanuel Vadot * (C) Copyright 2016 - 2021, Xilinx, Inc.
6c66ec88fSEmmanuel Vadot *
7f126890aSEmmanuel Vadot * Michal Simek <michal.simek@amd.com>
8c66ec88fSEmmanuel Vadot */
9c66ec88fSEmmanuel Vadot
10c66ec88fSEmmanuel Vadot/dts-v1/;
11c66ec88fSEmmanuel Vadot
12c66ec88fSEmmanuel Vadot#include "zynqmp.dtsi"
13c66ec88fSEmmanuel Vadot#include "zynqmp-clk-ccf.dtsi"
148cc087a1SEmmanuel Vadot#include <dt-bindings/phy/phy.h>
15c66ec88fSEmmanuel Vadot
16c66ec88fSEmmanuel Vadot/ {
17c66ec88fSEmmanuel Vadot	model = "ZynqMP zc1751-xm017-dc3 RevA";
18c66ec88fSEmmanuel Vadot	compatible = "xlnx,zynqmp-zc1751", "xlnx,zynqmp";
19c66ec88fSEmmanuel Vadot
20c66ec88fSEmmanuel Vadot	aliases {
21c66ec88fSEmmanuel Vadot		ethernet0 = &gem0;
22c66ec88fSEmmanuel Vadot		i2c0 = &i2c0;
23c66ec88fSEmmanuel Vadot		i2c1 = &i2c1;
24c66ec88fSEmmanuel Vadot		mmc0 = &sdhci1;
25c66ec88fSEmmanuel Vadot		rtc0 = &rtc;
26c66ec88fSEmmanuel Vadot		serial0 = &uart0;
27c66ec88fSEmmanuel Vadot		serial1 = &uart1;
288cc087a1SEmmanuel Vadot		usb0 = &usb0;
298cc087a1SEmmanuel Vadot		usb1 = &usb1;
30c66ec88fSEmmanuel Vadot	};
31c66ec88fSEmmanuel Vadot
32c66ec88fSEmmanuel Vadot	chosen {
33c66ec88fSEmmanuel Vadot		bootargs = "earlycon";
34c66ec88fSEmmanuel Vadot		stdout-path = "serial0:115200n8";
35c66ec88fSEmmanuel Vadot	};
36c66ec88fSEmmanuel Vadot
37c66ec88fSEmmanuel Vadot	memory@0 {
38c66ec88fSEmmanuel Vadot		device_type = "memory";
39c66ec88fSEmmanuel Vadot		reg = <0x0 0x0 0x0 0x80000000>, <0x8 0x00000000 0x0 0x80000000>;
40c66ec88fSEmmanuel Vadot	};
418cc087a1SEmmanuel Vadot
428cc087a1SEmmanuel Vadot	clock_si5338_2: clk26 {
438cc087a1SEmmanuel Vadot		compatible = "fixed-clock";
448cc087a1SEmmanuel Vadot		#clock-cells = <0>;
458cc087a1SEmmanuel Vadot		clock-frequency = <26000000>;
468cc087a1SEmmanuel Vadot	};
478cc087a1SEmmanuel Vadot
488cc087a1SEmmanuel Vadot	clock_si5338_3: clk125 {
498cc087a1SEmmanuel Vadot		compatible = "fixed-clock";
508cc087a1SEmmanuel Vadot		#clock-cells = <0>;
518cc087a1SEmmanuel Vadot		clock-frequency = <125000000>;
528cc087a1SEmmanuel Vadot	};
53c66ec88fSEmmanuel Vadot};
54c66ec88fSEmmanuel Vadot
55c66ec88fSEmmanuel Vadot&fpd_dma_chan1 {
56c66ec88fSEmmanuel Vadot	status = "okay";
57c66ec88fSEmmanuel Vadot};
58c66ec88fSEmmanuel Vadot
59c66ec88fSEmmanuel Vadot&fpd_dma_chan2 {
60c66ec88fSEmmanuel Vadot	status = "okay";
61c66ec88fSEmmanuel Vadot};
62c66ec88fSEmmanuel Vadot
63c66ec88fSEmmanuel Vadot&fpd_dma_chan3 {
64c66ec88fSEmmanuel Vadot	status = "okay";
65c66ec88fSEmmanuel Vadot};
66c66ec88fSEmmanuel Vadot
67c66ec88fSEmmanuel Vadot&fpd_dma_chan4 {
68c66ec88fSEmmanuel Vadot	status = "okay";
69c66ec88fSEmmanuel Vadot};
70c66ec88fSEmmanuel Vadot
71c66ec88fSEmmanuel Vadot&fpd_dma_chan5 {
72c66ec88fSEmmanuel Vadot	status = "okay";
73c66ec88fSEmmanuel Vadot};
74c66ec88fSEmmanuel Vadot
75c66ec88fSEmmanuel Vadot&fpd_dma_chan6 {
76c66ec88fSEmmanuel Vadot	status = "okay";
77c66ec88fSEmmanuel Vadot};
78c66ec88fSEmmanuel Vadot
79c66ec88fSEmmanuel Vadot&fpd_dma_chan7 {
80c66ec88fSEmmanuel Vadot	status = "okay";
81c66ec88fSEmmanuel Vadot};
82c66ec88fSEmmanuel Vadot
83c66ec88fSEmmanuel Vadot&fpd_dma_chan8 {
84c66ec88fSEmmanuel Vadot	status = "okay";
85c66ec88fSEmmanuel Vadot};
86c66ec88fSEmmanuel Vadot
87c66ec88fSEmmanuel Vadot&gem0 {
88c66ec88fSEmmanuel Vadot	status = "okay";
89c66ec88fSEmmanuel Vadot	phy-handle = <&phy0>;
90c66ec88fSEmmanuel Vadot	phy-mode = "rgmii-id";
91*8d13bc63SEmmanuel Vadot	mdio: mdio {
92*8d13bc63SEmmanuel Vadot		#address-cells = <1>;
93*8d13bc63SEmmanuel Vadot		#size-cells = <0>;
94c66ec88fSEmmanuel Vadot		phy0: ethernet-phy@0 { /* VSC8211 */
95c66ec88fSEmmanuel Vadot			reg = <0>;
96c66ec88fSEmmanuel Vadot		};
97c66ec88fSEmmanuel Vadot	};
98*8d13bc63SEmmanuel Vadot};
99c66ec88fSEmmanuel Vadot
100c66ec88fSEmmanuel Vadot&gpio {
101c66ec88fSEmmanuel Vadot	status = "okay";
102c66ec88fSEmmanuel Vadot};
103c66ec88fSEmmanuel Vadot
104c66ec88fSEmmanuel Vadot/* just eeprom here */
105c66ec88fSEmmanuel Vadot&i2c0 {
106c66ec88fSEmmanuel Vadot	status = "okay";
107c66ec88fSEmmanuel Vadot	clock-frequency = <400000>;
108c66ec88fSEmmanuel Vadot
109c66ec88fSEmmanuel Vadot	tca6416_u26: gpio@20 {
110c66ec88fSEmmanuel Vadot		compatible = "ti,tca6416";
111c66ec88fSEmmanuel Vadot		reg = <0x20>;
112c66ec88fSEmmanuel Vadot		gpio-controller;
113c66ec88fSEmmanuel Vadot		#gpio-cells = <2>;
114c66ec88fSEmmanuel Vadot		/* IRQ not connected */
115c66ec88fSEmmanuel Vadot	};
116c66ec88fSEmmanuel Vadot
117c66ec88fSEmmanuel Vadot	rtc@68 {
118c66ec88fSEmmanuel Vadot		compatible = "dallas,ds1339";
119c66ec88fSEmmanuel Vadot		reg = <0x68>;
120c66ec88fSEmmanuel Vadot	};
121c66ec88fSEmmanuel Vadot};
122c66ec88fSEmmanuel Vadot
123c66ec88fSEmmanuel Vadot/* eeprom24c02 and SE98A temp chip pca9306 */
124c66ec88fSEmmanuel Vadot&i2c1 {
125c66ec88fSEmmanuel Vadot	status = "okay";
126c66ec88fSEmmanuel Vadot	clock-frequency = <400000>;
127c66ec88fSEmmanuel Vadot};
128c66ec88fSEmmanuel Vadot
1298cc087a1SEmmanuel Vadot/* MT29F64G08AECDBJ4-6 */
1308cc087a1SEmmanuel Vadot&nand0 {
1318cc087a1SEmmanuel Vadot	status = "okay";
1328cc087a1SEmmanuel Vadot	arasan,has-mdma;
1338cc087a1SEmmanuel Vadot	num-cs = <2>;
1348cc087a1SEmmanuel Vadot};
1358cc087a1SEmmanuel Vadot
1368cc087a1SEmmanuel Vadot&psgtr {
1378cc087a1SEmmanuel Vadot	status = "okay";
1388cc087a1SEmmanuel Vadot	/* usb3, sata */
1398cc087a1SEmmanuel Vadot	clocks = <&clock_si5338_2>, <&clock_si5338_3>;
1408cc087a1SEmmanuel Vadot	clock-names = "ref2", "ref3";
1418cc087a1SEmmanuel Vadot};
1428cc087a1SEmmanuel Vadot
143c66ec88fSEmmanuel Vadot&rtc {
144c66ec88fSEmmanuel Vadot	status = "okay";
145c66ec88fSEmmanuel Vadot};
146c66ec88fSEmmanuel Vadot
147c66ec88fSEmmanuel Vadot&sata {
148c66ec88fSEmmanuel Vadot	status = "okay";
149c66ec88fSEmmanuel Vadot	/* SATA phy OOB timing settings */
150c66ec88fSEmmanuel Vadot	ceva,p0-cominit-params = /bits/ 8 <0x1B 0x4D 0x18 0x28>;
151c66ec88fSEmmanuel Vadot	ceva,p0-comwake-params = /bits/ 8 <0x06 0x19 0x08 0x0E>;
152c66ec88fSEmmanuel Vadot	ceva,p0-burst-params = /bits/ 8 <0x13 0x08 0x4A 0x06>;
153c66ec88fSEmmanuel Vadot	ceva,p0-retry-params = /bits/ 16 <0x96A4 0x3FFC>;
154c66ec88fSEmmanuel Vadot	ceva,p1-cominit-params = /bits/ 8 <0x1B 0x4D 0x18 0x28>;
155c66ec88fSEmmanuel Vadot	ceva,p1-comwake-params = /bits/ 8 <0x06 0x19 0x08 0x0E>;
156c66ec88fSEmmanuel Vadot	ceva,p1-burst-params = /bits/ 8 <0x13 0x08 0x4A 0x06>;
157c66ec88fSEmmanuel Vadot	ceva,p1-retry-params = /bits/ 16 <0x96A4 0x3FFC>;
1588cc087a1SEmmanuel Vadot	phy-names = "sata-phy";
1598cc087a1SEmmanuel Vadot	phys = <&psgtr 2 PHY_TYPE_SATA 0 3>;
160c66ec88fSEmmanuel Vadot};
161c66ec88fSEmmanuel Vadot
162c66ec88fSEmmanuel Vadot&sdhci1 { /* emmc with some settings */
163c66ec88fSEmmanuel Vadot	status = "okay";
164c66ec88fSEmmanuel Vadot};
165c66ec88fSEmmanuel Vadot
166c66ec88fSEmmanuel Vadot/* main */
167c66ec88fSEmmanuel Vadot&uart0 {
168c66ec88fSEmmanuel Vadot	status = "okay";
169c66ec88fSEmmanuel Vadot};
170c66ec88fSEmmanuel Vadot
171c66ec88fSEmmanuel Vadot/* DB9 */
172c66ec88fSEmmanuel Vadot&uart1 {
173c66ec88fSEmmanuel Vadot	status = "okay";
174c66ec88fSEmmanuel Vadot};
175c66ec88fSEmmanuel Vadot
176c66ec88fSEmmanuel Vadot&usb0 {
177c66ec88fSEmmanuel Vadot	status = "okay";
1788cc087a1SEmmanuel Vadot	phy-names = "usb3-phy";
1798cc087a1SEmmanuel Vadot	phys = <&psgtr 0 PHY_TYPE_USB3 0 2>;
1808cc087a1SEmmanuel Vadot};
1818cc087a1SEmmanuel Vadot
1828cc087a1SEmmanuel Vadot&dwc3_0 {
1838cc087a1SEmmanuel Vadot	status = "okay";
184c66ec88fSEmmanuel Vadot	dr_mode = "host";
1858cc087a1SEmmanuel Vadot	snps,usb3_lpm_capable;
1868cc087a1SEmmanuel Vadot	maximum-speed = "super-speed";
187c66ec88fSEmmanuel Vadot};
188c66ec88fSEmmanuel Vadot
189c66ec88fSEmmanuel Vadot/* ULPI SMSC USB3320 */
190c66ec88fSEmmanuel Vadot&usb1 {
191c66ec88fSEmmanuel Vadot	status = "okay";
1928cc087a1SEmmanuel Vadot	phy-names = "usb3-phy";
1938cc087a1SEmmanuel Vadot	phys = <&psgtr 3 PHY_TYPE_USB3 1 2>;
1948cc087a1SEmmanuel Vadot};
1958cc087a1SEmmanuel Vadot
1968cc087a1SEmmanuel Vadot&dwc3_1 {
1978cc087a1SEmmanuel Vadot	status = "okay";
198c66ec88fSEmmanuel Vadot	dr_mode = "host";
1998cc087a1SEmmanuel Vadot	snps,usb3_lpm_capable;
2008cc087a1SEmmanuel Vadot	maximum-speed = "super-speed";
201c66ec88fSEmmanuel Vadot};
202