/*
 * Device Tree file for Google Chromecast
 *
 * Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
 *
 * This file is licensed under the terms of the GNU General Public
 * License version 2.  This program is licensed "as is" without any
 * warranty of any kind, whether express or implied.
 */

/dts-v1/;

#include "berlin2cd.dtsi"
#include <dt-bindings/gpio/gpio.h>

/ {
	model = "Google Chromecast";
	compatible = "google,chromecast", "marvell,berlin2cd", "marvell,berlin";

	chosen {
		bootargs = "console=ttyS0,115200 earlyprintk";
	};

	memory {
		device_type = "memory";
		reg = <0x00000000 0x20000000>; /* 512 MB */
	};

	leds {
		compatible = "gpio-leds";

		white {
			label = "white";
			gpios = <&portc 1 GPIO_ACTIVE_HIGH>;
			default-state = "keep";
		};

		red {
			label = "red";
			gpios = <&portc 2 GPIO_ACTIVE_HIGH>;
			default-state = "keep";
		};
	};
};

/*
 * AzureWave AW-NH387 (Marvell 88W8787)
 * 802.11b/g/n + Bluetooth 2.1
 */
&sdhci0 {
	non-removable;
	status = "okay";
};

&uart0 { status = "okay"; };

&usb_phy1 { status = "okay"; };

&usb1 { status = "okay"; };
