/*
 * Copyright 2014 General Electric Company
 *
 * This file is dual-licensed: you can use it either under the terms
 * of the GPL or the X11 license, at your option. Note that this dual
 * licensing only applies to this file, and not this project as a
 * whole.
 *
 *  a) This file 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.
 *
 *     This file is distributed in the hope that it will be useful,
 *     but WITHOUT ANY WARRANTY; without even the implied warranty of
 *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *     GNU General Public License for more details.
 *
 * Or, alternatively,
 *
 *  b) Permission is hereby granted, free of charge, to any person
 *     obtaining a copy of this software and associated documentation
 *     files (the "Software"), to deal in the Software without
 *     restriction, including without limitation the rights to use,
 *     copy, modify, merge, publish, distribute, sublicense, and/or
 *     sell copies of the Software, and to permit persons to whom the
 *     Software is furnished to do so, subject to the following
 *     conditions:
 *
 *     The above copyright notice and this permission notice shall be
 *     included in all copies or substantial portions of the Software.
 *
 *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
 *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
 *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 *     OTHER DEALINGS IN THE SOFTWARE.
 */

/dts-v1/;

#include "imx53.dtsi"
#include <dt-bindings/input/input.h>

/ {
	model = "General Electric CS ONE";
	compatible = "ge,imx53-cpuvo", "fsl,imx53";

	aliases {
		spi0 = &cspi;
		spi1 = &ecspi1;
		spi2 = &ecspi2;
	};

	chosen {
		stdout-path = "&uart1:115200n8";
	};

	memory@70000000 {
		device_type = "memory";
		reg = <0x70000000 0x20000000>,
		      <0xb0000000 0x20000000>;
	};

	cko2_11M: sgtl-clock-cko2 {
		compatible = "fixed-clock";
		#clock-cells = <0>;
		clock-frequency = <11289600>;
	};

	sgtlsound: sound {
		compatible = "fsl,imx53-cpuvo-sgtl5000",
			     "fsl,imx-audio-sgtl5000";
		model = "imx53-cpuvo-sgtl5000";
		ssi-controller = <&ssi2>;
		audio-codec = <&sgtl5000>;
		audio-routing =
			"MIC_IN", "Mic Jack",
			"Mic Jack", "Mic Bias",
			"Headphone Jack", "HP_OUT";
		mux-int-port = <2>;
		mux-ext-port = <6>;
	};

	reg_sgtl5k: regulator-sgtl5k {
		compatible = "regulator-fixed";
		regulator-name = "regulator-sgtl5k";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		regulator-always-on;
	};

	reg_usb_otg_vbus: regulator-usb-otg-vbus {
		compatible = "regulator-fixed";
		regulator-name = "usbotg_vbus";
		regulator-min-microvolt = <5000000>;
		regulator-max-microvolt = <5000000>;
		pinctrl-0 = <&pinctrl_usb_otg_vbus>;
		gpio = <&gpio4 15 GPIO_ACTIVE_HIGH>;
		enable-active-high;
	};

	reg_usb_vbus: regulator-usb-vbus {
		compatible = "regulator-fixed";
		regulator-name = "usbh1_vbus";
		regulator-min-microvolt = <5000000>;
		regulator-max-microvolt = <5000000>;
		regulator-always-on;
	};

	reg_usbh2_vbus: regulator-usbh2-vbus {
		compatible = "regulator-fixed";
		regulator-name = "usbh2_vbus";
		regulator-min-microvolt = <5000000>;
		regulator-max-microvolt = <5000000>;
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_usbh2_vbus>;
		gpio = <&gpio3 31 GPIO_ACTIVE_HIGH>;
		enable-active-high;
	};

	reg_usbh3_vbus: regulator-usbh3-vbus {
		compatible = "regulator-fixed";
		regulator-name = "usbh3_vbus";
		regulator-min-microvolt = <5000000>;
		regulator-max-microvolt = <5000000>;
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_usbh3_vbus>;
		gpio = <&gpio5 27 GPIO_ACTIVE_HIGH>;
		enable-active-high;
	};

	reg_tsiref: regulator-tsiref {
		compatible = "regulator-fixed";
		regulator-name = "tsiref";
		regulator-min-microvolt = <2500000>;
		regulator-max-microvolt = <2500000>;
		regulator-always-on;
	};

	pwm_bl: backlight {
		compatible = "pwm-backlight";
		pwms = <&pwm2 0 50000>;
		brightness-levels = <0 2 5 7 10 12 15 17 20 22 25 28 30 33 35
				     38 40 43 45 48 51 53 56 58 61 63 66 68 71
				     73 76 79 81 84 86 89 91 94 96 99 102 104
				     107 109 112 114 117 119 122 124 127 130
				     132 135 137 140 142 145 147 150 153 155
				     158 160 163 165 168 170 173 175 178 181
				     183 186 188 191 193 196 198 201 204 206
				     209 211 214 216 219 221 224 226 229 232
				     234 237 239 242 244 247 249 252 255>;
		default-brightness-level = <0>;
		enable-gpios = <&gpio5 29 GPIO_ACTIVE_HIGH>;
	};

	leds {
		compatible = "pwm-leds";

		alarm-brightness {
			pwms = <&pwm1 0 100000>;
			max-brightness = <255>;
		};
	};

	gpio-poweroff {
		compatible = "gpio-poweroff";
		gpios = <&gpio3 9 GPIO_ACTIVE_HIGH>;
	};

	gpio-restart {
		compatible = "gpio-restart";
		gpios = <&gpio3 8 GPIO_ACTIVE_HIGH>;
		active-delay = <100>;
		inactive-delay = <10>;
		wait-delay = <100>;
	};

	power-gpio-keys {
		compatible = "gpio-keys";

		power-button {
			label = "Power button";
			gpios = <&gpio4 13 GPIO_ACTIVE_HIGH>;
			linux,code = <KEY_POWER>;
		};
	};

	touch-lock-key {
		compatible = "gpio-keys";

		touch-lock-button {
			label = "Touch lock button";
			gpios = <&gpio5 2 GPIO_ACTIVE_LOW>;
			linux,code = <KEY_F12>;
		};
	};

	usbphy2: usbphy2 {
		compatible = "usb-nop-xceiv";
		reset-gpios = <&gpio4 4 GPIO_ACTIVE_LOW>;
		clock-names = "main_clk";
		clock-frequency = <24000000>;
		clocks = <&clks IMX5_CLK_CKO2>;
		assigned-clocks = <&clks IMX5_CLK_CKO2_SEL>, <&clks IMX5_CLK_OSC>;
		assigned-clock-parents = <&clks IMX5_CLK_OSC>;
	};

	usbphy3: usbphy3 {
		compatible = "usb-nop-xceiv";
		reset-gpios = <&gpio2 19 GPIO_ACTIVE_LOW>;
		clock-names = "main_clk";

		clock-frequency = <24000000>;
		clocks = <&clks IMX5_CLK_CKO2>;
		assigned-clocks = <&clks IMX5_CLK_CKO2_SEL>, <&clks IMX5_CLK_OSC>;
		assigned-clock-parents = <&clks IMX5_CLK_OSC>;
	};

	panel-lvds0 {
		compatible = "nvd,9128";

		port {
			panel_in_lvds0: endpoint {
				remote-endpoint = <&lvds0_out>;
			};
		};
	};
};

