/*
 * Device Tree Source for UniPhier Pro5 4KBOX Board (EVB-Pro5-4KBOX-M-V0)
 *
 * Copyright (C) 2015-2016 Socionext Inc.
 *   Author: Masahiro Yamada <yamada.masahiro@socionext.com>
 *
 * SPDX-License-Identifier: (GPL-2.0+ OR MIT)
 */

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

/ {
	model = "UniPhier Pro5 4KBOX Board";
	compatible = "socionext,uniphier-pro5-4kbox", "socionext,uniphier-pro5";

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

	aliases {
		serial1 = &serial1;
		serial2 = &serial2;
		i2c0 = &i2c0;
		i2c5 = &i2c5;
		i2c6 = &i2c6;
	};

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

&serial1 {
	status = "okay";
};

&serial2 {
	status = "okay";
};

&i2c0 {
	status = "okay";
};

&usb1 {
	status = "okay";
};

&emmc {
	status = "okay";
};

&sd {
	status = "okay";
};

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

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