/*
 * ge863_pro3.dtsi - Device Tree file for Telit GE863-PRO3
 *
 * Copyright (C) 2012 Telit,
 *               2012 Fabio Porcedda <fabio.porcedda@gmail.com>
 *
 * Licensed under GPLv2 or later.
 */

#include "at91sam9260.dtsi"

/ {
	clocks {
		#address-cells = <1>;
		#size-cells = <1>;
		ranges;

		main_clock: clock@0 {
			compatible = "atmel,osc", "fixed-clock";
			clock-frequency = <6000000>;
		};
	};

	ahb {
		apb {
			dbgu: serial@fffff200 {
				status = "okay";
			};
		};

		nand0: nand@40000000 {
			nand-bus-width = <8>;
			nand-ecc-mode = "soft";
			nand-on-flash-bbt;
			status = "okay";

			boot@0 {
				label = "boot";
				reg = <0x0 0x7c0000>;
			};

			root@07c0000 {
				label = "root";
				reg = <0x7c0000 0x7840000>;
			};
		};
	};

	chosen {
		bootargs = "console=ttyS0,115200 root=ubi0:rootfs ubi.mtd=1 rootfstype=ubifs";
	};
};