&audmux {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_audmux>;
	status = "okay";
};

&cpu0 {
	/* CPU rated to 1GHz, not 1.2GHz as per the default settings */
	operating-points = <
		/* kHz   uV */
		166666  850000
		400000  900000
		800000  1050000
		1000000 1200000
	>;
};

&ecspi1 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_ecspi1>;
	cs-gpios = <&gpio5 17 GPIO_ACTIVE_LOW
		    &gpio4 10 GPIO_ACTIVE_LOW
		    &gpio4 11 GPIO_ACTIVE_LOW
		    &gpio4 12 GPIO_ACTIVE_LOW>;
	status = "okay";

	spidev0: spi@0 {
		compatible = "ge,achc";
		reg = <0>;
		spi-max-frequency = <1000000>;
	};

	spidev1: spi@1 {
		compatible = "ge,achc";
		reg = <1>;
		spi-max-frequency = <1000000>;
	};

	gpioxra0: gpio@2 {
		compatible = "exar,xra1403";
		reg = <2>;
		gpio-controller;
		#gpio-cells = <2>;
		spi-max-frequency = <1000000>;
	};

	gpioxra1: gpio@3 {
		compatible = "exar,xra1403";
		reg = <3>;
		gpio-controller;
		#gpio-cells = <2>;
		spi-max-frequency = <1000000>;
	};
};

