118a952ceSMichal Simek// SPDX-License-Identifier: GPL-2.0+
208ac386bSMichal Simek/*
308ac386bSMichal Simek * dts file for Xilinx ZynqMP zc1751-xm018-dc4
408ac386bSMichal Simek *
518a952ceSMichal Simek * (C) Copyright 2015 - 2018, Xilinx, Inc.
608ac386bSMichal Simek *
708ac386bSMichal Simek * Michal Simek <michal.simek@xilinx.com>
808ac386bSMichal Simek */
908ac386bSMichal Simek
1008ac386bSMichal Simek/dts-v1/;
1108ac386bSMichal Simek
1208ac386bSMichal Simek#include "zynqmp.dtsi"
13ee4983f7SMichal Simek#include "zynqmp-clk-ccf.dtsi"
1408ac386bSMichal Simek
1508ac386bSMichal Simek/ {
1608ac386bSMichal Simek	model = "ZynqMP zc1751-xm018-dc4";
1708ac386bSMichal Simek	compatible = "xlnx,zynqmp-zc1751", "xlnx,zynqmp";
1808ac386bSMichal Simek
1908ac386bSMichal Simek	aliases {
2008ac386bSMichal Simek		can0 = &can0;
2108ac386bSMichal Simek		can1 = &can1;
2208ac386bSMichal Simek		ethernet0 = &gem0;
2308ac386bSMichal Simek		ethernet1 = &gem1;
2408ac386bSMichal Simek		ethernet2 = &gem2;
2508ac386bSMichal Simek		ethernet3 = &gem3;
2608ac386bSMichal Simek		gpio0 = &gpio;
2708ac386bSMichal Simek		i2c0 = &i2c0;
2808ac386bSMichal Simek		i2c1 = &i2c1;
2908ac386bSMichal Simek		rtc0 = &rtc;
3008ac386bSMichal Simek		serial0 = &uart0;
3108ac386bSMichal Simek		serial1 = &uart1;
3208ac386bSMichal Simek		spi0 = &qspi;
3308ac386bSMichal Simek	};
3408ac386bSMichal Simek
3508ac386bSMichal Simek	chosen {
3608ac386bSMichal Simek		bootargs = "earlycon";
3708ac386bSMichal Simek		stdout-path = "serial0:115200n8";
3808ac386bSMichal Simek	};
3908ac386bSMichal Simek
40c926e6fbSMichal Simek	memory@0 {
4108ac386bSMichal Simek		device_type = "memory";
4208ac386bSMichal Simek		reg = <0x0 0x0 0x0 0x80000000>, <0x8 0x00000000 0x0 0x80000000>;
4308ac386bSMichal Simek	};
4408ac386bSMichal Simek};
4508ac386bSMichal Simek
4608ac386bSMichal Simek&can0 {
4708ac386bSMichal Simek	status = "okay";
4808ac386bSMichal Simek};
4908ac386bSMichal Simek
5008ac386bSMichal Simek&can1 {
5108ac386bSMichal Simek	status = "okay";
5208ac386bSMichal Simek};
5308ac386bSMichal Simek
5408ac386bSMichal Simek&fpd_dma_chan1 {
5508ac386bSMichal Simek	status = "okay";
5608ac386bSMichal Simek};
5708ac386bSMichal Simek
5808ac386bSMichal Simek&fpd_dma_chan2 {
5908ac386bSMichal Simek	status = "okay";
6008ac386bSMichal Simek};
6108ac386bSMichal Simek
6208ac386bSMichal Simek&fpd_dma_chan3 {
6308ac386bSMichal Simek	status = "okay";
6408ac386bSMichal Simek};
6508ac386bSMichal Simek
6608ac386bSMichal Simek&fpd_dma_chan4 {
6708ac386bSMichal Simek	status = "okay";
6808ac386bSMichal Simek};
6908ac386bSMichal Simek
7008ac386bSMichal Simek&fpd_dma_chan5 {
7108ac386bSMichal Simek	status = "okay";
7208ac386bSMichal Simek};
7308ac386bSMichal Simek
7408ac386bSMichal Simek&fpd_dma_chan6 {
7508ac386bSMichal Simek	status = "okay";
7608ac386bSMichal Simek};
7708ac386bSMichal Simek
7808ac386bSMichal Simek&fpd_dma_chan7 {
7908ac386bSMichal Simek	status = "okay";
8008ac386bSMichal Simek};
8108ac386bSMichal Simek
8208ac386bSMichal Simek&fpd_dma_chan8 {
8308ac386bSMichal Simek	status = "okay";
8408ac386bSMichal Simek};
8508ac386bSMichal Simek
8608ac386bSMichal Simek&lpd_dma_chan1 {
8708ac386bSMichal Simek	status = "okay";
8808ac386bSMichal Simek};
8908ac386bSMichal Simek
9008ac386bSMichal Simek&lpd_dma_chan2 {
9108ac386bSMichal Simek	status = "okay";
9208ac386bSMichal Simek};
9308ac386bSMichal Simek
9408ac386bSMichal Simek&lpd_dma_chan3 {
9508ac386bSMichal Simek	status = "okay";
9608ac386bSMichal Simek};
9708ac386bSMichal Simek
9808ac386bSMichal Simek&lpd_dma_chan4 {
9908ac386bSMichal Simek	status = "okay";
10008ac386bSMichal Simek};
10108ac386bSMichal Simek
10208ac386bSMichal Simek&lpd_dma_chan5 {
10308ac386bSMichal Simek	status = "okay";
10408ac386bSMichal Simek};
10508ac386bSMichal Simek
10608ac386bSMichal Simek&lpd_dma_chan6 {
10708ac386bSMichal Simek	status = "okay";
10808ac386bSMichal Simek};
10908ac386bSMichal Simek
11008ac386bSMichal Simek&lpd_dma_chan7 {
11108ac386bSMichal Simek	status = "okay";
11208ac386bSMichal Simek};
11308ac386bSMichal Simek
11408ac386bSMichal Simek&lpd_dma_chan8 {
11508ac386bSMichal Simek	status = "okay";
11608ac386bSMichal Simek};
11708ac386bSMichal Simek
11808ac386bSMichal Simek&xlnx_dp {
11908ac386bSMichal Simek	status = "okay";
12008ac386bSMichal Simek};
12108ac386bSMichal Simek
12208ac386bSMichal Simek&xlnx_dpdma {
12308ac386bSMichal Simek	status = "okay";
12408ac386bSMichal Simek};
12508ac386bSMichal Simek
12608ac386bSMichal Simek&gem0 {
12708ac386bSMichal Simek	status = "okay";
12808ac386bSMichal Simek	phy-mode = "rgmii-id";
12908ac386bSMichal Simek	phy-handle = <&ethernet_phy0>;
13008ac386bSMichal Simek	ethernet_phy0: ethernet-phy@0 { /* Marvell 88e1512 */
13108ac386bSMichal Simek		reg = <0>;
13208ac386bSMichal Simek	};
13308ac386bSMichal Simek	ethernet_phy7: ethernet-phy@7 { /* Vitesse VSC8211 */
13408ac386bSMichal Simek		reg = <7>;
13508ac386bSMichal Simek	};
13608ac386bSMichal Simek	ethernet_phy3: ethernet-phy@3 { /* Realtek RTL8211DN */
13708ac386bSMichal Simek		reg = <3>;
13808ac386bSMichal Simek	};
13908ac386bSMichal Simek	ethernet_phy8: ethernet-phy@8 { /* Vitesse VSC8211 */
14008ac386bSMichal Simek		reg = <8>;
14108ac386bSMichal Simek	};
14208ac386bSMichal Simek};
14308ac386bSMichal Simek
14408ac386bSMichal Simek&gem1 {
14508ac386bSMichal Simek	status = "okay";
14608ac386bSMichal Simek	phy-mode = "rgmii-id";
14708ac386bSMichal Simek	phy-handle = <&ethernet_phy7>;
14808ac386bSMichal Simek};
14908ac386bSMichal Simek
15008ac386bSMichal Simek&gem2 {
15108ac386bSMichal Simek	status = "okay";
15208ac386bSMichal Simek	phy-mode = "rgmii-id";
15308ac386bSMichal Simek	phy-handle = <&ethernet_phy3>;
15408ac386bSMichal Simek};
15508ac386bSMichal Simek
15608ac386bSMichal Simek&gem3 {
15708ac386bSMichal Simek	status = "okay";
15808ac386bSMichal Simek	phy-mode = "rgmii-id";
15908ac386bSMichal Simek	phy-handle = <&ethernet_phy8>;
16008ac386bSMichal Simek};
16108ac386bSMichal Simek
16208ac386bSMichal Simek&gpio {
16308ac386bSMichal Simek	status = "okay";
16408ac386bSMichal Simek};
16508ac386bSMichal Simek
16608ac386bSMichal Simek&gpu {
16708ac386bSMichal Simek	status = "okay";
16808ac386bSMichal Simek};
16908ac386bSMichal Simek
17008ac386bSMichal Simek&i2c0 {
17108ac386bSMichal Simek	clock-frequency = <400000>;
17208ac386bSMichal Simek	status = "okay";
17308ac386bSMichal Simek};
17408ac386bSMichal Simek
17508ac386bSMichal Simek&i2c1 {
17608ac386bSMichal Simek	clock-frequency = <400000>;
17708ac386bSMichal Simek	status = "okay";
17808ac386bSMichal Simek};
17908ac386bSMichal Simek
180*9cd26aafSSiva Durga Prasad Paladugu&qspi {
181*9cd26aafSSiva Durga Prasad Paladugu	status = "okay";
182*9cd26aafSSiva Durga Prasad Paladugu	flash@0 {
183*9cd26aafSSiva Durga Prasad Paladugu		compatible = "m25p80", "spi-flash"; /* 32MB */
184*9cd26aafSSiva Durga Prasad Paladugu		#address-cells = <1>;
185*9cd26aafSSiva Durga Prasad Paladugu		#size-cells = <1>;
186*9cd26aafSSiva Durga Prasad Paladugu		reg = <0x0>;
187*9cd26aafSSiva Durga Prasad Paladugu		spi-tx-bus-width = <1>;
188*9cd26aafSSiva Durga Prasad Paladugu		spi-rx-bus-width = <4>; /* also DUAL configuration possible */
189*9cd26aafSSiva Durga Prasad Paladugu		spi-max-frequency = <108000000>; /* Based on DC1 spec */
190*9cd26aafSSiva Durga Prasad Paladugu		partition@qspi-fsbl-uboot { /* for testing purpose */
191*9cd26aafSSiva Durga Prasad Paladugu			label = "qspi-fsbl-uboot";
192*9cd26aafSSiva Durga Prasad Paladugu			reg = <0x0 0x100000>;
193*9cd26aafSSiva Durga Prasad Paladugu		};
194*9cd26aafSSiva Durga Prasad Paladugu		partition@qspi-linux { /* for testing purpose */
195*9cd26aafSSiva Durga Prasad Paladugu			label = "qspi-linux";
196*9cd26aafSSiva Durga Prasad Paladugu			reg = <0x100000 0x500000>;
197*9cd26aafSSiva Durga Prasad Paladugu		};
198*9cd26aafSSiva Durga Prasad Paladugu		partition@qspi-device-tree { /* for testing purpose */
199*9cd26aafSSiva Durga Prasad Paladugu			label = "qspi-device-tree";
200*9cd26aafSSiva Durga Prasad Paladugu			reg = <0x600000 0x20000>;
201*9cd26aafSSiva Durga Prasad Paladugu		};
202*9cd26aafSSiva Durga Prasad Paladugu		partition@qspi-rootfs { /* for testing purpose */
203*9cd26aafSSiva Durga Prasad Paladugu			label = "qspi-rootfs";
204*9cd26aafSSiva Durga Prasad Paladugu			reg = <0x620000 0x5E0000>;
205*9cd26aafSSiva Durga Prasad Paladugu		};
206*9cd26aafSSiva Durga Prasad Paladugu	};
207*9cd26aafSSiva Durga Prasad Paladugu};
208*9cd26aafSSiva Durga Prasad Paladugu
20908ac386bSMichal Simek&rtc {
21008ac386bSMichal Simek	status = "okay";
21108ac386bSMichal Simek};
21208ac386bSMichal Simek
21308ac386bSMichal Simek&uart0 {
21408ac386bSMichal Simek	status = "okay";
21508ac386bSMichal Simek};
21608ac386bSMichal Simek
21708ac386bSMichal Simek&uart1 {
21808ac386bSMichal Simek	status = "okay";
21908ac386bSMichal Simek};
22008ac386bSMichal Simek
22108ac386bSMichal Simek&watchdog0 {
22208ac386bSMichal Simek	status = "okay";
22308ac386bSMichal Simek};
224