// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Copyright 2012 ST-Ericsson AB
 *
 * Device Tree for the HREF version 60 or later with the ST UIB
 */

/dts-v1/;
#include "ste-db8500.dtsi"
#include "ste-href-ab8500.dtsi"
#include "ste-hrefv60plus.dtsi"
#include "ste-href-stuib.dtsi"

/ {
	model = "ST-Ericsson HREF (v60+) and ST UIB";
	compatible = "st-ericsson,hrefv60+", "st-ericsson,u8500";

	/* ST6G3244ME level translator for 1.8/2.9 V */
	vmmci: regulator-gpio {
		compatible = "regulator-gpio";

		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <2900000>;
		regulator-name = "mmci-reg";
		regulator-type = "voltage";

		startup-delay-us = <100>;

		states = <1800000 0x1
			  2900000 0x0>;

		gpios = <&gpio0 5 GPIO_ACTIVE_HIGH>;
		enable-gpios = <&gpio5 9 GPIO_ACTIVE_HIGH>;
		enable-active-high;

		pinctrl-names = "default";
		pinctrl-0 = <&vmmci_default_mode>;
	};

	soc {
		/* Reset line for the BU21013 touchscreen */
		i2c@80110000 {
			/* Only one of these will be used */
			bu21013_tp@5c {
				interrupt-parent = <&gpio2>;
				interrupts = <20 IRQ_TYPE_LEVEL_LOW>;
				touch-gpios = <&gpio2 20 GPIO_ACTIVE_LOW>;
				reset-gpios = <&gpio4 17 GPIO_LINE_OPEN_DRAIN>;
			};
			bu21013_tp@5d {
				interrupt-parent = <&gpio2>;
				interrupts = <20 IRQ_TYPE_LEVEL_LOW>;
				touch-gpios = <&gpio2 20 GPIO_ACTIVE_LOW>;
				reset-gpios = <&gpio4 17 GPIO_LINE_OPEN_DRAIN>;
			};
		};
	};
};

&pinctrl {
	vmmci {
		vmmci_default_mode: vmmc_default {
			/* VMMCI level-shifter enable */
			default_hrefv60_cfg2 {
				pins = "GPIO169_D22";
				ste,config = <&gpio_out_hi>;
			};
			/* VMMCI level-shifter voltage select */
			default_hrefv60_cfg3 {
				pins = "GPIO5_AG6";
				ste,config = <&gpio_out_hi>;
			};
		};
	};
};
