// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (C) 2014 Florian Vaussard, EPFL Mobots group
 */

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

/dts-v1/;

#include "omap3-overo-storm.dtsi"
#include "omap3-overo-gallop43-common.dtsi"

/ {
	model = "OMAP36xx/AM37xx/DM37xx Gumstix Overo on Gallop43";
	compatible = "gumstix,omap3-overo-gallop43", "gumstix,omap3-overo", "ti,omap3630", "ti,omap36xx", "ti,omap3";
};

&omap3_pmx_core2 {
	led_pins: pinmux_led_pins {
		pinctrl-single,pins = <
			OMAP3630_CORE2_IOPAD(0x25ea, PIN_OUTPUT | MUX_MODE4)	/* etk_d7.gpio_21 */
			OMAP3630_CORE2_IOPAD(0x25ec, PIN_OUTPUT | MUX_MODE4)	/* etk_d8.gpio_22 */
		>;
	};

	button_pins: pinmux_button_pins {
		pinctrl-single,pins = <
			OMAP3630_CORE2_IOPAD(0x25ee, PIN_INPUT | MUX_MODE4)	/* etk_d9.gpio_23 */
			OMAP3630_CORE2_IOPAD(0x25dc, PIN_INPUT | MUX_MODE4)	/* etk_d0.gpio_14 */
		>;
	};
};