&ecspi2 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_ecspi2>;
	num-chipselects = <1>;
	cs-gpios = <&gpio2 26 GPIO_ACTIVE_LOW>;
	status = "okay";

	da9053@0 {
		compatible = "dlg,da9053-aa";
		reg = <0>;
		interrupt-parent = <&gpio3>;
		interrupts = <12 IRQ_TYPE_LEVEL_LOW>;
		spi-max-frequency = <1000000>;
		dlg,tsi-as-adc;
		tsiref-supply = <&reg_tsiref>;

		regulators {
			buck1_reg: buck1 {
				regulator-name = "BUCKCORE";
				regulator-min-microvolt = <500000>;
				regulator-max-microvolt = <2075000>;
				regulator-always-on;
			};

			buck2_reg: buck2 {
				regulator-name = "BUCKPRO";
				regulator-min-microvolt = <500000>;
				regulator-max-microvolt = <2075000>;
				regulator-always-on;
			};

			buck3_reg: buck3 {
				regulator-name = "BUCKMEM";
				regulator-min-microvolt = <925000>;
				regulator-max-microvolt = <2500000>;
				regulator-always-on;
			};

			buck4_reg: buck4 {
				regulator-name = "BUCKPERI";
				regulator-min-microvolt = <1800000>;
				regulator-max-microvolt = <3600000>;
				regulator-always-on;
			};

			ldo1_reg: ldo1 {
				regulator-name = "ldo1_1v3";
				regulator-min-microvolt = <600000>;
				regulator-max-microvolt = <1800000>;
				regulator-always-on;
			};

			ldo2_reg: ldo2 {
				regulator-name = "ldo2_1v3";
				regulator-min-microvolt = <600000>;
				regulator-max-microvolt = <1800000>;
				regulator-always-on;
			};

			ldo3_reg: ldo3 {
				regulator-name = "ldo3_3v3";
				regulator-min-microvolt = <1725000>;
				regulator-max-microvolt = <3300000>;
				regulator-always-on;
			};

			ldo4_reg: ldo4 {
				regulator-name = "ldo4_2v775";
				regulator-min-microvolt = <1725000>;
				regulator-max-microvolt = <3300000>;
				regulator-always-on;
			};

			ldo5_reg: ldo5 {
				regulator-name = "ldo5_3v3";
				regulator-min-microvolt = <1200000>;
				regulator-max-microvolt = <3600000>;
				regulator-always-on;
			};

			ldo6_reg: ldo6 {
				regulator-name = "ldo6_1v3";
				regulator-min-microvolt = <1200000>;
				regulator-max-microvolt = <3600000>;
				regulator-always-on;
			};

			ldo7_reg: ldo7 {
				regulator-name = "ldo7_2v75";
				regulator-min-microvolt = <1200000>;
				regulator-max-microvolt = <3600000>;
				regulator-always-on;
			};

			ldo8_reg: ldo8 {
				regulator-name = "ldo8_1v8";
				regulator-min-microvolt = <1200000>;
				regulator-max-microvolt = <3600000>;
				regulator-always-on;
			};

			ldo9_reg: ldo9 {
				regulator-name = "ldo9_1v5";
				regulator-min-microvolt = <1250000>;
				regulator-max-microvolt = <3650000>;
				regulator-always-on;
			};

			ldo10_reg: ldo10 {
				regulator-name = "ldo10_1v3";
				regulator-min-microvolt = <1200000>;
				regulator-max-microvolt = <3600000>;
				regulator-always-on;
			};
		};
	};

};

&esdhc3 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_esdhc3>;
	bus-width = <8>;
	status = "okay";
};

&fec {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_fec>;
	phy-mode = "rmii";
	phy-reset-gpios = <&gpio2 16 GPIO_ACTIVE_LOW>;
	status = "okay";
};

&i2c1 {
	pinctrl-names = "default", "gpio";
	pinctrl-0 = <&pinctrl_i2c1>;
	pinctrl-1 = <&pinctrl_i2c1_gpio>;
	sda-gpios = <&gpio3 28 GPIO_ACTIVE_HIGH>;
	scl-gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>;
	status = "okay";

	i2c-switch@70 {
		compatible = "nxp,pca9547";
		#address-cells = <1>;
		#size-cells = <0>;
		reg = <0x70>;
		reset-gpios = <&gpio2 18 GPIO_ACTIVE_LOW>;

		i2c4: i2c@0 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0>;

			sgtl5000: codec@a {
				compatible = "fsl,sgtl5000";
				reg = <0xa>;
				#sound-dai-cells = <0>;
				VDDA-supply = <&reg_sgtl5k>;
				VDDIO-supply = <&reg_sgtl5k>;
				clocks = <&cko2_11M>;
				status = "okay";
			};
		};

		i2c5: i2c@1 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <1>;

			rtc@30 {
			       compatible = "sii,s35390a";
			       reg = <0x30>;
			};

			temp@48 {
				compatible = "ti,tmp112";
				reg = <0x48>;
			};

			mma8453q: accelerometer@1c {
				compatible = "fsl,mma8453";
				reg = <0x1c>;
				interrupt-parent = <&gpio1>;
				interrupts = <6 IRQ_TYPE_NONE>;
				interrupt-names = "INT1";
			};

			mpl3115: pressure-sensor@60 {
				compatible = "fsl,mpl3115";
				reg = <0x60>;
			};

			eeprom: eeprom@50 {
				compatible = "atmel,24c08";
				reg = <0x50>;
			};
		};

		i2c6: i2c@2 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <2>;
		};

		i2c7: i2c@3 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <3>;
		};

		i2c8: i2c@4 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <4>;
		};

		i2c9: i2c@5 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <5>;
		};

		i2c10: i2c@6 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <6>;
		};

		i2c11: i2c@7 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <7>;
		};
	};
};

&i2c2 {
	pinctrl-names = "default", "gpio";
	pinctrl-0 = <&pinctrl_i2c2>;
	pinctrl-1 = <&pinctrl_i2c2_gpio>;
	sda-gpios = <&gpio3 16 GPIO_ACTIVE_HIGH>;
	scl-gpios = <&gpio2 30 GPIO_ACTIVE_HIGH>;
	status = "okay";

	touchscreen@4b {
		compatible = "atmel,maxtouch";
		reset-gpio = <&gpio5 19 GPIO_ACTIVE_HIGH>;
		reg = <0x4b>;
		interrupt-parent = <&gpio5>;
		interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
	};
};

