// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (C) 2015 Ash Charles, Gumstix Inc.
 */

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

/dts-v1/;

#include "omap3-overo.dtsi"
#include "omap3-overo-palo35-common.dtsi"

/ {
	model = "OMAP35xx Gumstix Overo on Palo35";
	compatible = "gumstix,omap3-overo-palo35", "gumstix,omap3-overo", "ti,omap3430", "ti,omap3";
};

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

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