/*
 * sama5d34ek.dts - Device Tree file for SAMA5D34-EK board
 *
 *  Copyright (C) 2013 Atmel,
 *                2013 Ludovic Desroches <ludovic.desroches@atmel.com>
 *
 * Licensed under GPLv2 or later.
 */
/dts-v1/;
/include/ "sama5d3xmb.dtsi"
/include/ "sama5d3xdm.dtsi"

/ {
	model = "Atmel SAMA5D34-EK";
	compatible = "atmel,sama5d34ek", "atmel,sama5ek", "atmel,sama5d3xmb", "atmel,sama5d3xcm", "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";

				24c256@50 {
					compatible = "24c256";
					reg = <0x50>;
					pagesize = <64>;
				};
			};

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

	leds {
		d3 {
			label = "d3";
			gpios = <&pioE 24 0>;
		};
	};

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