&i2c3 {
	pinctrl-names = "default", "gpio";
	pinctrl-0 = <&pinctrl_i2c3>;
	pinctrl-1 = <&pinctrl_i2c3_gpio>;
	sda-gpios = <&gpio3 18 GPIO_ACTIVE_HIGH>;
	scl-gpios = <&gpio3 17 GPIO_ACTIVE_HIGH>;
	status = "okay";
};

&ldb {
	status = "okay";

	lvds0: lvds-channel@0 {
		status = "okay";

		port@2 {
			lvds0_out: endpoint {
				remote-endpoint = <&panel_in_lvds0>;
			};
		};
	};
};

&pwm1 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_pwm1>;
	status = "okay";
};

&pwm2 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_pwm2>;
	status = "okay";
};

&ssi2 {
	status = "okay";
};

&uart1 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_uart1>;
	status = "okay";
};

&uart2 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_uart2>;
	status = "okay";
};

&uart3 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_uart3>;
	uart-has-rtscts;
	status = "okay";
};

&uart4 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_uart4>;
	status = "okay";
};

&uart5 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_uart5>;
	status = "okay";
};

&usbotg {
	dr_mode = "otg";
	phy_type = "utmi";
	vbus-supply = <&reg_usb_otg_vbus>;
	pinctrl-0 = <&pinctrl_usb_otg>;
	status = "okay";
};

&usbh1 {
	vbus-supply = <&reg_usb_vbus>;
	phy_type = "utmi";
	dr_mode = "host";
	status = "okay";
};

&usbh2 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_usbh2>;
	phy_type = "ulpi";
	dr_mode = "host";
	fsl,usbphy = <&usbphy2>;
	vbus-supply = <&reg_usbh2_vbus>;
	status = "okay";
};

&usbh3 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_usbh3>;
	phy_type = "ulpi";
	dr_mode = "host";
	vbus-supply = <&reg_usbh3_vbus>;
	fsl,usbphy = <&usbphy3>;
	status = "okay";
};

