/*
 * DTS file for AMD/Linaro 96Boards Enterprise Edition Server (Husky) Board
 * Note: Based-on AMD Seattle Rev.B0
 *
 * Copyright (C) 2015 Advanced Micro Devices, Inc.
 */

/dts-v1/;

/include/ "amd-seattle-soc.dtsi"

/ {
	model = "Linaro 96Boards Enterprise Edition Server (Husky) Board";
	compatible = "amd,seattle-overdrive", "amd,seattle";

	chosen {
		stdout-path = &serial0;
	};

	psci {
		compatible   = "arm,psci-0.2";
		method       = "smc";
	};
};

&ccp0 {
	status = "ok";
	amd,zlib-support = <1>;
};

/**
 * NOTE: In Rev.B, gpio0 is reserved.
 */
&gpio1 {
	status = "ok";
};

&gpio2 {
	status = "ok";
};

&gpio3 {
	status = "ok";
};

&gpio4 {
	status = "ok";
};

&i2c0 {
	status = "ok";
};

&i2c1 {
	status = "ok";
};

&pcie0 {
	status = "ok";
};

&spi0 {
	status = "ok";
};

&spi1 {
	status = "ok";
	sdcard0: sdcard@0 {
		compatible = "mmc-spi-slot";
		reg = <0>;
		spi-max-frequency = <20000000>;
		voltage-ranges = <3200 3400>;
		pl022,hierarchy = <0>;
		pl022,interface = <0>;
		pl022,com-mode = <0x0>;
		pl022,rx-level-trig = <0>;
		pl022,tx-level-trig = <0>;
	};
};

&smb0 {
	/include/ "amd-seattle-xgbe-b.dtsi"
};
