/*
 * Device Tree Source for UniPhier ProXstream2 Gentil Board
 *
 * Copyright (C) 2015 Masahiro Yamada <yamada.masahiro@socionext.com>
 *
 * SPDX-License-Identifier:	GPL-2.0+
 */

/dts-v1/;
/include/ "uniphier-proxstream2.dtsi"

/ {
	model = "UniPhier ProXstream2 Gentil Board";
	compatible = "socionext,proxstream2-gentil", "socionext,proxstream2";

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

	chosen {
		stdout-path = "serial2:115200n8";
	};

	aliases {
		serial0 = &serial0;
		serial1 = &serial1;
		serial2 = &serial2;
		i2c0 = &i2c0;
		i2c2 = &i2c2;
		i2c4 = &i2c4;
		i2c5 = &i2c5;
		i2c6 = &i2c6;
	};
};

&serial2 {
	status = "okay";
};

&i2c0 {
	status = "okay";

	eeprom {
		compatible = "24c64", "i2c-eeprom";
		reg = <0x54>;
		u-boot,i2c-offset-len = <2>;
	};
};

&i2c2 {
	status = "okay";
};

&emmc {
	status = "okay";
};

&usb0 {
	status = "okay";
};

&usb1 {
	status = "okay";
};

/* for U-Boot only */
/ {
	soc {
		u-boot,dm-pre-reloc;
	};
};

&serial2 {
	u-boot,dm-pre-reloc;
};

&mio {
	u-boot,dm-pre-reloc;
};

&emmc {
	u-boot,dm-pre-reloc;
};

&pinctrl {
	u-boot,dm-pre-reloc;
};

&pinctrl_uart2 {
	u-boot,dm-pre-reloc;
};

&pinctrl_emmc {
	u-boot,dm-pre-reloc;
};