&iomuxc {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_hog_rev6>;

	pinctrl_audmux: audmuxgrp {
		fsl,pins = <
			MX53_PAD_DISP0_DAT19__AUDMUX_AUD5_RXD	0x400
			MX53_PAD_DISP0_DAT17__AUDMUX_AUD5_TXD	0x400
			MX53_PAD_DISP0_DAT16__AUDMUX_AUD5_TXC	0x400
			MX53_PAD_DISP0_DAT18__AUDMUX_AUD5_TXFS	0x400
			MX53_PAD_DI0_PIN15__AUDMUX_AUD6_TXC	0x400
			MX53_PAD_DI0_PIN3__AUDMUX_AUD6_TXFS	0x400
			MX53_PAD_DI0_PIN4__AUDMUX_AUD6_RXD	0x400
			MX53_PAD_DI0_PIN2__AUDMUX_AUD6_TXD	0x400
		>;
	};

	pinctrl_ecspi1: ecspi1grp {
		fsl,pins = <
			MX53_PAD_DISP0_DAT21__ECSPI1_MOSI	0x400
			MX53_PAD_DISP0_DAT22__ECSPI1_MISO	0x400
			MX53_PAD_DISP0_DAT20__ECSPI1_SCLK	0x400
			/* ECSPI1_SS0, must treat as GPIO for EzPort */
			MX53_PAD_DISP0_DAT23__GPIO5_17		0x400
			MX53_PAD_KEY_COL2__GPIO4_10		0x0
			MX53_PAD_KEY_ROW2__GPIO4_11		0x0
			MX53_PAD_KEY_COL3__GPIO4_12		0x0
		>;
	};

	pinctrl_ecspi2: ecspi2grp {
		fsl,pins = <
			MX53_PAD_EIM_CS1__ECSPI2_MOSI		0x0
			MX53_PAD_EIM_OE__ECSPI2_MISO		0x0
			MX53_PAD_EIM_CS0__ECSPI2_SCLK		0x0
			MX53_PAD_EIM_RW__GPIO2_26		0x0
		>;
	};

	pinctrl_esdhc1: esdhc1grp {
		fsl,pins = <
			MX53_PAD_SD1_DATA0__ESDHC1_DAT0		0x1d5
			MX53_PAD_SD1_DATA1__ESDHC1_DAT1		0x1d5
			MX53_PAD_SD1_DATA2__ESDHC1_DAT2		0x1d5
			MX53_PAD_SD1_DATA3__ESDHC1_DAT3		0x1d5
			MX53_PAD_SD1_CMD__ESDHC1_CMD		0x1d5
			MX53_PAD_SD1_CLK__ESDHC1_CLK		0x1d5
		>;
	};

	pinctrl_esdhc3: esdhc3grp {
		fsl,pins = <
			MX53_PAD_PATA_DATA8__ESDHC3_DAT0	0x1d5
			MX53_PAD_PATA_DATA9__ESDHC3_DAT1	0x1d5
			MX53_PAD_PATA_DATA10__ESDHC3_DAT2	0x1d5
			MX53_PAD_PATA_DATA11__ESDHC3_DAT3	0x1d5
			MX53_PAD_PATA_DATA0__ESDHC3_DAT4	0x1d5
			MX53_PAD_PATA_DATA1__ESDHC3_DAT5	0x1d5
			MX53_PAD_PATA_DATA2__ESDHC3_DAT6	0x1d5
			MX53_PAD_PATA_DATA3__ESDHC3_DAT7	0x1d5
			MX53_PAD_PATA_RESET_B__ESDHC3_CMD	0x1d5
			MX53_PAD_PATA_IORDY__ESDHC3_CLK		0x1d5
		>;
	};

	pinctrl_fec: fecgrp {
		fsl,pins = <
			MX53_PAD_FEC_MDC__FEC_MDC		0x0
			MX53_PAD_FEC_MDIO__FEC_MDIO		0x0
			MX53_PAD_FEC_REF_CLK__FEC_TX_CLK	0x0
			MX53_PAD_FEC_RX_ER__FEC_RX_ER		0x0
			MX53_PAD_FEC_CRS_DV__FEC_RX_DV		0x0
			MX53_PAD_FEC_RXD1__FEC_RDATA_1		0x0
			MX53_PAD_FEC_RXD0__FEC_RDATA_0		0x0
			MX53_PAD_FEC_TX_EN__FEC_TX_EN		0x0
			MX53_PAD_FEC_TXD1__FEC_TDATA_1		0x0
			MX53_PAD_FEC_TXD0__FEC_TDATA_0		0x0
		>;
	};

	pinctrl_hog_rev6: hoggrp {
		fsl,pins = <
			/* CKO2 */
			MX53_PAD_GPIO_3__CCM_CLKO2		0x4
			/* DEFIB_SYNC_MARKER_IN_IRQ */
			MX53_PAD_GPIO_5__GPIO1_5		0x0
			/* ACCELEROMETER_DATA_RDY_N */
			MX53_PAD_GPIO_6__GPIO1_6		0x0
			/* TEMPERATURE_ALERT_N */
			MX53_PAD_GPIO_7__GPIO1_7		0x0
			/* BAROMETRIC_PRESSURE_DATA_RDY_N */
			MX53_PAD_GPIO_8__GPIO1_8		0x0
			/* DOCKING_I2C_INTERFACE_IRQ_N */
			MX53_PAD_PATA_DATA4__GPIO2_4		0x0
			/* PWR_OUT_TO_DOCK_FAULT_N */
			MX53_PAD_PATA_DATA5__GPIO2_5		0x0
			/* ENABLE_PWR_TO_DOCK_N */
			MX53_PAD_PATA_DATA6__GPIO2_6		0x0
			/* HOST_CONTROLLED_RESET_TO_DOCKING_CONNECTOR_N */
			MX53_PAD_PATA_DATA7__GPIO2_7		0x0
			/* REMOTE_ON_REQUEST_FROM_DOCKING_CONNECTOR_IS_ACTIVE_N */
			MX53_PAD_PATA_DATA12__GPIO2_12		0x0
			/* DOCK_PRESENT_N */
			MX53_PAD_PATA_DATA13__GPIO2_13		0x0
			/* ECG_MARKER_IN_FROM_DOCKING_CONNECTOR_IRQ */
			MX53_PAD_PATA_DATA14__GPIO2_14		0x0
			/* ENABLE_ECG_MARKER_INTERFACE_TO_DOCKING_CONNECTOR */
			MX53_PAD_PATA_DATA15__GPIO2_15		0x0
			/* RESET_IMX535_ETHERNET_PHY_N */
			MX53_PAD_EIM_A22__GPIO2_16		0x0
			/* ENABLE_PWR_TO_LCD_AND_UI_INTERFACE */
			MX53_PAD_EIM_A21__GPIO2_17		0x0
			/* RESET_I2C1_BUS_SEGMENT_MUX_N */
			MX53_PAD_EIM_A20__GPIO2_18		0x0
			/* RESET_IMX535_USB_HOST3_PHY_N */
			MX53_PAD_EIM_A19__GPIO2_19		0x0
			/* ESDHC3_EMMC_NAND_RST_N */
			MX53_PAD_EIM_A18__GPIO2_20		0x0
			/* LCD_AND_UI_INTERFACE_PWR_FAULT_N */
			MX53_PAD_EIM_A17__GPIO2_21		0x0
			/* POWER_DOWN_LVDS0_DESERIALIZER_N */
			MX53_PAD_EIM_A16__GPIO2_22		0x0
			/* POWER_DOWN_LVDS1_DESERIALIZER_N */
			MX53_PAD_EIM_LBA__GPIO2_27		0x0
			/* RESET_DP0_TRANSMITTER_N */
			MX53_PAD_EIM_EB0__GPIO2_28		0x0
			/* RESET_DP1_TRANSMITTER_N */
			MX53_PAD_EIM_EB1__GPIO2_29		0x0
			/* ENABLE_SPDIF_AUDIO_TO_DP0 */
			MX53_PAD_EIM_DA0__GPIO3_0		0x0
			/* ENABLE_SPDIF_AUDIO_TO_DP1 */
			MX53_PAD_EIM_DA1__GPIO3_1		0x0
			/* LVDS1_MUX_CTRL */
			MX53_PAD_EIM_DA2__GPIO3_2		0x0
			/* LVDS0_MUX_CTRL */
			MX53_PAD_EIM_DA3__GPIO3_3		0x0
			/* DP1_TRANSMITTER_IRQ */
			MX53_PAD_EIM_DA4__GPIO3_4		0x0
			/* DP0_TRANSMITTER_IRQ */
			MX53_PAD_EIM_DA5__GPIO3_5		0x0
			/* USB_RESET_N */
			MX53_PAD_EIM_DA6__GPIO3_6		0x0
			/* ENABLE_BATTERY_CHARGER */
			MX53_PAD_EIM_DA7__GPIO3_7		0x0
			/* SOFTWARE_CONTROLLED_PWR_CYCLE */
			MX53_PAD_EIM_DA8__GPIO3_8		0x0
			/* SOFTWARE_CONTROLLED_POWERDOWN */
			MX53_PAD_EIM_DA9__GPIO3_9		0x0
			/* DC_PWR_IN_OK */
			MX53_PAD_EIM_DA10__GPIO3_10		0x0
			/* BATT_PRESENT_N */
			MX53_PAD_EIM_DA11__GPIO3_11		0xe4
			/* PMIC_IRQ_N */
			MX53_PAD_EIM_DA12__GPIO3_12		0x0
			/* PMIC_VDD_FAULT_STATUS_N */
			MX53_PAD_EIM_DA13__GPIO3_13		0x0
			/* IMX535_ETHERNET_PHY_STATUS_IRQ_N */
			MX53_PAD_EIM_DA14__GPIO3_14		0x0
			/* NOT USED - AVAILABLE 3.3V GPIO */
			MX53_PAD_EIM_DA15__GPIO3_15		0x0
			/* NOT USED - AVAILABLE 3.3V GPIO */
			MX53_PAD_EIM_D22__GPIO3_22		0x0
			/* NOT USED - AVAILABLE 3.3V GPIO */
			MX53_PAD_EIM_D24__GPIO3_24		0x0
			/* NBP_PUMP_VALVE_PWR_ENABLE */
			MX53_PAD_EIM_D25__GPIO3_25		0x0
			/* NIBP_RESET_N */
			MX53_PAD_EIM_D26__GPIO3_26		0x0
			/* LATCHED_OVERPRESSURE_N */
			MX53_PAD_EIM_D27__GPIO3_27		0x0
			/* NBP_SBWTCLK */
			MX53_PAD_EIM_D29__GPIO3_29		0x0
			/* ENABLE_WIFI_MODULE */
			MX53_PAD_GPIO_11__GPIO4_1		0x400
			/* WIFI_MODULE_IRQ_N */
			MX53_PAD_GPIO_12__GPIO4_2		0x400
			/* ENABLE_BLUETOOTH_MODULE */
			MX53_PAD_GPIO_13__GPIO4_3		0x400
			/* RESET_IMX535_USB_HOST2_PHY_N */
			MX53_PAD_GPIO_14__GPIO4_4		0x400
			/* ONKEY_IS_DEPRESSED */
			MX53_PAD_KEY_ROW3__GPIO4_13		0x0
			/* UNUSED_GPIO_TO_ALARM_LIGHT_BOARD */
			MX53_PAD_EIM_WAIT__GPIO5_0		0x0
			/* DISPLAY_LOCK_BUTTON_IS_DEPRESSED_N */
			MX53_PAD_EIM_A25__GPIO5_2		0x0
			/* I2C_PCAP_TOUCHSCREEN_IRQ_N */
			MX53_PAD_EIM_A24__GPIO5_4		0x0
			/* NOT USED - AVAILABLE 1.8V GPIO */
			MX53_PAD_DISP0_DAT13__GPIO5_7		0x400
			/* NOT USED - AVAILABLE 1.8V GPIO */
			MX53_PAD_DISP0_DAT14__GPIO5_8		0x400
			/* NOT USED - AVAILABLE 1.8V GPIO */
			MX53_PAD_DISP0_DAT15__GPIO5_9		0x400
			/* HOST_CONTROLLED_RESET_TO_LCD_N */
			MX53_PAD_CSI0_PIXCLK__GPIO5_18		0x0
			/* HOST_CONTROLLED_RESET_TO_PCAP_N */
			MX53_PAD_CSI0_MCLK__GPIO5_19		0x0
			/* LR_SCAN_CTRL */
			MX53_PAD_CSI0_DATA_EN__GPIO5_20		0x0
			/* UD_SCAN_CTRL */
			MX53_PAD_CSI0_VSYNC__GPIO5_21		0x0
			/* DATA_WIDTH_CTRL */
			MX53_PAD_CSI0_DAT10__GPIO5_28		0x0
			/* BACKLIGHT_ENABLE */
			MX53_PAD_CSI0_DAT11__GPIO5_29		0x0
			/* MED_USB_PORT_1_HOST_SELECT */
			MX53_PAD_EIM_A23__GPIO6_6		0x0
			/* MED_USB_PORT_2_HOST_SELECT */
			MX53_PAD_NANDF_CLE__GPIO6_7		0x0
			/* MED_USB_PORT_3_HOST_SELECT */
			MX53_PAD_NANDF_ALE__GPIO6_8		0x0
			/* MED_USB_PORT_4_HOST_SELECT */
			MX53_PAD_NANDF_WP_B__GPIO6_9		0x0
			/* MED_USB_PORT_5_HOST_SELECT */
			MX53_PAD_NANDF_RB0__GPIO6_10		0x0
			/* MED_USB_PORT_6_HOST_SELECT */
			MX53_PAD_NANDF_CS0__GPIO6_11		0x0
			/* MED_USB_PORT_7_HOST_SELECT */
			MX53_PAD_NANDF_WE_B__GPIO6_12		0x0
			/* MED_USB_PORT_8_HOST_SELECT */
			MX53_PAD_NANDF_RE_B__GPIO6_13		0x0
			/* MED_USB_PORT_TO_IMX_SELECT_0 */
			MX53_PAD_NANDF_CS1__GPIO6_14		0x0
			/* MED_USB_PORT_TO_IMX_SELECT_1 */
			MX53_PAD_NANDF_CS2__GPIO6_15		0x0
			/* MED_USB_PORT_TO_IMX_SELECT_2 */
			MX53_PAD_NANDF_CS3__GPIO6_16		0x0
			/* POWER_AND_BOOT_STATUS_INDICATOR */
			MX53_PAD_PATA_INTRQ__GPIO7_2		0x1e4
			/* ACTIVATE_ALARM_LIGHT_RED */
			MX53_PAD_PATA_DIOR__GPIO7_3		0x0
			/* ACTIVATE_ALARM_LIGHT_YELLOW */
			MX53_PAD_PATA_DA_1__GPIO7_7		0x0
			/* ACTIVATE_ALARM_LIGHT_CYAN */
			MX53_PAD_PATA_DA_2__GPIO7_8		0x0
			/* RUNNING_ON_BATTERY_INDICATOR_GREEN */
			MX53_PAD_GPIO_16__GPIO7_11		0x0
			/* BATTERY_STATUS_INDICATOR_AMBER */
			MX53_PAD_GPIO_17__GPIO7_12		0x0
			/* AUDIO_ALARMS_SILENCED_INDICATOR */
			MX53_PAD_GPIO_18__GPIO7_13		0x0
		>;
	};

	pinctrl_i2c1: i2c1grp {
		fsl,pins = <
			MX53_PAD_EIM_D21__I2C1_SCL		0x400001e4
			MX53_PAD_EIM_D28__I2C1_SDA		0x400001e4
		>;
	};

	pinctrl_i2c1_gpio: i2c1gpiogrp {
		fsl,pins = <
			MX53_PAD_EIM_D28__GPIO3_28		0x1e4
			MX53_PAD_EIM_D21__GPIO3_21		0x1e4
		>;
	};

	pinctrl_i2c2: i2c2grp {
		fsl,pins = <
			MX53_PAD_EIM_EB2__I2C2_SCL		0x400001e4
			MX53_PAD_EIM_D16__I2C2_SDA		0x400001e4
		>;
	};

	pinctrl_i2c2_gpio: i2c2gpiogrp {
		fsl,pins = <
			MX53_PAD_EIM_D16__GPIO3_16		0x1e4
			MX53_PAD_EIM_EB2__GPIO2_30		0x1e4
		>;
	};

	pinctrl_i2c3: i2c3grp {
		fsl,pins = <
			MX53_PAD_EIM_D17__I2C3_SCL		0x400001e4
			MX53_PAD_EIM_D18__I2C3_SDA		0x400001e4
		>;
	};

	pinctrl_i2c3_gpio: i2c3gpiogrp {
		fsl,pins = <
			MX53_PAD_EIM_D18__GPIO3_18		0x1e4
			MX53_PAD_EIM_D17__GPIO3_17		0x1e4
		>;
	};

	pinctrl_pwm1: pwm1grp {
		fsl,pins = <
			MX53_PAD_GPIO_9__PWM1_PWMO		0x5
		>;
	};

	pinctrl_pwm2: pwm2grp {
		fsl,pins = <
			MX53_PAD_DISP0_DAT9__PWM2_PWMO		0x5
		>;
	};

	pinctrl_uart1: uart1grp {
		fsl,pins = <
			MX53_PAD_PATA_DIOW__UART1_TXD_MUX	0x1e4
			MX53_PAD_PATA_DMACK__UART1_RXD_MUX	0x1e4
		>;
	};

	pinctrl_uart2: uart2grp {
		fsl,pins = <
			MX53_PAD_PATA_DMARQ__UART2_TXD_MUX	0x1e4
			MX53_PAD_PATA_BUFFER_EN__UART2_RXD_MUX	0x1e4
		>;
	};

	pinctrl_uart3: uart3grp {
		fsl,pins = <
			MX53_PAD_PATA_CS_0__UART3_TXD_MUX	0x1e4
			MX53_PAD_PATA_CS_1__UART3_RXD_MUX	0x1e4
			MX53_PAD_EIM_D23__UART3_CTS		0x1e4
			MX53_PAD_EIM_EB3__UART3_RTS		0x1e4
		>;
	};

	pinctrl_uart4: uart4grp {
		fsl,pins = <
			MX53_PAD_KEY_COL0__UART4_TXD_MUX	0x1e4
			MX53_PAD_KEY_ROW0__UART4_RXD_MUX	0x1e4
		>;
	};

	pinctrl_uart5: uart5grp {
		fsl,pins = <
			MX53_PAD_KEY_COL1__UART5_TXD_MUX	0x1e4
			MX53_PAD_KEY_ROW1__UART5_RXD_MUX	0x1e4
		>;
	};

	pinctrl_usb_otg_vbus: usb-otg-vbusgrp {
		fsl,pins = <
			/* USB_HS_OTG_VBUS_ENABLE */
			MX53_PAD_KEY_ROW4__GPIO4_15		0x1c4
		>;
	};

	pinctrl_usbh2: usbh2grp {
		fsl,pins = <
			/* USB H2 */
			MX53_PAD_DISP0_DAT0__USBOH3_USBH2_DATA_0 0x180
			MX53_PAD_DISP0_DAT1__USBOH3_USBH2_DATA_1 0x180
			MX53_PAD_DISP0_DAT2__USBOH3_USBH2_DATA_2 0x180
			MX53_PAD_DISP0_DAT3__USBOH3_USBH2_DATA_3 0x180
			MX53_PAD_DISP0_DAT4__USBOH3_USBH2_DATA_4 0x180
			MX53_PAD_DISP0_DAT5__USBOH3_USBH2_DATA_5 0x180
			MX53_PAD_DISP0_DAT6__USBOH3_USBH2_DATA_6 0x180
			MX53_PAD_DISP0_DAT7__USBOH3_USBH2_DATA_7 0x180
			MX53_PAD_DISP0_DAT10__USBOH3_USBH2_STP	 0x180
			MX53_PAD_DISP0_DAT11__USBOH3_USBH2_NXT	 0x180
			MX53_PAD_DISP0_DAT12__USBOH3_USBH2_CLK	 0x180
			MX53_PAD_DI0_DISP_CLK__USBOH3_USBH2_DIR	 0x5
			MX53_PAD_EIM_D30__USBOH3_USBH2_OC	 0x180
		>;
	};

	pinctrl_usbh2_vbus: usbh2-vbusgrp {
		fsl,pins = <
			/* USB_HS_HOST2_VBUS_ENABLE */
			MX53_PAD_EIM_D31__GPIO3_31		0x0
		>;
	};

	pinctrl_usbh3_vbus: usbh3-vbusgrp {
		fsl,pins = <
			/* USB_HS_HOST3_VBUS_ENABLE */
			MX53_PAD_CSI0_DAT9__GPIO5_27		0x0
		>;
	};

	pinctrl_usbh3: usbh3grp {
		fsl,pins = <
			/* USB H3 */
			MX53_PAD_CSI0_DAT12__USBOH3_USBH3_DATA_0 0x180
			MX53_PAD_CSI0_DAT13__USBOH3_USBH3_DATA_1 0x180
			MX53_PAD_CSI0_DAT14__USBOH3_USBH3_DATA_2 0x180
			MX53_PAD_CSI0_DAT15__USBOH3_USBH3_DATA_3 0x180
			MX53_PAD_CSI0_DAT16__USBOH3_USBH3_DATA_4 0x180
			MX53_PAD_CSI0_DAT17__USBOH3_USBH3_DATA_5 0x180
			MX53_PAD_CSI0_DAT18__USBOH3_USBH3_DATA_6 0x180
			MX53_PAD_CSI0_DAT19__USBOH3_USBH3_DATA_7 0x180
			MX53_PAD_CSI0_DAT7__USBOH3_USBH3_DIR	 0x5
			MX53_PAD_CSI0_DAT6__USBOH3_USBH3_CLK	 0x180
			MX53_PAD_CSI0_DAT5__USBOH3_USBH3_NXT	 0x180
			MX53_PAD_CSI0_DAT4__USBOH3_USBH3_STP	 0x180
			MX53_PAD_CSI0_DAT8__USBOH3_USBH3_OC	 0x180
		>;
	};

	pinctrl_usb_otg: usbotggrp {
		fsl,pins = <
			/* USB_OTG_FAULT_N */
			MX53_PAD_KEY_COL4__USBOH3_USBOTG_OC	0x180
		>;
	};
};
