/*
 *  Copyright (C) 2014 Steffen Trumtrar <s.trumtrar@pengutronix.de>
 *
 * SPDX-License-Identifier:	GPL-2.0+
 */

#include "socfpga_cyclone5.dtsi"

/ {
	model = "EBV SOCrates";
	compatible = "ebv,socrates", "altr,socfpga-cyclone5", "altr,socfpga";

	chosen {
		bootargs = "console=ttyS0,115200";
	};

	aliases {
		/*
		 * This allows the ethaddr uboot environment variable
		 * contents to be added to the gmac1 device tree blob.
		 */
		ethernet0 = &gmac1;
		udc0 = &usb1;
	};

	memory {
		name = "memory";
		device_type = "memory";
		reg = <0x0 0x40000000>; /* 1GB */
	};

	soc {
		u-boot,dm-pre-reloc;
	};
};

&gmac1 {
	status = "okay";
	phy-mode = "rgmii";

	rxd0-skew-ps = <0>;
	rxd1-skew-ps = <0>;
	rxd2-skew-ps = <0>;
	rxd3-skew-ps = <0>;
	txen-skew-ps = <0>;
	txc-skew-ps = <2600>;
	rxdv-skew-ps = <0>;
	rxc-skew-ps = <2000>;
};

&i2c0 {
	status = "okay";

	rtc: rtc@68 {
		compatible = "stm,m41t82";
		reg = <0x68>;
	};
};

&mmc0 {
	status = "okay";
	u-boot,dm-pre-reloc;
};

&qspi {
	status = "okay";

	flash0: n25q00@0 {
		#address-cells = <1>;
		#size-cells = <1>;
		compatible = "n25q00";
		reg = <0>;      /* chip select */
		spi-max-frequency = <50000000>;
		m25p,fast-read;
		page-size = <256>;
		block-size = <16>; /* 2^16, 64KB */
		read-delay = <4>;  /* delay value in read data capture register */
		tshsl-ns = <50>;
		tsd2d-ns = <50>;
		tchsh-ns = <4>;
		tslch-ns = <4>;
	};
};

&usb1 {
	disable-over-current;
	status = "okay";
};
