/*
 * 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"
#include "sama5d3xmb_emac.dtsi"
#include "sama5d3xmb_gmac.dtsi"

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

	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";
	};
};
