/*
 * sama5d36ek.dts - Device Tree file for SAMA5D36-EK board
 *
 *  Copyright (C) 2013 Atmel,
 *                2013 Josh Wu <josh.wu@atmel.com>
 *
 * Licensed under GPLv2 or later.
 */
/dts-v1/;
#include "sama5d36.dtsi"
#include "sama5d3xmb.dtsi"
#include "sama5d3xdm.dtsi"

/ {
	model = "Atmel SAMA5D36-EK";
	compatible = "atmel,sama5d36ek", "atmel,sama5d3xmb", "atmel,sama5d3xcm", "atmel,sama5d36", "atmel,sama5d3", "atmel,sama5";

	aliases {
		spi0 = &spi0;
	};

	ahb {
		apb {
			spi0: spi@f0004000 {
				status = "okay";
			};

			ssc0: ssc@f0008000 {
				status = "okay";
			};

			can0: can@f000c000 {
				status = "okay";
			};

			i2c0: i2c@f0014000 {
				status = "okay";
			};

			i2c1: i2c@f0018000 {
				status = "okay";
			};

			macb0: ethernet@f0028000 {
				status = "okay";
			};

			macb1: ethernet@f802c000 {
				status = "okay";
			};
		};
	};

	sound {
		status = "okay";
	};
};
