/*
 * Copyright (C) 2012 Florian Vaussard, EPFL Mobots group
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 */

/*
 * The Gumstix Overo must be combined with an expansion board.
 */
/dts-v1/;

/include/ "omap3.dtsi"

/ {
	leds {
		compatible = "gpio-leds";
		overo {
			label = "overo:blue:COM";
			gpios = <&twl_gpio 19 0>;
			linux,default-trigger = "mmc0";
		};
	};
};

&i2c1 {
	clock-frequency = <2600000>;

	twl: twl@48 {
		reg = <0x48>;
		interrupts = <7>; /* SYS_NIRQ cascaded to intc */
		interrupt-parent = <&intc>;
	};
};

/include/ "twl4030.dtsi"

/* i2c2 pins are used for gpio */
&i2c2 {
	status = "disabled";
};

/* on board microSD slot */
&mmc1 {
	vmmc-supply = <&vmmc1>;
	bus-width = <4>;
};

/* optional on board WiFi */
&mmc2 {
	bus-width = <4>;
};

&twl_gpio {
	ti,use-leds;
};
