/*
 * Copyright (C) 2014-15 Synopsys, Inc. (www.synopsys.com)
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 */

/*
 * Device Tree for AXS103 SDP with AXS10X Main Board and
 * AXC003 FPGA Card (with SMP bitfile)
 */
/dts-v1/;

/include/ "axc003_idu.dtsi"
/include/ "axs10x_mb.dtsi"

/ {
	model = "snps,axs103-smp";
	compatible = "snps,axs103", "snps,arc-sdp";

	chosen {
		bootargs = "earlycon=uart8250,mmio32,0xe0022000,115200n8 console=tty0 console=ttyS3,115200n8 print-fatal-signals=1 consoleblank=0 video=1280x720@60";
	};
};
