// SPDX-License-Identifier: GPL-2.0
/*
 * dts file for Xilinx ZynqMP ZCU1275 RevB
 *
 * (C) Copyright 2018 - 2021, Xilinx, Inc.
 *
 * Michal Simek <michal.simek@amd.com>
 * Siva Durga Prasad Paladugu <siva.durga.prasad.paladugu@amd.com>
 */

/dts-v1/;

#include "zynqmp.dtsi"
#include "zynqmp-clk-ccf.dtsi"

/ {
	model = "ZynqMP ZCU1275 RevB";
	compatible = "xlnx,zynqmp-zcu1275-revB", "xlnx,zynqmp-zcu1275",
		     "xlnx,zynqmp";

	aliases {
		serial0 = &uart0;
		serial1 = &dcc;
		spi0 = &qspi;
		mmc0 = &sdhci1;
		ethernet0 = &gem1;
	};

	chosen {
		bootargs = "earlycon";
		stdout-path = "serial0:115200n8";
	};

	memory@0 {
		device_type = "memory";
		reg = <0x0 0x0 0x0 0x80000000>;
	};
};

&dcc {
	status = "okay";
};

&gem1 {
	status = "okay";
	phy-mode = "rgmii-id";
	mdio {
		#address-cells = <1>;
		#size-cells = <0>;
		phy1: ethernet-phy@1 {
			reg = <1>; /* KSZ9031RNXIC on AES-FMC-NETW1-G */
			rxc-skew-ps = <1800>; /* Skew control of RX_CLK pad output */
			txc-skew-ps = <1800>; /* Skew control of GTX_CLK pad input */
			txen-skew-ps = <900>; /* Skew control of TX_CTL pad input */
			rxdv-skew-ps = <0>; /* Skew control of RX_CTL pad output */
			rxd0-skew-ps = <0>; /* Skew control of RXD0 pad output */
			rxd1-skew-ps = <0>; /* Skew control of RXD1 pad output */
			rxd2-skew-ps = <0>; /* Skew control of RXD2 pad output */
			rxd3-skew-ps = <0>; /* Skew control of RXD3 pad output */
			txd0-skew-ps = <900>; /* Skew control of TXD0 pad input */
			txd1-skew-ps = <900>; /* Skew control of TXD1 pad input */
			txd2-skew-ps = <900>; /* Skew control of TXD2 pad input */
			txd3-skew-ps = <900>; /* Skew control of TXD3 pad input */
		};
	};
};

&gpio {
	status = "okay";
};

&qspi {
	status = "okay";
	flash@0 {
		compatible = "m25p80", "jedec,spi-nor"; /* 32MB */
		#address-cells = <1>;
		#size-cells = <1>;
		reg = <0x0>;
		spi-tx-bus-width = <1>;
		spi-rx-bus-width = <1>;
		spi-max-frequency = <108000000>; /* Based on DC1 spec */
		partition@0 { /* for testing purpose */
			label = "qspi-fsbl-uboot";
			reg = <0x0 0x100000>;
		};
		partition@100000 { /* for testing purpose */
			label = "qspi-linux";
			reg = <0x100000 0x500000>;
		};
		partition@600000 { /* for testing purpose */
			label = "qspi-device-tree";
			reg = <0x600000 0x20000>;
		};
		partition@620000 { /* for testing purpose */
			label = "qspi-rootfs";
			reg = <0x620000 0x5E0000>;
		};
	};
};

&uart0 {
	status = "okay";
};

&sdhci1 {
	status = "okay";
	/*
	 * 1.0 revision has level shifter and this property should be
	 * removed for supporting UHS mode
	 */
	no-1-8-v;
	xlnx,mio-bank = <1>;
};
