/*
 * 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.
 */

/*
 * Tobi expansion board is manufactured by Gumstix Inc.
 */

/include/ "omap3-overo.dtsi"

/ {
	model = "TI OMAP3 Gumstix Overo on Tobi";
	compatible = "ti,omap3-tobi", "ti,omap3-overo", "ti,omap3";

	leds {
		compatible = "gpio-leds";
		heartbeat {
			label = "overo:red:gpio21";
			gpios = <&gpio1 21 0>;
			linux,default-trigger = "heartbeat";
		};
	};
};

&i2c3 {
	clock-frequency = <100000>;
};

&mmc3 {
	status = "disabled";
};
