Linux Audio

Check our new training course

Linux BSP development engineering services

Need help to port Linux and bootloaders to your hardware?
Loading...
v6.2
   1// SPDX-License-Identifier: GPL-2.0-only
   2/*
   3 * Copyright (C) 2013 Texas Instruments Incorporated - https://www.ti.com/
   4 */
   5
   6/* AM437x GP EVM */
   7
   8/dts-v1/;
   9
  10#include "am4372.dtsi"
  11#include <dt-bindings/pinctrl/am43xx.h>
  12#include <dt-bindings/pwm/pwm.h>
  13#include <dt-bindings/gpio/gpio.h>
  14
  15/ {
  16	model = "TI AM437x GP EVM";
  17	compatible = "ti,am437x-gp-evm","ti,am4372","ti,am43";
  18
  19	aliases {
  20		display0 = &lcd0;
  21	};
  22
  23	chosen {
  24		stdout-path = &uart0;
  25	};
  26
  27	evm_v3_3d: fixedregulator-v3_3d {
  28		compatible = "regulator-fixed";
  29		regulator-name = "evm_v3_3d";
  30		regulator-min-microvolt = <3300000>;
  31		regulator-max-microvolt = <3300000>;
  32		enable-active-high;
  33	};
  34
  35	vtt_fixed: fixedregulator-vtt {
  36		compatible = "regulator-fixed";
  37		regulator-name = "vtt_fixed";
  38		regulator-min-microvolt = <1500000>;
  39		regulator-max-microvolt = <1500000>;
  40		regulator-always-on;
  41		regulator-boot-on;
  42		enable-active-high;
  43		gpio = <&gpio5 7 GPIO_ACTIVE_HIGH>;
  44	};
  45
  46	vmmcwl_fixed: fixedregulator-mmcwl {
  47		compatible = "regulator-fixed";
  48		regulator-name = "vmmcwl_fixed";
  49		regulator-min-microvolt = <1800000>;
  50		regulator-max-microvolt = <1800000>;
  51		gpio = <&gpio1 20 GPIO_ACTIVE_HIGH>;
  52		enable-active-high;
  53	};
  54
  55	lcd_bl: backlight {
  56		compatible = "pwm-backlight";
  57		pwms = <&ecap0 0 50000 PWM_POLARITY_INVERTED>;
  58		brightness-levels = <0 51 53 56 62 75 101 152 255>;
  59		default-brightness-level = <8>;
  60	};
  61
  62	matrix_keypad: matrix_keypad0 {
  63		compatible = "gpio-matrix-keypad";
  64		debounce-delay-ms = <5>;
  65		col-scan-delay-us = <2>;
  66
  67		pinctrl-names = "default", "sleep";
  68		pinctrl-0 = <&matrix_keypad_default>;
  69		pinctrl-1 = <&matrix_keypad_sleep>;
  70
  71		wakeup-source;
  72
  73		row-gpios = <&gpio0 3 GPIO_ACTIVE_HIGH /* Bank0, pin3 */
  74				&gpio4 3 GPIO_ACTIVE_HIGH /* Bank4, pin3 */
  75				&gpio4 2 GPIO_ACTIVE_HIGH>; /* Bank4, pin2 */
  76
  77		col-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH /* Bank3, pin19 */
  78				&gpio3 20 GPIO_ACTIVE_HIGH>; /* Bank3, pin20 */
  79
  80		linux,keymap = <0x00000201      /* P1 */
  81				0x00010202      /* P2 */
  82				0x01000067      /* UP */
  83				0x0101006a      /* RIGHT */
  84				0x02000069      /* LEFT */
  85				0x0201006c>;      /* DOWN */
  86		};
  87
  88	lcd0: display {
  89		compatible = "osddisplays,osd070t1718-19ts", "panel-dpi";
  90		label = "lcd";
  91
  92		backlight = <&lcd_bl>;
  93
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  94		port {
  95			lcd_in: endpoint {
  96				remote-endpoint = <&dpi_out>;
  97			};
  98		};
  99	};
 100
 101	/* fixed 12MHz oscillator */
 102	refclk: oscillator {
 103		#clock-cells = <0>;
 104		compatible = "fixed-clock";
 105		clock-frequency = <12000000>;
 106	};
 107
 108	/* fixed 32k external oscillator clock */
 109	clk_32k_rtc: clk_32k_rtc {
 110		#clock-cells = <0>;
 111		compatible = "fixed-clock";
 112		clock-frequency = <32768>;
 113	};
 114
 115	sound0: sound0 {
 116		compatible = "simple-audio-card";
 117		simple-audio-card,name = "AM437x-GP-EVM";
 118		simple-audio-card,widgets =
 119			"Headphone", "Headphone Jack",
 120			"Line", "Line In";
 121		simple-audio-card,routing =
 122			"Headphone Jack",	"HPLOUT",
 123			"Headphone Jack",	"HPROUT",
 124			"LINE1L",		"Line In",
 125			"LINE1R",		"Line In";
 126		simple-audio-card,format = "dsp_b";
 127		simple-audio-card,bitclock-master = <&sound0_master>;
 128		simple-audio-card,frame-master = <&sound0_master>;
 129		simple-audio-card,bitclock-inversion;
 130
 131		simple-audio-card,cpu {
 132			sound-dai = <&mcasp1>;
 133			system-clock-frequency = <12000000>;
 134		};
 135
 136		sound0_master: simple-audio-card,codec {
 137			sound-dai = <&tlv320aic3106>;
 138			system-clock-frequency = <12000000>;
 139		};
 140	};
 141
 142	beeper: beeper {
 143		compatible = "gpio-beeper";
 144		pinctrl-names = "default";
 145		pinctrl-0 = <&beeper_pins_default>;
 146		pinctrl-1 = <&beeper_pins_sleep>;
 147		gpios = <&gpio4 12 GPIO_ACTIVE_HIGH>;
 148	};
 149};
 150
 151&am43xx_pinmux {
 152	pinctrl-names = "default", "sleep";
 153	pinctrl-0 = <&wlan_pins_default &ddr3_vtt_toggle_default &unused_pins &debugss_pins>;
 154	pinctrl-1 = <&wlan_pins_sleep>;
 155
 156	ddr3_vtt_toggle_default: ddr_vtt_toggle_default {
 157		pinctrl-single,pins = <
 158			0x25C (DS0_PULL_UP_DOWN_EN | PIN_OUTPUT_PULLUP | DS0_FORCE_OFF_MODE | MUX_MODE7) /* spi0_cs0.gpio5_7 */
 159		>;
 160	};
 161
 162	i2c0_pins: i2c0_pins {
 163		pinctrl-single,pins = <
 164			AM4372_IOPAD(0x988, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)  /* i2c0_sda.i2c0_sda */
 165			AM4372_IOPAD(0x98c, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)  /* i2c0_scl.i2c0_scl */
 166		>;
 167	};
 168
 169	i2c1_pins: i2c1_pins {
 170		pinctrl-single,pins = <
 171			AM4372_IOPAD(0x95c, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE2)  /* spi0_cs0.i2c1_scl */
 172			AM4372_IOPAD(0x958, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE2)  /* spi0_d1.i2c1_sda  */
 173		>;
 174	};
 175
 176	mmc1_pins: pinmux_mmc1_pins {
 177		pinctrl-single,pins = <
 178			AM4372_IOPAD(0x960, PIN_INPUT | MUX_MODE7) /* spi0_cs1.gpio0_6 */
 179		>;
 180	};
 181
 182	ecap0_pins: backlight_pins {
 183		pinctrl-single,pins = <
 184			AM4372_IOPAD(0x964, MUX_MODE0)       /* eCAP0_in_PWM0_out.eCAP0_in_PWM0_out MODE0 */
 185		>;
 186	};
 187
 188	pixcir_ts_pins: pixcir_ts_pins {
 189		pinctrl-single,pins = <
 190			AM4372_IOPAD(0xa64, PIN_INPUT_PULLUP | MUX_MODE7)  /* spi2_d0.gpio3_22 */
 191		>;
 192	};
 193
 194	cpsw_default: cpsw_default {
 195		pinctrl-single,pins = <
 196			/* Slave 1 */
 197			AM4372_IOPAD(0x914, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txen.rgmii1_txen */
 198			AM4372_IOPAD(0x918, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxdv.rgmii1_rxctl */
 199			AM4372_IOPAD(0x91c, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd1.rgmii1_txd3 */
 200			AM4372_IOPAD(0x920, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd0.rgmii1_txd2 */
 201			AM4372_IOPAD(0x924, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd1.rgmii1_txd1 */
 202			AM4372_IOPAD(0x928, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd0.rgmii1_txd0 */
 203			AM4372_IOPAD(0x92c, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txclk.rmii1_tclk */
 204			AM4372_IOPAD(0x930, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxclk.rmii1_rclk */
 205			AM4372_IOPAD(0x934, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd1.rgmii1_rxd3 */
 206			AM4372_IOPAD(0x938, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd0.rgmii1_rxd2 */
 207			AM4372_IOPAD(0x93c, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd1.rgmii1_rxd1 */
 208			AM4372_IOPAD(0x940, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd0.rgmii1_rxd0 */
 209		>;
 210	};
 211
 212	cpsw_sleep: cpsw_sleep {
 213		pinctrl-single,pins = <
 214			/* Slave 1 reset value */
 215			AM4372_IOPAD(0x914, PIN_INPUT_PULLDOWN | MUX_MODE7)
 216			AM4372_IOPAD(0x918, PIN_INPUT_PULLDOWN | MUX_MODE7)
 217			AM4372_IOPAD(0x91c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 218			AM4372_IOPAD(0x920, PIN_INPUT_PULLDOWN | MUX_MODE7)
 219			AM4372_IOPAD(0x924, PIN_INPUT_PULLDOWN | MUX_MODE7)
 220			AM4372_IOPAD(0x928, PIN_INPUT_PULLDOWN | MUX_MODE7)
 221			AM4372_IOPAD(0x92c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 222			AM4372_IOPAD(0x930, PIN_INPUT_PULLDOWN | MUX_MODE7)
 223			AM4372_IOPAD(0x934, PIN_INPUT_PULLDOWN | MUX_MODE7)
 224			AM4372_IOPAD(0x938, PIN_INPUT_PULLDOWN | MUX_MODE7)
 225			AM4372_IOPAD(0x93c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 226			AM4372_IOPAD(0x940, PIN_INPUT_PULLDOWN | MUX_MODE7)
 227		>;
 228	};
 229
 230	davinci_mdio_default: davinci_mdio_default {
 231		pinctrl-single,pins = <
 232			/* MDIO */
 233			AM4372_IOPAD(0x948, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)	/* mdio_data.mdio_data */
 234			AM4372_IOPAD(0x94c, PIN_OUTPUT_PULLUP | MUX_MODE0)			/* mdio_clk.mdio_clk */
 235		>;
 236	};
 237
 238	davinci_mdio_sleep: davinci_mdio_sleep {
 239		pinctrl-single,pins = <
 240			/* MDIO reset value */
 241			AM4372_IOPAD(0x948, PIN_INPUT_PULLDOWN | MUX_MODE7)
 242			AM4372_IOPAD(0x94c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 243		>;
 244	};
 245
 246	nand_flash_x8: nand_flash_x8 {
 247		pinctrl-single,pins = <
 248			AM4372_IOPAD(0x800, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad0.gpmc_ad0 */
 249			AM4372_IOPAD(0x804, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad1.gpmc_ad1 */
 250			AM4372_IOPAD(0x808, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad2.gpmc_ad2 */
 251			AM4372_IOPAD(0x80c, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad3.gpmc_ad3 */
 252			AM4372_IOPAD(0x810, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad4.gpmc_ad4 */
 253			AM4372_IOPAD(0x814, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad5.gpmc_ad5 */
 254			AM4372_IOPAD(0x818, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad6.gpmc_ad6 */
 255			AM4372_IOPAD(0x81c, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad7.gpmc_ad7 */
 256			AM4372_IOPAD(0x870, PIN_INPUT_PULLUP | MUX_MODE0)	/* gpmc_wait0.gpmc_wait0 */
 257			AM4372_IOPAD(0x874, PIN_OUTPUT_PULLUP | MUX_MODE7)	/* gpmc_wpn.gpmc_wpn */
 258			AM4372_IOPAD(0x87c, PIN_OUTPUT | MUX_MODE0)		/* gpmc_csn0.gpmc_csn0  */
 259			AM4372_IOPAD(0x890, PIN_OUTPUT | MUX_MODE0)		/* gpmc_advn_ale.gpmc_advn_ale */
 260			AM4372_IOPAD(0x894, PIN_OUTPUT | MUX_MODE0)		/* gpmc_oen_ren.gpmc_oen_ren */
 261			AM4372_IOPAD(0x898, PIN_OUTPUT | MUX_MODE0)		/* gpmc_wen.gpmc_wen */
 262			AM4372_IOPAD(0x89c, PIN_OUTPUT | MUX_MODE0)		/* gpmc_be0n_cle.gpmc_be0n_cle */
 263		>;
 264	};
 265
 266	dss_pins: dss_pins {
 267		pinctrl-single,pins = <
 268			AM4372_IOPAD(0x820, PIN_OUTPUT_PULLUP | MUX_MODE1) /*gpmc ad 8 -> DSS DATA 23 */
 269			AM4372_IOPAD(0x824, PIN_OUTPUT_PULLUP | MUX_MODE1)
 270			AM4372_IOPAD(0x828, PIN_OUTPUT_PULLUP | MUX_MODE1)
 271			AM4372_IOPAD(0x82c, PIN_OUTPUT_PULLUP | MUX_MODE1)
 272			AM4372_IOPAD(0x830, PIN_OUTPUT_PULLUP | MUX_MODE1)
 273			AM4372_IOPAD(0x834, PIN_OUTPUT_PULLUP | MUX_MODE1)
 274			AM4372_IOPAD(0x838, PIN_OUTPUT_PULLUP | MUX_MODE1)
 275			AM4372_IOPAD(0x83c, PIN_OUTPUT_PULLUP | MUX_MODE1) /*gpmc ad 15 -> DSS DATA 16 */
 276			AM4372_IOPAD(0x8a0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS DATA 0 */
 277			AM4372_IOPAD(0x8a4, PIN_OUTPUT_PULLUP | MUX_MODE0)
 278			AM4372_IOPAD(0x8a8, PIN_OUTPUT_PULLUP | MUX_MODE0)
 279			AM4372_IOPAD(0x8ac, PIN_OUTPUT_PULLUP | MUX_MODE0)
 280			AM4372_IOPAD(0x8b0, PIN_OUTPUT_PULLUP | MUX_MODE0)
 281			AM4372_IOPAD(0x8b4, PIN_OUTPUT_PULLUP | MUX_MODE0)
 282			AM4372_IOPAD(0x8b8, PIN_OUTPUT_PULLUP | MUX_MODE0)
 283			AM4372_IOPAD(0x8bc, PIN_OUTPUT_PULLUP | MUX_MODE0)
 284			AM4372_IOPAD(0x8c0, PIN_OUTPUT_PULLUP | MUX_MODE0)
 285			AM4372_IOPAD(0x8c4, PIN_OUTPUT_PULLUP | MUX_MODE0)
 286			AM4372_IOPAD(0x8c8, PIN_OUTPUT_PULLUP | MUX_MODE0)
 287			AM4372_IOPAD(0x8cc, PIN_OUTPUT_PULLUP | MUX_MODE0)
 288			AM4372_IOPAD(0x8d0, PIN_OUTPUT_PULLUP | MUX_MODE0)
 289			AM4372_IOPAD(0x8d4, PIN_OUTPUT_PULLUP | MUX_MODE0)
 290			AM4372_IOPAD(0x8d8, PIN_OUTPUT_PULLUP | MUX_MODE0)
 291			AM4372_IOPAD(0x8dc, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS DATA 15 */
 292			AM4372_IOPAD(0x8e0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS VSYNC */
 293			AM4372_IOPAD(0x8e4, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS HSYNC */
 294			AM4372_IOPAD(0x8e8, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS PCLK */
 295			AM4372_IOPAD(0x8ec, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS AC BIAS EN */
 296
 297		>;
 298	};
 299
 300	display_mux_pins: display_mux_pins {
 301		pinctrl-single,pins = <
 302			/* GPIO 5_8 to select LCD / HDMI */
 303			AM4372_IOPAD(0xa38, PIN_OUTPUT_PULLUP | MUX_MODE7)
 304		>;
 305	};
 306
 307	dcan0_default: dcan0_default_pins {
 308		pinctrl-single,pins = <
 309			AM4372_IOPAD(0x978, PIN_OUTPUT | MUX_MODE2)		/* uart1_ctsn.d_can0_tx */
 310			AM4372_IOPAD(0x97c, PIN_INPUT_PULLUP | MUX_MODE2)	/* uart1_rtsn.d_can0_rx */
 311		>;
 312	};
 313
 314	dcan0_sleep: dcan0_sleep_pins {
 315		pinctrl-single,pins = <
 316			AM4372_IOPAD(0x978, PIN_INPUT_PULLUP | MUX_MODE7)	/* uart1_ctsn.gpio0_12 */
 317			AM4372_IOPAD(0x97c, PIN_INPUT_PULLUP | MUX_MODE7)	/* uart1_rtsn.gpio0_13 */
 318		>;
 319	};
 320
 321	dcan1_default: dcan1_default_pins {
 322		pinctrl-single,pins = <
 323			AM4372_IOPAD(0x980, PIN_OUTPUT | MUX_MODE2)		/* uart1_rxd.d_can1_tx */
 324			AM4372_IOPAD(0x984, PIN_INPUT_PULLUP | MUX_MODE2)	/* uart1_txd.d_can1_rx */
 325		>;
 326	};
 327
 328	dcan1_sleep: dcan1_sleep_pins {
 329		pinctrl-single,pins = <
 330			AM4372_IOPAD(0x980, PIN_INPUT_PULLUP | MUX_MODE7)	/* uart1_rxd.gpio0_14 */
 331			AM4372_IOPAD(0x984, PIN_INPUT_PULLUP | MUX_MODE7)	/* uart1_txd.gpio0_15 */
 332		>;
 333	};
 334
 335	vpfe0_pins_default: vpfe0_pins_default {
 336		pinctrl-single,pins = <
 337			AM4372_IOPAD(0x9b0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_hd mode 0*/
 338			AM4372_IOPAD(0x9b4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_vd mode 0*/
 339			AM4372_IOPAD(0x9c0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_pclk mode 0*/
 340			AM4372_IOPAD(0x9c4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data8 mode 0*/
 341			AM4372_IOPAD(0x9c8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data9 mode 0*/
 342			AM4372_IOPAD(0xa08, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data0 mode 0*/
 343			AM4372_IOPAD(0xa0c, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data1 mode 0*/
 344			AM4372_IOPAD(0xa10, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data2 mode 0*/
 345			AM4372_IOPAD(0xa14, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data3 mode 0*/
 346			AM4372_IOPAD(0xa18, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data4 mode 0*/
 347			AM4372_IOPAD(0xa1c, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data5 mode 0*/
 348			AM4372_IOPAD(0xa20, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data6 mode 0*/
 349			AM4372_IOPAD(0xa24, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data7 mode 0*/
 350		>;
 351	};
 352
 353	vpfe0_pins_sleep: vpfe0_pins_sleep {
 354		pinctrl-single,pins = <
 355			AM4372_IOPAD(0x9b0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_hd mode 0*/
 356			AM4372_IOPAD(0x9b4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_vd mode 0*/
 357			AM4372_IOPAD(0x9c0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_pclk mode 0*/
 358			AM4372_IOPAD(0x9c4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data8 mode 0*/
 359			AM4372_IOPAD(0x9c8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data9 mode 0*/
 360			AM4372_IOPAD(0xa08, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data0 mode 0*/
 361			AM4372_IOPAD(0xa0c, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data1 mode 0*/
 362			AM4372_IOPAD(0xa10, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data2 mode 0*/
 363			AM4372_IOPAD(0xa14, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data3 mode 0*/
 364			AM4372_IOPAD(0xa18, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data4 mode 0*/
 365			AM4372_IOPAD(0xa1c, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data5 mode 0*/
 366			AM4372_IOPAD(0xa20, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data6 mode 0*/
 367			AM4372_IOPAD(0xa24, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data7 mode 0*/
 368		>;
 369	};
 370
 371	vpfe1_pins_default: vpfe1_pins_default {
 372		pinctrl-single,pins = <
 373			AM4372_IOPAD(0x9cc, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data9 mode 0*/
 374			AM4372_IOPAD(0x9d0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data8 mode 0*/
 375			AM4372_IOPAD(0x9d4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_hd mode 0*/
 376			AM4372_IOPAD(0x9d8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_vd mode 0*/
 377			AM4372_IOPAD(0x9dC, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_pclk mode 0*/
 378			AM4372_IOPAD(0x9e8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data0 mode 0*/
 379			AM4372_IOPAD(0x9ec, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data1 mode 0*/
 380			AM4372_IOPAD(0x9f0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data2 mode 0*/
 381			AM4372_IOPAD(0x9f4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data3 mode 0*/
 382			AM4372_IOPAD(0x9f8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data4 mode 0*/
 383			AM4372_IOPAD(0x9fc, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data5 mode 0*/
 384			AM4372_IOPAD(0xa00, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data6 mode 0*/
 385			AM4372_IOPAD(0xa04, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data7 mode 0*/
 386		>;
 387	};
 388
 389	vpfe1_pins_sleep: vpfe1_pins_sleep {
 390		pinctrl-single,pins = <
 391			AM4372_IOPAD(0x9cc, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data9 mode 0*/
 392			AM4372_IOPAD(0x9d0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data8 mode 0*/
 393			AM4372_IOPAD(0x9d4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_hd mode 0*/
 394			AM4372_IOPAD(0x9d8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_vd mode 0*/
 395			AM4372_IOPAD(0x9dc, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_pclk mode 0*/
 396			AM4372_IOPAD(0x9e8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data0 mode 0*/
 397			AM4372_IOPAD(0x9ec, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data1 mode 0*/
 398			AM4372_IOPAD(0x9f0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data2 mode 0*/
 399			AM4372_IOPAD(0x9f4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data3 mode 0*/
 400			AM4372_IOPAD(0x9f8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data4 mode 0*/
 401			AM4372_IOPAD(0x9fc, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data5 mode 0*/
 402			AM4372_IOPAD(0xa00, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data6 mode 0*/
 403			AM4372_IOPAD(0xa04, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data7 mode 0*/
 404		>;
 405	};
 406
 407	mmc3_pins_default: pinmux_mmc3_pins_default {
 408		pinctrl-single,pins = <
 409			AM4372_IOPAD(0x88c, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_clk.mmc2_clk */
 410			AM4372_IOPAD(0x888, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_csn3.mmc2_cmd */
 411			AM4372_IOPAD(0x844, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_a1.mmc2_dat0 */
 412			AM4372_IOPAD(0x848, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_a2.mmc2_dat1 */
 413			AM4372_IOPAD(0x84c, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_a3.mmc2_dat2 */
 414			AM4372_IOPAD(0x878, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_be1n.mmc2_dat3 */
 415		>;
 416	};
 417
 418	mmc3_pins_sleep: pinmux_mmc3_pins_sleep {
 419		pinctrl-single,pins = <
 420			AM4372_IOPAD(0x88c, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_clk.mmc2_clk */
 421			AM4372_IOPAD(0x888, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_csn3.mmc2_cmd */
 422			AM4372_IOPAD(0x844, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_a1.mmc2_dat0 */
 423			AM4372_IOPAD(0x848, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_a2.mmc2_dat1 */
 424			AM4372_IOPAD(0x84c, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_a3.mmc2_dat2 */
 425			AM4372_IOPAD(0x878, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_be1n.mmc2_dat3 */
 426		>;
 427	};
 428
 429	wlan_pins_default: pinmux_wlan_pins_default {
 430		pinctrl-single,pins = <
 431			AM4372_IOPAD(0x850, PIN_OUTPUT_PULLDOWN | MUX_MODE7)		/* gpmc_a4.gpio1_20 WL_EN */
 432			AM4372_IOPAD(0x85c, PIN_INPUT | WAKEUP_ENABLE | MUX_MODE7)	/* gpmc_a7.gpio1_23 WL_IRQ*/
 433			AM4372_IOPAD(0x840, PIN_OUTPUT_PULLDOWN | MUX_MODE7)		/* gpmc_a0.gpio1_16 BT_EN*/
 434		>;
 435	};
 436
 437	wlan_pins_sleep: pinmux_wlan_pins_sleep {
 438		pinctrl-single,pins = <
 439			AM4372_IOPAD(0x850, PIN_OUTPUT_PULLDOWN | MUX_MODE7)		/* gpmc_a4.gpio1_20 WL_EN */
 440			AM4372_IOPAD(0x85c, PIN_INPUT | WAKEUP_ENABLE | MUX_MODE7)	/* gpmc_a7.gpio1_23 WL_IRQ*/
 441			AM4372_IOPAD(0x840, PIN_OUTPUT_PULLUP | MUX_MODE7)		/* gpmc_a0.gpio1_16 BT_EN*/
 442		>;
 443	};
 444
 445	uart3_pins: uart3_pins {
 446		pinctrl-single,pins = <
 447			AM4372_IOPAD(0xa28, PIN_INPUT | MUX_MODE0)		/* uart3_rxd.uart3_rxd */
 448			AM4372_IOPAD(0xa2c, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart3_txd.uart3_txd */
 449			AM4372_IOPAD(0xa30, PIN_INPUT_PULLUP | MUX_MODE0)	/* uart3_ctsn.uart3_ctsn */
 450			AM4372_IOPAD(0xa34, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart3_rtsn.uart3_rtsn */
 451		>;
 452	};
 453
 454	mcasp1_pins: mcasp1_pins {
 455		pinctrl-single,pins = <
 456			AM4372_IOPAD(0x908, PIN_OUTPUT_PULLDOWN | MUX_MODE4)	/* mii1_col.mcasp1_axr2 */
 457			AM4372_IOPAD(0x90c, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* mii1_crs.mcasp1_aclkx */
 458			AM4372_IOPAD(0x910, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* mii1_rxerr.mcasp1_fsx */
 459			AM4372_IOPAD(0x944, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* rmii1_ref_clk.mcasp1_axr3 */
 460		>;
 461	};
 462
 463	mcasp1_sleep_pins: mcasp1_sleep_pins {
 464		pinctrl-single,pins = <
 465			AM4372_IOPAD(0x908, PIN_INPUT_PULLDOWN | MUX_MODE7)
 466			AM4372_IOPAD(0x90c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 467			AM4372_IOPAD(0x910, PIN_INPUT_PULLDOWN | MUX_MODE7)
 468			AM4372_IOPAD(0x944, PIN_INPUT_PULLDOWN | MUX_MODE7)
 469		>;
 470	};
 471
 472	gpio0_pins: gpio0_pins {
 473		pinctrl-single,pins = <
 474			AM4372_IOPAD(0xa6c, PIN_OUTPUT | MUX_MODE9) /* spi2_cs0.gpio0_23 SEL_eMMCorNANDn */
 475		>;
 476	};
 477
 478	emmc_pins_default: emmc_pins_default {
 479		pinctrl-single,pins = <
 480			AM4372_IOPAD(0x800, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad0.mmc1_dat0 */
 481			AM4372_IOPAD(0x804, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad1.mmc1_dat1 */
 482			AM4372_IOPAD(0x808, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad2.mmc1_dat2 */
 483			AM4372_IOPAD(0x80c, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad3.mmc1_dat3 */
 484			AM4372_IOPAD(0x810, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad4.mmc1_dat4 */
 485			AM4372_IOPAD(0x814, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad5.mmc1_dat5 */
 486			AM4372_IOPAD(0x818, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad6.mmc1_dat6 */
 487			AM4372_IOPAD(0x81c, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad7.mmc1_dat7 */
 488			AM4372_IOPAD(0x880, PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn1.mmc1_clk */
 489			AM4372_IOPAD(0x884, PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn2.mmc1_cmd */
 490		>;
 491	};
 492
 493	emmc_pins_sleep: emmc_pins_sleep {
 494		pinctrl-single,pins = <
 495			AM4372_IOPAD(0x800, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad0.gpio1_0 */
 496			AM4372_IOPAD(0x804, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad1.gpio1_1 */
 497			AM4372_IOPAD(0x808, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad2.gpio1_2 */
 498			AM4372_IOPAD(0x80c, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad3.gpio1_3 */
 499			AM4372_IOPAD(0x810, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad4.gpio1_4 */
 500			AM4372_IOPAD(0x814, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad5.gpio1_5 */
 501			AM4372_IOPAD(0x818, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad6.gpio1_6 */
 502			AM4372_IOPAD(0x81c, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad7.gpio1_7 */
 503			AM4372_IOPAD(0x880, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_csn1.gpio1_30 */
 504			AM4372_IOPAD(0x884, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_csn2.gpio1_31 */
 505		>;
 506	};
 507
 508	beeper_pins_default: beeper_pins_default {
 509		pinctrl-single,pins = <
 510			AM4372_IOPAD(0x9e0, PIN_OUTPUT_PULLUP | MUX_MODE7)	/* cam1_field.gpio4_12 */
 511		>;
 512	};
 513
 514	beeper_pins_sleep: beeper_pins_sleep {
 515		pinctrl-single,pins = <
 516			AM4372_IOPAD(0x9e0, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* cam1_field.gpio4_12 */
 517		>;
 518	};
 519
 520	unused_pins: unused_pins {
 521		pinctrl-single,pins = <
 522			AM4372_IOPAD(0x854, PIN_INPUT_PULLDOWN | MUX_MODE7)
 523			AM4372_IOPAD(0x858, PIN_INPUT_PULLDOWN | MUX_MODE7)
 524			AM4372_IOPAD(0x860, PIN_INPUT_PULLDOWN | MUX_MODE7)
 525			AM4372_IOPAD(0x864, PIN_INPUT_PULLDOWN | MUX_MODE7)
 526			AM4372_IOPAD(0x868, PIN_INPUT_PULLDOWN | MUX_MODE7)
 527			AM4372_IOPAD(0x86c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 528			AM4372_IOPAD(0x950, PIN_INPUT_PULLDOWN | MUX_MODE7)
 529			AM4372_IOPAD(0x990, PIN_INPUT_PULLDOWN | MUX_MODE7)
 530			AM4372_IOPAD(0x994, PIN_INPUT_PULLDOWN | MUX_MODE7)
 531			AM4372_IOPAD(0x998, PIN_INPUT_PULLDOWN | MUX_MODE7)
 532			AM4372_IOPAD(0x99c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 533			AM4372_IOPAD(0x9a0, PIN_INPUT_PULLDOWN | MUX_MODE7)
 534			AM4372_IOPAD(0xa3c, PIN_INPUT | PULL_DISABLE | MUX_MODE7)
 535			AM4372_IOPAD(0xa40, PIN_INPUT_PULLDOWN | MUX_MODE7)
 536			AM4372_IOPAD(0xa44, PIN_INPUT_PULLDOWN | MUX_MODE7)
 537			AM4372_IOPAD(0xa48, PIN_INPUT_PULLDOWN | MUX_MODE7)
 538			AM4372_IOPAD(0xa4c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 539			AM4372_IOPAD(0xa50, PIN_INPUT_PULLDOWN | MUX_MODE7)
 540			AM4372_IOPAD(0xa54, PIN_INPUT | PULL_DISABLE | MUX_MODE7)
 541			AM4372_IOPAD(0xa58, PIN_INPUT_PULLDOWN | MUX_MODE7)
 542			AM4372_IOPAD(0xa60, PIN_INPUT | PULL_DISABLE | MUX_MODE7)
 543			AM4372_IOPAD(0xa68, PIN_INPUT_PULLDOWN | MUX_MODE7)
 544			AM4372_IOPAD(0xa70, PIN_INPUT_PULLDOWN | MUX_MODE7)
 545			AM4372_IOPAD(0xa78, PIN_INPUT_PULLDOWN | MUX_MODE7)
 546			AM4372_IOPAD(0xa7c, PIN_INPUT | PULL_DISABLE)
 547			AM4372_IOPAD(0xac8, PIN_INPUT_PULLDOWN)
 548			AM4372_IOPAD(0xad4, PIN_INPUT_PULLDOWN)
 549			AM4372_IOPAD(0xad8, PIN_INPUT_PULLDOWN | MUX_MODE7)
 550			AM4372_IOPAD(0xadc, PIN_INPUT_PULLDOWN | MUX_MODE7)
 551			AM4372_IOPAD(0xae0, PIN_INPUT_PULLDOWN | MUX_MODE7)
 552			AM4372_IOPAD(0xae4, PIN_INPUT_PULLDOWN | MUX_MODE7)
 553			AM4372_IOPAD(0xae8, PIN_INPUT_PULLDOWN | MUX_MODE7)
 554			AM4372_IOPAD(0xaec, PIN_INPUT_PULLDOWN | MUX_MODE7)
 555			AM4372_IOPAD(0xaf0, PIN_INPUT_PULLDOWN | MUX_MODE7)
 556			AM4372_IOPAD(0xaf4, PIN_INPUT_PULLDOWN | MUX_MODE7)
 557			AM4372_IOPAD(0xaf8, PIN_INPUT_PULLDOWN | MUX_MODE7)
 558			AM4372_IOPAD(0xafc, PIN_INPUT_PULLDOWN | MUX_MODE7)
 559			AM4372_IOPAD(0xb00, PIN_INPUT_PULLDOWN | MUX_MODE7)
 560			AM4372_IOPAD(0xb04, PIN_INPUT_PULLDOWN | MUX_MODE7)
 561			AM4372_IOPAD(0xb08, PIN_INPUT_PULLDOWN | MUX_MODE7)
 562			AM4372_IOPAD(0xb0c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 563			AM4372_IOPAD(0xb10, PIN_INPUT_PULLDOWN | MUX_MODE7)
 564			AM4372_IOPAD(0xb14, PIN_INPUT_PULLDOWN | MUX_MODE7)
 565			AM4372_IOPAD(0xb18, PIN_INPUT_PULLDOWN | MUX_MODE7)
 566		>;
 567	};
 568
 569	debugss_pins: pinmux_debugss_pins {
 570		pinctrl-single,pins = <
 571			AM4372_IOPAD(0xa90, PIN_INPUT_PULLDOWN)
 572			AM4372_IOPAD(0xa94, PIN_INPUT_PULLDOWN)
 573			AM4372_IOPAD(0xa98, PIN_INPUT_PULLDOWN)
 574			AM4372_IOPAD(0xa9c, PIN_INPUT_PULLDOWN)
 575			AM4372_IOPAD(0xaa0, PIN_INPUT_PULLDOWN)
 576			AM4372_IOPAD(0xaa4, PIN_INPUT_PULLDOWN)
 577			AM4372_IOPAD(0xaa8, PIN_INPUT_PULLDOWN)
 578		>;
 579	};
 580
 581	uart0_pins_default: uart0_pins_default {
 582		pinctrl-single,pins = <
 583			AM4372_IOPAD(0x968, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE0) /* uart0_ctsn.uart0_ctsn */
 584			AM4372_IOPAD(0x96C, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE0) /* uart0_rtsn.uart0_rtsn */
 585			AM4372_IOPAD(0x970, PIN_INPUT_PULLUP | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0) /* uart0_rxd.uart0_rxd */
 586			AM4372_IOPAD(0x974, PIN_INPUT | PULL_DISABLE | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0) /* uart0_txd.uart0_txd */
 587		>;
 588	};
 589
 590	uart0_pins_sleep: uart0_pins_sleep {
 591		pinctrl-single,pins = <
 592			AM4372_IOPAD(0x968, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7) /* uart0_ctsn.uart0_ctsn */
 593			AM4372_IOPAD(0x96C, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7) /* uart0_rtsn.uart0_rtsn */
 594			AM4372_IOPAD(0x970, PIN_INPUT_PULLUP | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0) /* uart0_rxd.uart0_rxd */
 595			AM4372_IOPAD(0x974, PIN_INPUT_PULLDOWN | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0) /* uart0_txd.uart0_txd */
 596		>;
 597	};
 598
 599	matrix_keypad_default: matrix_keypad_default {
 600		pinctrl-single,pins = <
 601			AM4372_IOPAD(0x9a4, PIN_OUTPUT | MUX_MODE7)
 602			AM4372_IOPAD(0x9a8, PIN_OUTPUT | MUX_MODE7)
 603			AM4372_IOPAD(0x9ac, PIN_INPUT | PULL_DISABLE | MUX_MODE9)
 604			AM4372_IOPAD(0x954, PIN_INPUT_PULLDOWN | MUX_MODE0)
 605		>;
 606	};
 607
 608	matrix_keypad_sleep: matrix_keypad_sleep {
 609		pinctrl-single,pins = <
 610			AM4372_IOPAD(0x9a4, PULL_UP | MUX_MODE7)
 611			AM4372_IOPAD(0x9a8, PULL_UP | MUX_MODE7)
 612			AM4372_IOPAD(0x9ac, PIN_INPUT | PULL_DISABLE | MUX_MODE9)
 613			AM4372_IOPAD(0x954, PIN_INPUT_PULLDOWN | MUX_MODE0)
 614		>;
 615	};
 616};
 617
 618&uart0 {
 619	status = "okay";
 620	pinctrl-names = "default", "sleep";
 621	pinctrl-0 = <&uart0_pins_default>;
 622	pinctrl-1 = <&uart0_pins_sleep>;
 623};
 624
 625&i2c0 {
 626	status = "okay";
 627	pinctrl-names = "default";
 628	pinctrl-0 = <&i2c0_pins>;
 629	clock-frequency = <100000>;
 630
 631	tps65218: tps65218@24 {
 632		reg = <0x24>;
 633		compatible = "ti,tps65218";
 634		interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; /* NMIn */
 635		interrupt-controller;
 636		#interrupt-cells = <2>;
 637
 638		dcdc1: regulator-dcdc1 {
 639			regulator-name = "vdd_core";
 640			regulator-min-microvolt = <912000>;
 641			regulator-max-microvolt = <1144000>;
 642			regulator-boot-on;
 643			regulator-always-on;
 644		};
 645
 646		dcdc2: regulator-dcdc2 {
 647			regulator-name = "vdd_mpu";
 648			regulator-min-microvolt = <912000>;
 649			regulator-max-microvolt = <1378000>;
 650			regulator-boot-on;
 651			regulator-always-on;
 652		};
 653
 654		dcdc3: regulator-dcdc3 {
 655			regulator-name = "vdcdc3";
 656			regulator-boot-on;
 657			regulator-always-on;
 658			regulator-state-mem {
 659				regulator-on-in-suspend;
 660			};
 661			regulator-state-disk {
 662				regulator-off-in-suspend;
 663			};
 664		};
 665
 666		dcdc5: regulator-dcdc5 {
 667			regulator-name = "v1_0bat";
 668			regulator-min-microvolt = <1000000>;
 669			regulator-max-microvolt = <1000000>;
 670			regulator-boot-on;
 671			regulator-always-on;
 672			regulator-state-mem {
 673				regulator-on-in-suspend;
 674			};
 675		};
 676
 677		dcdc6: regulator-dcdc6 {
 678			regulator-name = "v1_8bat";
 679			regulator-min-microvolt = <1800000>;
 680			regulator-max-microvolt = <1800000>;
 681			regulator-boot-on;
 682			regulator-always-on;
 683			regulator-state-mem {
 684				regulator-on-in-suspend;
 685			};
 686		};
 687
 688		ldo1: regulator-ldo1 {
 689			regulator-min-microvolt = <1800000>;
 690			regulator-max-microvolt = <1800000>;
 691			regulator-boot-on;
 692			regulator-always-on;
 693		};
 694	};
 695
 696	ov2659@30 {
 697		compatible = "ovti,ov2659";
 698		reg = <0x30>;
 699
 700		clocks = <&refclk 0>;
 701		clock-names = "xvclk";
 702
 703		port {
 704			ov2659_0: endpoint {
 705				remote-endpoint = <&vpfe1_ep>;
 706				link-frequencies = /bits/ 64 <70000000>;
 707			};
 708		};
 709	};
 710};
 711
 712&i2c1 {
 713	status = "okay";
 714	pinctrl-names = "default";
 715	pinctrl-0 = <&i2c1_pins>;
 716	pixcir_ts@5c {
 717		compatible = "pixcir,pixcir_tangoc";
 718		pinctrl-names = "default";
 719		pinctrl-0 = <&pixcir_ts_pins>;
 720		reg = <0x5c>;
 721
 722		attb-gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
 723
 724		/*
 725		 * 0x264 represents the offset of padconf register of
 726		 * gpio3_22 from am43xx_pinmux base.
 727		 */
 728		interrupts-extended = <&gpio3 22 IRQ_TYPE_EDGE_FALLING>,
 729				      <&am43xx_pinmux 0x264>;
 730		interrupt-names = "tsc", "wakeup";
 731
 732		touchscreen-size-x = <1024>;
 733		touchscreen-size-y = <600>;
 734		wakeup-source;
 735	};
 736
 737	ov2659@30 {
 738		compatible = "ovti,ov2659";
 739		reg = <0x30>;
 740
 741		clocks = <&refclk 0>;
 742		clock-names = "xvclk";
 743
 744		port {
 745			ov2659_1: endpoint {
 746				remote-endpoint = <&vpfe0_ep>;
 747				link-frequencies = /bits/ 64 <70000000>;
 748			};
 749		};
 750	};
 751
 752	tlv320aic3106: tlv320aic3106@1b {
 753		#sound-dai-cells = <0>;
 754		compatible = "ti,tlv320aic3106";
 755		reg = <0x1b>;
 756		status = "okay";
 757
 758		/* Regulators */
 759		IOVDD-supply = <&evm_v3_3d>; /* V3_3D -> <tps63031> EN: V1_8D -> VBAT */
 760		AVDD-supply = <&evm_v3_3d>; /* v3_3AUD -> V3_3D -> ... */
 761		DRVDD-supply = <&evm_v3_3d>; /* v3_3AUD -> V3_3D -> ... */
 762		DVDD-supply = <&ldo1>; /* V1_8D -> LDO1 */
 763	};
 764};
 765
 766&epwmss0 {
 767	status = "okay";
 768};
 769
 770&tscadc {
 771	status = "okay";
 772
 773	adc {
 774		ti,adc-channels = <0 1 2 3 4 5 6 7>;
 775	};
 776};
 777
 778&magadc {
 779	status = "okay";
 780
 781	adc {
 782		ti,adc-channels = <0 1 2 3 4 5 6 7>;
 783	};
 784};
 785
 786&ecap0 {
 787	status = "okay";
 788	pinctrl-names = "default";
 789	pinctrl-0 = <&ecap0_pins>;
 790};
 791
 792&gpio0 {
 793	pinctrl-names = "default";
 794	pinctrl-0 = <&gpio0_pins>;
 795	status = "okay";
 796
 797	sel-emmc-nand-hog {
 798		gpio-hog;
 799		gpios = <23 GPIO_ACTIVE_HIGH>;
 800		/* SelEMMCorNAND selects between eMMC and NAND:
 801		 * Low: NAND
 802		 * High: eMMC
 803		 * When changing this line make sure the newly
 804		 * selected device node is enabled and the previously
 805		 * selected device node is disabled.
 806		 */
 807		output-low;
 808		line-name = "SelEMMCorNAND";
 809	};
 810};
 811
 812&gpio1 {
 813	status = "okay";
 814};
 815
 816&gpio3 {
 817	status = "okay";
 818};
 819
 820&gpio4 {
 821	status = "okay";
 822};
 823
 824&gpio5_target {
 825	ti,no-reset-on-init;
 826};
 827
 828&gpio5 {
 829	pinctrl-names = "default";
 830	pinctrl-0 = <&display_mux_pins>;
 831	status = "okay";
 
 832
 833	sel-lcd-hdmi-hog {
 834		/*
 835		 * SelLCDorHDMI selects between display and audio paths:
 836		 * Low: HDMI display with audio via HDMI
 837		 * High: LCD display with analog audio via aic3111 codec
 838		 */
 839		gpio-hog;
 840		gpios = <8 GPIO_ACTIVE_HIGH>;
 841		output-high;
 842		line-name = "SelLCDorHDMI";
 843	};
 844};
 845
 846&mmc1 {
 847	status = "okay";
 848	vmmc-supply = <&evm_v3_3d>;
 849	bus-width = <4>;
 850	pinctrl-names = "default";
 851	pinctrl-0 = <&mmc1_pins>;
 852	cd-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
 853};
 854
 855/* eMMC sits on mmc2 */
 856&mmc2 {
 857	/*
 858	 * When enabling eMMC, disable GPMC/NAND and set
 859	 * SelEMMCorNAND to output-high
 860	 */
 861	status = "disabled";
 862	vmmc-supply = <&evm_v3_3d>;
 863	bus-width = <8>;
 864	pinctrl-names = "default", "sleep";
 865	pinctrl-0 = <&emmc_pins_default>;
 866	pinctrl-1 = <&emmc_pins_sleep>;
 867	non-removable;
 868};
 869
 870&mmc3 {
 871	status = "okay";
 872	/* these are on the crossbar and are outlined in the
 873	   xbar-event-map element */
 874	dmas = <&edma_xbar 30 0 1>,
 875		<&edma_xbar 31 0 2>;
 876	dma-names = "tx", "rx";
 877	vmmc-supply = <&vmmcwl_fixed>;
 878	bus-width = <4>;
 879	pinctrl-names = "default", "sleep";
 880	pinctrl-0 = <&mmc3_pins_default>;
 881	pinctrl-1 = <&mmc3_pins_sleep>;
 882	cap-power-off-card;
 883	keep-power-in-suspend;
 884	non-removable;
 885
 886	#address-cells = <1>;
 887	#size-cells = <0>;
 888	wlcore: wlcore@0 {
 889		compatible = "ti,wl1835";
 890		reg = <2>;
 891		interrupt-parent = <&gpio1>;
 892		interrupts = <23 IRQ_TYPE_EDGE_RISING>;
 893	};
 894};
 895
 896&uart3 {
 897	status = "okay";
 898	pinctrl-names = "default";
 899	pinctrl-0 = <&uart3_pins>;
 900};
 901
 902&usb2_phy1 {
 903	status = "okay";
 904};
 905
 906&usb1 {
 907	dr_mode = "otg";
 908	status = "okay";
 909};
 910
 911&usb2_phy2 {
 912	status = "okay";
 913};
 914
 915&usb2 {
 916	dr_mode = "host";
 917	status = "okay";
 918};
 919
 920&mac_sw {
 
 921	pinctrl-names = "default", "sleep";
 922	pinctrl-0 = <&cpsw_default>;
 923	pinctrl-1 = <&cpsw_sleep>;
 924	status = "okay";
 925};
 926
 927&davinci_mdio_sw {
 928	pinctrl-names = "default", "sleep";
 929	pinctrl-0 = <&davinci_mdio_default>;
 930	pinctrl-1 = <&davinci_mdio_sleep>;
 
 931
 932	ethphy0: ethernet-phy@0 {
 933		reg = <0>;
 934	};
 935};
 936
 937&cpsw_port1 {
 938	phy-handle = <&ethphy0>;
 939	phy-mode = "rgmii-rxid";
 940	ti,dual-emac-pvid = <1>;
 941};
 942
 943&cpsw_port2 {
 944	status = "disabled";
 945};
 946
 947&elm {
 948	status = "okay";
 949};
 950
 951&gpmc {
 952	/*
 953	 * When enabling GPMC, disable eMMC and set
 954	 * SelEMMCorNAND to output-low
 955	 */
 956	status = "okay";
 957	pinctrl-names = "default";
 958	pinctrl-0 = <&nand_flash_x8>;
 959	ranges = <0 0 0x08000000 0x01000000>;	/* CS0 space. Min partition = 16MB */
 960	nand@0,0 {
 961		compatible = "ti,omap2-nand";
 962		reg = <0 0 4>;		/* device IO registers */
 963		interrupt-parent = <&gpmc>;
 964		interrupts = <0 IRQ_TYPE_NONE>, /* fifoevent */
 965			     <1 IRQ_TYPE_NONE>;	/* termcount */
 966		rb-gpios = <&gpmc 0 GPIO_ACTIVE_HIGH>;	/* gpmc_wait0 */
 967		ti,nand-xfer-type = "prefetch-dma";
 968		ti,nand-ecc-opt = "bch16";
 969		ti,elm-id = <&elm>;
 970		nand-bus-width = <8>;
 971		gpmc,device-width = <1>;
 972		gpmc,sync-clk-ps = <0>;
 973		gpmc,cs-on-ns = <0>;
 974		gpmc,cs-rd-off-ns = <40>;
 975		gpmc,cs-wr-off-ns = <40>;
 976		gpmc,adv-on-ns = <0>;
 977		gpmc,adv-rd-off-ns = <25>;
 978		gpmc,adv-wr-off-ns = <25>;
 979		gpmc,we-on-ns = <0>;
 980		gpmc,we-off-ns = <20>;
 981		gpmc,oe-on-ns = <3>;
 982		gpmc,oe-off-ns = <30>;
 983		gpmc,access-ns = <30>;
 984		gpmc,rd-cycle-ns = <40>;
 985		gpmc,wr-cycle-ns = <40>;
 986		gpmc,bus-turnaround-ns = <0>;
 987		gpmc,cycle2cycle-delay-ns = <0>;
 988		gpmc,clk-activation-ns = <0>;
 989		gpmc,wr-access-ns = <40>;
 990		gpmc,wr-data-mux-bus-ns = <0>;
 991		/* MTD partition table */
 992		/* All SPL-* partitions are sized to minimal length
 993		 * which can be independently programmable. For
 994		 * NAND flash this is equal to size of erase-block */
 995		#address-cells = <1>;
 996		#size-cells = <1>;
 997		partition@0 {
 998			label = "NAND.SPL";
 999			reg = <0x00000000 0x00040000>;
1000		};
1001		partition@1 {
1002			label = "NAND.SPL.backup1";
1003			reg = <0x00040000 0x00040000>;
1004		};
1005		partition@2 {
1006			label = "NAND.SPL.backup2";
1007			reg = <0x00080000 0x00040000>;
1008		};
1009		partition@3 {
1010			label = "NAND.SPL.backup3";
1011			reg = <0x000c0000 0x00040000>;
1012		};
1013		partition@4 {
1014			label = "NAND.u-boot-spl-os";
1015			reg = <0x00100000 0x00080000>;
1016		};
1017		partition@5 {
1018			label = "NAND.u-boot";
1019			reg = <0x00180000 0x00100000>;
1020		};
1021		partition@6 {
1022			label = "NAND.u-boot-env";
1023			reg = <0x00280000 0x00040000>;
1024		};
1025		partition@7 {
1026			label = "NAND.u-boot-env.backup1";
1027			reg = <0x002c0000 0x00040000>;
1028		};
1029		partition@8 {
1030			label = "NAND.kernel";
1031			reg = <0x00300000 0x00700000>;
1032		};
1033		partition@9 {
1034			label = "NAND.file-system";
1035			reg = <0x00a00000 0x1f600000>;
1036		};
1037	};
1038};
1039
1040&dss {
1041	status = "okay";
1042
1043	pinctrl-names = "default";
1044	pinctrl-0 = <&dss_pins>;
1045
1046	port {
1047		dpi_out: endpoint {
1048			remote-endpoint = <&lcd_in>;
1049			data-lines = <24>;
1050		};
1051	};
1052};
1053
1054&dcan0 {
1055	pinctrl-names = "default", "sleep";
1056	pinctrl-0 = <&dcan0_default>;
1057	pinctrl-1 = <&dcan0_sleep>;
1058	status = "okay";
1059};
1060
1061&dcan1 {
1062	pinctrl-names = "default", "sleep";
1063	pinctrl-0 = <&dcan1_default>;
1064	pinctrl-1 = <&dcan1_sleep>;
1065	status = "okay";
1066};
1067
1068&vpfe0 {
1069	status = "okay";
1070	pinctrl-names = "default", "sleep";
1071	pinctrl-0 = <&vpfe0_pins_default>;
1072	pinctrl-1 = <&vpfe0_pins_sleep>;
1073
1074	port {
1075		vpfe0_ep: endpoint {
1076			remote-endpoint = <&ov2659_1>;
1077			ti,am437x-vpfe-interface = <0>;
1078			bus-width = <8>;
1079			hsync-active = <0>;
1080			vsync-active = <0>;
1081		};
1082	};
1083};
1084
1085&vpfe1 {
1086	status = "okay";
1087	pinctrl-names = "default", "sleep";
1088	pinctrl-0 = <&vpfe1_pins_default>;
1089	pinctrl-1 = <&vpfe1_pins_sleep>;
1090
1091	port {
1092		vpfe1_ep: endpoint {
1093			remote-endpoint = <&ov2659_0>;
1094			ti,am437x-vpfe-interface = <0>;
1095			bus-width = <8>;
1096			hsync-active = <0>;
1097			vsync-active = <0>;
1098		};
1099	};
1100};
1101
1102&mcasp1 {
1103	#sound-dai-cells = <0>;
1104	pinctrl-names = "default", "sleep";
1105	pinctrl-0 = <&mcasp1_pins>;
1106	pinctrl-1 = <&mcasp1_sleep_pins>;
1107
1108	status = "okay";
1109
1110	op-mode = <0>; /* MCASP_IIS_MODE */
1111	tdm-slots = <2>;
1112	/* 4 serializers */
1113	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
1114		0 0 1 2
1115	>;
1116	tx-num-evt = <32>;
1117	rx-num-evt = <32>;
1118};
1119
1120&rtc {
1121	clocks = <&clk_32k_rtc>, <&clk_32768_ck>;
1122	clock-names = "ext-clk", "int-clk";
1123	status = "okay";
1124};
1125
1126&cpu {
1127	cpu0-supply = <&dcdc2>;
1128};
1129
1130&wkup_m3_ipc {
1131	ti,set-io-isolation;
1132	firmware-name = "am43x-evm-scale-data.bin";
1133};
1134
1135&pruss1_mdio {
1136	status = "disabled";
1137};
v5.4
   1// SPDX-License-Identifier: GPL-2.0-only
   2/*
   3 * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/
   4 */
   5
   6/* AM437x GP EVM */
   7
   8/dts-v1/;
   9
  10#include "am4372.dtsi"
  11#include <dt-bindings/pinctrl/am43xx.h>
  12#include <dt-bindings/pwm/pwm.h>
  13#include <dt-bindings/gpio/gpio.h>
  14
  15/ {
  16	model = "TI AM437x GP EVM";
  17	compatible = "ti,am437x-gp-evm","ti,am4372","ti,am43";
  18
  19	aliases {
  20		display0 = &lcd0;
  21	};
  22
  23	chosen {
  24		stdout-path = &uart0;
  25	};
  26
  27	evm_v3_3d: fixedregulator-v3_3d {
  28		compatible = "regulator-fixed";
  29		regulator-name = "evm_v3_3d";
  30		regulator-min-microvolt = <3300000>;
  31		regulator-max-microvolt = <3300000>;
  32		enable-active-high;
  33	};
  34
  35	vtt_fixed: fixedregulator-vtt {
  36		compatible = "regulator-fixed";
  37		regulator-name = "vtt_fixed";
  38		regulator-min-microvolt = <1500000>;
  39		regulator-max-microvolt = <1500000>;
  40		regulator-always-on;
  41		regulator-boot-on;
  42		enable-active-high;
  43		gpio = <&gpio5 7 GPIO_ACTIVE_HIGH>;
  44	};
  45
  46	vmmcwl_fixed: fixedregulator-mmcwl {
  47		compatible = "regulator-fixed";
  48		regulator-name = "vmmcwl_fixed";
  49		regulator-min-microvolt = <1800000>;
  50		regulator-max-microvolt = <1800000>;
  51		gpio = <&gpio1 20 GPIO_ACTIVE_HIGH>;
  52		enable-active-high;
  53	};
  54
  55	lcd_bl: backlight {
  56		compatible = "pwm-backlight";
  57		pwms = <&ecap0 0 50000 PWM_POLARITY_INVERTED>;
  58		brightness-levels = <0 51 53 56 62 75 101 152 255>;
  59		default-brightness-level = <8>;
  60	};
  61
  62	matrix_keypad: matrix_keypad0 {
  63		compatible = "gpio-matrix-keypad";
  64		debounce-delay-ms = <5>;
  65		col-scan-delay-us = <2>;
  66
  67		pinctrl-names = "default", "sleep";
  68		pinctrl-0 = <&matrix_keypad_default>;
  69		pinctrl-1 = <&matrix_keypad_sleep>;
  70
  71		wakeup-source;
  72
  73		row-gpios = <&gpio0 3 GPIO_ACTIVE_HIGH /* Bank0, pin3 */
  74				&gpio4 3 GPIO_ACTIVE_HIGH /* Bank4, pin3 */
  75				&gpio4 2 GPIO_ACTIVE_HIGH>; /* Bank4, pin2 */
  76
  77		col-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH /* Bank3, pin19 */
  78				&gpio3 20 GPIO_ACTIVE_HIGH>; /* Bank3, pin20 */
  79
  80		linux,keymap = <0x00000201      /* P1 */
  81				0x00010202      /* P2 */
  82				0x01000067      /* UP */
  83				0x0101006a      /* RIGHT */
  84				0x02000069      /* LEFT */
  85				0x0201006c>;      /* DOWN */
  86		};
  87
  88	lcd0: display {
  89		compatible = "osddisplays,osd057T0559-34ts", "panel-dpi";
  90		label = "lcd";
  91
  92		backlight = <&lcd_bl>;
  93
  94		panel-timing {
  95			clock-frequency = <33000000>;
  96			hactive = <800>;
  97			vactive = <480>;
  98			hfront-porch = <210>;
  99			hback-porch = <16>;
 100			hsync-len = <30>;
 101			vback-porch = <10>;
 102			vfront-porch = <22>;
 103			vsync-len = <13>;
 104			hsync-active = <0>;
 105			vsync-active = <0>;
 106			de-active = <1>;
 107			pixelclk-active = <1>;
 108		};
 109
 110		port {
 111			lcd_in: endpoint {
 112				remote-endpoint = <&dpi_out>;
 113			};
 114		};
 115	};
 116
 117	/* fixed 12MHz oscillator */
 118	refclk: oscillator {
 119		#clock-cells = <0>;
 120		compatible = "fixed-clock";
 121		clock-frequency = <12000000>;
 122	};
 123
 124	/* fixed 32k external oscillator clock */
 125	clk_32k_rtc: clk_32k_rtc {
 126		#clock-cells = <0>;
 127		compatible = "fixed-clock";
 128		clock-frequency = <32768>;
 129	};
 130
 131	sound0: sound0 {
 132		compatible = "simple-audio-card";
 133		simple-audio-card,name = "AM437x-GP-EVM";
 134		simple-audio-card,widgets =
 135			"Headphone", "Headphone Jack",
 136			"Line", "Line In";
 137		simple-audio-card,routing =
 138			"Headphone Jack",	"HPLOUT",
 139			"Headphone Jack",	"HPROUT",
 140			"LINE1L",		"Line In",
 141			"LINE1R",		"Line In";
 142		simple-audio-card,format = "dsp_b";
 143		simple-audio-card,bitclock-master = <&sound0_master>;
 144		simple-audio-card,frame-master = <&sound0_master>;
 145		simple-audio-card,bitclock-inversion;
 146
 147		simple-audio-card,cpu {
 148			sound-dai = <&mcasp1>;
 149			system-clock-frequency = <12000000>;
 150		};
 151
 152		sound0_master: simple-audio-card,codec {
 153			sound-dai = <&tlv320aic3106>;
 154			system-clock-frequency = <12000000>;
 155		};
 156	};
 157
 158	beeper: beeper {
 159		compatible = "gpio-beeper";
 160		pinctrl-names = "default";
 161		pinctrl-0 = <&beeper_pins_default>;
 162		pinctrl-1 = <&beeper_pins_sleep>;
 163		gpios = <&gpio4 12 GPIO_ACTIVE_HIGH>;
 164	};
 165};
 166
 167&am43xx_pinmux {
 168	pinctrl-names = "default", "sleep";
 169	pinctrl-0 = <&wlan_pins_default &ddr3_vtt_toggle_default &unused_pins &debugss_pins>;
 170	pinctrl-1 = <&wlan_pins_sleep>;
 171
 172	ddr3_vtt_toggle_default: ddr_vtt_toggle_default {
 173		pinctrl-single,pins = <
 174			0x25C (DS0_PULL_UP_DOWN_EN | PIN_OUTPUT_PULLUP | DS0_FORCE_OFF_MODE | MUX_MODE7) /* spi0_cs0.gpio5_7 */
 175		>;
 176	};
 177
 178	i2c0_pins: i2c0_pins {
 179		pinctrl-single,pins = <
 180			AM4372_IOPAD(0x988, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)  /* i2c0_sda.i2c0_sda */
 181			AM4372_IOPAD(0x98c, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)  /* i2c0_scl.i2c0_scl */
 182		>;
 183	};
 184
 185	i2c1_pins: i2c1_pins {
 186		pinctrl-single,pins = <
 187			AM4372_IOPAD(0x95c, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE2)  /* spi0_cs0.i2c1_scl */
 188			AM4372_IOPAD(0x958, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE2)  /* spi0_d1.i2c1_sda  */
 189		>;
 190	};
 191
 192	mmc1_pins: pinmux_mmc1_pins {
 193		pinctrl-single,pins = <
 194			AM4372_IOPAD(0x960, PIN_INPUT | MUX_MODE7) /* spi0_cs1.gpio0_6 */
 195		>;
 196	};
 197
 198	ecap0_pins: backlight_pins {
 199		pinctrl-single,pins = <
 200			AM4372_IOPAD(0x964, MUX_MODE0)       /* eCAP0_in_PWM0_out.eCAP0_in_PWM0_out MODE0 */
 201		>;
 202	};
 203
 204	pixcir_ts_pins: pixcir_ts_pins {
 205		pinctrl-single,pins = <
 206			AM4372_IOPAD(0xa64, PIN_INPUT_PULLUP | MUX_MODE7)  /* spi2_d0.gpio3_22 */
 207		>;
 208	};
 209
 210	cpsw_default: cpsw_default {
 211		pinctrl-single,pins = <
 212			/* Slave 1 */
 213			AM4372_IOPAD(0x914, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txen.rgmii1_txen */
 214			AM4372_IOPAD(0x918, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxdv.rgmii1_rxctl */
 215			AM4372_IOPAD(0x91c, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd1.rgmii1_txd3 */
 216			AM4372_IOPAD(0x920, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd0.rgmii1_txd2 */
 217			AM4372_IOPAD(0x924, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd1.rgmii1_txd1 */
 218			AM4372_IOPAD(0x928, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txd0.rgmii1_txd0 */
 219			AM4372_IOPAD(0x92c, PIN_OUTPUT_PULLDOWN | MUX_MODE2)	/* mii1_txclk.rmii1_tclk */
 220			AM4372_IOPAD(0x930, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxclk.rmii1_rclk */
 221			AM4372_IOPAD(0x934, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd1.rgmii1_rxd3 */
 222			AM4372_IOPAD(0x938, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd0.rgmii1_rxd2 */
 223			AM4372_IOPAD(0x93c, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd1.rgmii1_rxd1 */
 224			AM4372_IOPAD(0x940, PIN_INPUT_PULLDOWN | MUX_MODE2)	/* mii1_rxd0.rgmii1_rxd0 */
 225		>;
 226	};
 227
 228	cpsw_sleep: cpsw_sleep {
 229		pinctrl-single,pins = <
 230			/* Slave 1 reset value */
 231			AM4372_IOPAD(0x914, PIN_INPUT_PULLDOWN | MUX_MODE7)
 232			AM4372_IOPAD(0x918, PIN_INPUT_PULLDOWN | MUX_MODE7)
 233			AM4372_IOPAD(0x91c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 234			AM4372_IOPAD(0x920, PIN_INPUT_PULLDOWN | MUX_MODE7)
 235			AM4372_IOPAD(0x924, PIN_INPUT_PULLDOWN | MUX_MODE7)
 236			AM4372_IOPAD(0x928, PIN_INPUT_PULLDOWN | MUX_MODE7)
 237			AM4372_IOPAD(0x92c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 238			AM4372_IOPAD(0x930, PIN_INPUT_PULLDOWN | MUX_MODE7)
 239			AM4372_IOPAD(0x934, PIN_INPUT_PULLDOWN | MUX_MODE7)
 240			AM4372_IOPAD(0x938, PIN_INPUT_PULLDOWN | MUX_MODE7)
 241			AM4372_IOPAD(0x93c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 242			AM4372_IOPAD(0x940, PIN_INPUT_PULLDOWN | MUX_MODE7)
 243		>;
 244	};
 245
 246	davinci_mdio_default: davinci_mdio_default {
 247		pinctrl-single,pins = <
 248			/* MDIO */
 249			AM4372_IOPAD(0x948, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)	/* mdio_data.mdio_data */
 250			AM4372_IOPAD(0x94c, PIN_OUTPUT_PULLUP | MUX_MODE0)			/* mdio_clk.mdio_clk */
 251		>;
 252	};
 253
 254	davinci_mdio_sleep: davinci_mdio_sleep {
 255		pinctrl-single,pins = <
 256			/* MDIO reset value */
 257			AM4372_IOPAD(0x948, PIN_INPUT_PULLDOWN | MUX_MODE7)
 258			AM4372_IOPAD(0x94c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 259		>;
 260	};
 261
 262	nand_flash_x8: nand_flash_x8 {
 263		pinctrl-single,pins = <
 264			AM4372_IOPAD(0x800, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad0.gpmc_ad0 */
 265			AM4372_IOPAD(0x804, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad1.gpmc_ad1 */
 266			AM4372_IOPAD(0x808, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad2.gpmc_ad2 */
 267			AM4372_IOPAD(0x80c, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad3.gpmc_ad3 */
 268			AM4372_IOPAD(0x810, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad4.gpmc_ad4 */
 269			AM4372_IOPAD(0x814, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad5.gpmc_ad5 */
 270			AM4372_IOPAD(0x818, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad6.gpmc_ad6 */
 271			AM4372_IOPAD(0x81c, PIN_INPUT  | MUX_MODE0)	/* gpmc_ad7.gpmc_ad7 */
 272			AM4372_IOPAD(0x870, PIN_INPUT_PULLUP | MUX_MODE0)	/* gpmc_wait0.gpmc_wait0 */
 273			AM4372_IOPAD(0x874, PIN_OUTPUT_PULLUP | MUX_MODE7)	/* gpmc_wpn.gpmc_wpn */
 274			AM4372_IOPAD(0x87c, PIN_OUTPUT | MUX_MODE0)		/* gpmc_csn0.gpmc_csn0  */
 275			AM4372_IOPAD(0x890, PIN_OUTPUT | MUX_MODE0)		/* gpmc_advn_ale.gpmc_advn_ale */
 276			AM4372_IOPAD(0x894, PIN_OUTPUT | MUX_MODE0)		/* gpmc_oen_ren.gpmc_oen_ren */
 277			AM4372_IOPAD(0x898, PIN_OUTPUT | MUX_MODE0)		/* gpmc_wen.gpmc_wen */
 278			AM4372_IOPAD(0x89c, PIN_OUTPUT | MUX_MODE0)		/* gpmc_be0n_cle.gpmc_be0n_cle */
 279		>;
 280	};
 281
 282	dss_pins: dss_pins {
 283		pinctrl-single,pins = <
 284			AM4372_IOPAD(0x820, PIN_OUTPUT_PULLUP | MUX_MODE1) /*gpmc ad 8 -> DSS DATA 23 */
 285			AM4372_IOPAD(0x824, PIN_OUTPUT_PULLUP | MUX_MODE1)
 286			AM4372_IOPAD(0x828, PIN_OUTPUT_PULLUP | MUX_MODE1)
 287			AM4372_IOPAD(0x82c, PIN_OUTPUT_PULLUP | MUX_MODE1)
 288			AM4372_IOPAD(0x830, PIN_OUTPUT_PULLUP | MUX_MODE1)
 289			AM4372_IOPAD(0x834, PIN_OUTPUT_PULLUP | MUX_MODE1)
 290			AM4372_IOPAD(0x838, PIN_OUTPUT_PULLUP | MUX_MODE1)
 291			AM4372_IOPAD(0x83c, PIN_OUTPUT_PULLUP | MUX_MODE1) /*gpmc ad 15 -> DSS DATA 16 */
 292			AM4372_IOPAD(0x8a0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS DATA 0 */
 293			AM4372_IOPAD(0x8a4, PIN_OUTPUT_PULLUP | MUX_MODE0)
 294			AM4372_IOPAD(0x8a8, PIN_OUTPUT_PULLUP | MUX_MODE0)
 295			AM4372_IOPAD(0x8ac, PIN_OUTPUT_PULLUP | MUX_MODE0)
 296			AM4372_IOPAD(0x8b0, PIN_OUTPUT_PULLUP | MUX_MODE0)
 297			AM4372_IOPAD(0x8b4, PIN_OUTPUT_PULLUP | MUX_MODE0)
 298			AM4372_IOPAD(0x8b8, PIN_OUTPUT_PULLUP | MUX_MODE0)
 299			AM4372_IOPAD(0x8bc, PIN_OUTPUT_PULLUP | MUX_MODE0)
 300			AM4372_IOPAD(0x8c0, PIN_OUTPUT_PULLUP | MUX_MODE0)
 301			AM4372_IOPAD(0x8c4, PIN_OUTPUT_PULLUP | MUX_MODE0)
 302			AM4372_IOPAD(0x8c8, PIN_OUTPUT_PULLUP | MUX_MODE0)
 303			AM4372_IOPAD(0x8cc, PIN_OUTPUT_PULLUP | MUX_MODE0)
 304			AM4372_IOPAD(0x8d0, PIN_OUTPUT_PULLUP | MUX_MODE0)
 305			AM4372_IOPAD(0x8d4, PIN_OUTPUT_PULLUP | MUX_MODE0)
 306			AM4372_IOPAD(0x8d8, PIN_OUTPUT_PULLUP | MUX_MODE0)
 307			AM4372_IOPAD(0x8dc, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS DATA 15 */
 308			AM4372_IOPAD(0x8e0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS VSYNC */
 309			AM4372_IOPAD(0x8e4, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS HSYNC */
 310			AM4372_IOPAD(0x8e8, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS PCLK */
 311			AM4372_IOPAD(0x8ec, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS AC BIAS EN */
 312
 313		>;
 314	};
 315
 316	display_mux_pins: display_mux_pins {
 317		pinctrl-single,pins = <
 318			/* GPIO 5_8 to select LCD / HDMI */
 319			AM4372_IOPAD(0xa38, PIN_OUTPUT_PULLUP | MUX_MODE7)
 320		>;
 321	};
 322
 323	dcan0_default: dcan0_default_pins {
 324		pinctrl-single,pins = <
 325			AM4372_IOPAD(0x978, PIN_OUTPUT | MUX_MODE2)		/* uart1_ctsn.d_can0_tx */
 326			AM4372_IOPAD(0x97c, PIN_INPUT_PULLUP | MUX_MODE2)	/* uart1_rtsn.d_can0_rx */
 327		>;
 328	};
 329
 330	dcan0_sleep: dcan0_sleep_pins {
 331		pinctrl-single,pins = <
 332			AM4372_IOPAD(0x978, PIN_INPUT_PULLUP | MUX_MODE7)	/* uart1_ctsn.gpio0_12 */
 333			AM4372_IOPAD(0x97c, PIN_INPUT_PULLUP | MUX_MODE7)	/* uart1_rtsn.gpio0_13 */
 334		>;
 335	};
 336
 337	dcan1_default: dcan1_default_pins {
 338		pinctrl-single,pins = <
 339			AM4372_IOPAD(0x980, PIN_OUTPUT | MUX_MODE2)		/* uart1_rxd.d_can1_tx */
 340			AM4372_IOPAD(0x984, PIN_INPUT_PULLUP | MUX_MODE2)	/* uart1_txd.d_can1_rx */
 341		>;
 342	};
 343
 344	dcan1_sleep: dcan1_sleep_pins {
 345		pinctrl-single,pins = <
 346			AM4372_IOPAD(0x980, PIN_INPUT_PULLUP | MUX_MODE7)	/* uart1_rxd.gpio0_14 */
 347			AM4372_IOPAD(0x984, PIN_INPUT_PULLUP | MUX_MODE7)	/* uart1_txd.gpio0_15 */
 348		>;
 349	};
 350
 351	vpfe0_pins_default: vpfe0_pins_default {
 352		pinctrl-single,pins = <
 353			AM4372_IOPAD(0x9b0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_hd mode 0*/
 354			AM4372_IOPAD(0x9b4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_vd mode 0*/
 355			AM4372_IOPAD(0x9c0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_pclk mode 0*/
 356			AM4372_IOPAD(0x9c4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data8 mode 0*/
 357			AM4372_IOPAD(0x9c8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data9 mode 0*/
 358			AM4372_IOPAD(0xa08, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data0 mode 0*/
 359			AM4372_IOPAD(0xa0c, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data1 mode 0*/
 360			AM4372_IOPAD(0xa10, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data2 mode 0*/
 361			AM4372_IOPAD(0xa14, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data3 mode 0*/
 362			AM4372_IOPAD(0xa18, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data4 mode 0*/
 363			AM4372_IOPAD(0xa1c, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data5 mode 0*/
 364			AM4372_IOPAD(0xa20, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data6 mode 0*/
 365			AM4372_IOPAD(0xa24, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam0_data7 mode 0*/
 366		>;
 367	};
 368
 369	vpfe0_pins_sleep: vpfe0_pins_sleep {
 370		pinctrl-single,pins = <
 371			AM4372_IOPAD(0x9b0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_hd mode 0*/
 372			AM4372_IOPAD(0x9b4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_vd mode 0*/
 373			AM4372_IOPAD(0x9c0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_pclk mode 0*/
 374			AM4372_IOPAD(0x9c4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data8 mode 0*/
 375			AM4372_IOPAD(0x9c8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data9 mode 0*/
 376			AM4372_IOPAD(0xa08, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data0 mode 0*/
 377			AM4372_IOPAD(0xa0c, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data1 mode 0*/
 378			AM4372_IOPAD(0xa10, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data2 mode 0*/
 379			AM4372_IOPAD(0xa14, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data3 mode 0*/
 380			AM4372_IOPAD(0xa18, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data4 mode 0*/
 381			AM4372_IOPAD(0xa1c, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data5 mode 0*/
 382			AM4372_IOPAD(0xa20, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data6 mode 0*/
 383			AM4372_IOPAD(0xa24, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam0_data7 mode 0*/
 384		>;
 385	};
 386
 387	vpfe1_pins_default: vpfe1_pins_default {
 388		pinctrl-single,pins = <
 389			AM4372_IOPAD(0x9cc, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data9 mode 0*/
 390			AM4372_IOPAD(0x9d0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data8 mode 0*/
 391			AM4372_IOPAD(0x9d4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_hd mode 0*/
 392			AM4372_IOPAD(0x9d8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_vd mode 0*/
 393			AM4372_IOPAD(0x9dC, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_pclk mode 0*/
 394			AM4372_IOPAD(0x9e8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data0 mode 0*/
 395			AM4372_IOPAD(0x9ec, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data1 mode 0*/
 396			AM4372_IOPAD(0x9f0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data2 mode 0*/
 397			AM4372_IOPAD(0x9f4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data3 mode 0*/
 398			AM4372_IOPAD(0x9f8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data4 mode 0*/
 399			AM4372_IOPAD(0x9fc, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data5 mode 0*/
 400			AM4372_IOPAD(0xa00, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data6 mode 0*/
 401			AM4372_IOPAD(0xa04, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data7 mode 0*/
 402		>;
 403	};
 404
 405	vpfe1_pins_sleep: vpfe1_pins_sleep {
 406		pinctrl-single,pins = <
 407			AM4372_IOPAD(0x9cc, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data9 mode 0*/
 408			AM4372_IOPAD(0x9d0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data8 mode 0*/
 409			AM4372_IOPAD(0x9d4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_hd mode 0*/
 410			AM4372_IOPAD(0x9d8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_vd mode 0*/
 411			AM4372_IOPAD(0x9dc, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_pclk mode 0*/
 412			AM4372_IOPAD(0x9e8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data0 mode 0*/
 413			AM4372_IOPAD(0x9ec, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data1 mode 0*/
 414			AM4372_IOPAD(0x9f0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data2 mode 0*/
 415			AM4372_IOPAD(0x9f4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data3 mode 0*/
 416			AM4372_IOPAD(0x9f8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data4 mode 0*/
 417			AM4372_IOPAD(0x9fc, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data5 mode 0*/
 418			AM4372_IOPAD(0xa00, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data6 mode 0*/
 419			AM4372_IOPAD(0xa04, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)  /* cam1_data7 mode 0*/
 420		>;
 421	};
 422
 423	mmc3_pins_default: pinmux_mmc3_pins_default {
 424		pinctrl-single,pins = <
 425			AM4372_IOPAD(0x88c, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_clk.mmc2_clk */
 426			AM4372_IOPAD(0x888, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_csn3.mmc2_cmd */
 427			AM4372_IOPAD(0x844, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_a1.mmc2_dat0 */
 428			AM4372_IOPAD(0x848, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_a2.mmc2_dat1 */
 429			AM4372_IOPAD(0x84c, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_a3.mmc2_dat2 */
 430			AM4372_IOPAD(0x878, PIN_INPUT_PULLUP | MUX_MODE3)      /* gpmc_be1n.mmc2_dat3 */
 431		>;
 432	};
 433
 434	mmc3_pins_sleep: pinmux_mmc3_pins_sleep {
 435		pinctrl-single,pins = <
 436			AM4372_IOPAD(0x88c, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_clk.mmc2_clk */
 437			AM4372_IOPAD(0x888, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_csn3.mmc2_cmd */
 438			AM4372_IOPAD(0x844, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_a1.mmc2_dat0 */
 439			AM4372_IOPAD(0x848, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_a2.mmc2_dat1 */
 440			AM4372_IOPAD(0x84c, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_a3.mmc2_dat2 */
 441			AM4372_IOPAD(0x878, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* gpmc_be1n.mmc2_dat3 */
 442		>;
 443	};
 444
 445	wlan_pins_default: pinmux_wlan_pins_default {
 446		pinctrl-single,pins = <
 447			AM4372_IOPAD(0x850, PIN_OUTPUT_PULLDOWN | MUX_MODE7)		/* gpmc_a4.gpio1_20 WL_EN */
 448			AM4372_IOPAD(0x85c, PIN_INPUT | WAKEUP_ENABLE | MUX_MODE7)	/* gpmc_a7.gpio1_23 WL_IRQ*/
 449			AM4372_IOPAD(0x840, PIN_OUTPUT_PULLDOWN | MUX_MODE7)		/* gpmc_a0.gpio1_16 BT_EN*/
 450		>;
 451	};
 452
 453	wlan_pins_sleep: pinmux_wlan_pins_sleep {
 454		pinctrl-single,pins = <
 455			AM4372_IOPAD(0x850, PIN_OUTPUT_PULLDOWN | MUX_MODE7)		/* gpmc_a4.gpio1_20 WL_EN */
 456			AM4372_IOPAD(0x85c, PIN_INPUT | WAKEUP_ENABLE | MUX_MODE7)	/* gpmc_a7.gpio1_23 WL_IRQ*/
 457			AM4372_IOPAD(0x840, PIN_OUTPUT_PULLUP | MUX_MODE7)		/* gpmc_a0.gpio1_16 BT_EN*/
 458		>;
 459	};
 460
 461	uart3_pins: uart3_pins {
 462		pinctrl-single,pins = <
 463			AM4372_IOPAD(0xa28, PIN_INPUT | MUX_MODE0)		/* uart3_rxd.uart3_rxd */
 464			AM4372_IOPAD(0xa2c, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart3_txd.uart3_txd */
 465			AM4372_IOPAD(0xa30, PIN_INPUT_PULLUP | MUX_MODE0)	/* uart3_ctsn.uart3_ctsn */
 466			AM4372_IOPAD(0xa34, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart3_rtsn.uart3_rtsn */
 467		>;
 468	};
 469
 470	mcasp1_pins: mcasp1_pins {
 471		pinctrl-single,pins = <
 472			AM4372_IOPAD(0x908, PIN_OUTPUT_PULLDOWN | MUX_MODE4)	/* mii1_col.mcasp1_axr2 */
 473			AM4372_IOPAD(0x90c, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* mii1_crs.mcasp1_aclkx */
 474			AM4372_IOPAD(0x910, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* mii1_rxerr.mcasp1_fsx */
 475			AM4372_IOPAD(0x944, PIN_INPUT_PULLDOWN | MUX_MODE4)	/* rmii1_ref_clk.mcasp1_axr3 */
 476		>;
 477	};
 478
 479	mcasp1_sleep_pins: mcasp1_sleep_pins {
 480		pinctrl-single,pins = <
 481			AM4372_IOPAD(0x908, PIN_INPUT_PULLDOWN | MUX_MODE7)
 482			AM4372_IOPAD(0x90c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 483			AM4372_IOPAD(0x910, PIN_INPUT_PULLDOWN | MUX_MODE7)
 484			AM4372_IOPAD(0x944, PIN_INPUT_PULLDOWN | MUX_MODE7)
 485		>;
 486	};
 487
 488	gpio0_pins: gpio0_pins {
 489		pinctrl-single,pins = <
 490			AM4372_IOPAD(0xa6c, PIN_OUTPUT | MUX_MODE9) /* spi2_cs0.gpio0_23 SEL_eMMCorNANDn */
 491		>;
 492	};
 493
 494	emmc_pins_default: emmc_pins_default {
 495		pinctrl-single,pins = <
 496			AM4372_IOPAD(0x800, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad0.mmc1_dat0 */
 497			AM4372_IOPAD(0x804, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad1.mmc1_dat1 */
 498			AM4372_IOPAD(0x808, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad2.mmc1_dat2 */
 499			AM4372_IOPAD(0x80c, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad3.mmc1_dat3 */
 500			AM4372_IOPAD(0x810, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad4.mmc1_dat4 */
 501			AM4372_IOPAD(0x814, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad5.mmc1_dat5 */
 502			AM4372_IOPAD(0x818, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad6.mmc1_dat6 */
 503			AM4372_IOPAD(0x81c, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_ad7.mmc1_dat7 */
 504			AM4372_IOPAD(0x880, PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn1.mmc1_clk */
 505			AM4372_IOPAD(0x884, PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn2.mmc1_cmd */
 506		>;
 507	};
 508
 509	emmc_pins_sleep: emmc_pins_sleep {
 510		pinctrl-single,pins = <
 511			AM4372_IOPAD(0x800, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad0.gpio1_0 */
 512			AM4372_IOPAD(0x804, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad1.gpio1_1 */
 513			AM4372_IOPAD(0x808, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad2.gpio1_2 */
 514			AM4372_IOPAD(0x80c, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad3.gpio1_3 */
 515			AM4372_IOPAD(0x810, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad4.gpio1_4 */
 516			AM4372_IOPAD(0x814, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad5.gpio1_5 */
 517			AM4372_IOPAD(0x818, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad6.gpio1_6 */
 518			AM4372_IOPAD(0x81c, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad7.gpio1_7 */
 519			AM4372_IOPAD(0x880, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_csn1.gpio1_30 */
 520			AM4372_IOPAD(0x884, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_csn2.gpio1_31 */
 521		>;
 522	};
 523
 524	beeper_pins_default: beeper_pins_default {
 525		pinctrl-single,pins = <
 526			AM4372_IOPAD(0x9e0, PIN_OUTPUT_PULLUP | MUX_MODE7)	/* cam1_field.gpio4_12 */
 527		>;
 528	};
 529
 530	beeper_pins_sleep: beeper_pins_sleep {
 531		pinctrl-single,pins = <
 532			AM4372_IOPAD(0x9e0, PIN_INPUT_PULLDOWN | MUX_MODE7)	/* cam1_field.gpio4_12 */
 533		>;
 534	};
 535
 536	unused_pins: unused_pins {
 537		pinctrl-single,pins = <
 538			AM4372_IOPAD(0x854, PIN_INPUT_PULLDOWN | MUX_MODE7)
 539			AM4372_IOPAD(0x858, PIN_INPUT_PULLDOWN | MUX_MODE7)
 540			AM4372_IOPAD(0x860, PIN_INPUT_PULLDOWN | MUX_MODE7)
 541			AM4372_IOPAD(0x864, PIN_INPUT_PULLDOWN | MUX_MODE7)
 542			AM4372_IOPAD(0x868, PIN_INPUT_PULLDOWN | MUX_MODE7)
 543			AM4372_IOPAD(0x86c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 544			AM4372_IOPAD(0x950, PIN_INPUT_PULLDOWN | MUX_MODE7)
 545			AM4372_IOPAD(0x990, PIN_INPUT_PULLDOWN | MUX_MODE7)
 546			AM4372_IOPAD(0x994, PIN_INPUT_PULLDOWN | MUX_MODE7)
 547			AM4372_IOPAD(0x998, PIN_INPUT_PULLDOWN | MUX_MODE7)
 548			AM4372_IOPAD(0x99c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 549			AM4372_IOPAD(0x9a0, PIN_INPUT_PULLDOWN | MUX_MODE7)
 550			AM4372_IOPAD(0xa3c, PIN_INPUT | PULL_DISABLE | MUX_MODE7)
 551			AM4372_IOPAD(0xa40, PIN_INPUT_PULLDOWN | MUX_MODE7)
 552			AM4372_IOPAD(0xa44, PIN_INPUT_PULLDOWN | MUX_MODE7)
 553			AM4372_IOPAD(0xa48, PIN_INPUT_PULLDOWN | MUX_MODE7)
 554			AM4372_IOPAD(0xa4c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 555			AM4372_IOPAD(0xa50, PIN_INPUT_PULLDOWN | MUX_MODE7)
 556			AM4372_IOPAD(0xa54, PIN_INPUT | PULL_DISABLE | MUX_MODE7)
 557			AM4372_IOPAD(0xa58, PIN_INPUT_PULLDOWN | MUX_MODE7)
 558			AM4372_IOPAD(0xa60, PIN_INPUT | PULL_DISABLE | MUX_MODE7)
 559			AM4372_IOPAD(0xa68, PIN_INPUT_PULLDOWN | MUX_MODE7)
 560			AM4372_IOPAD(0xa70, PIN_INPUT_PULLDOWN | MUX_MODE7)
 561			AM4372_IOPAD(0xa78, PIN_INPUT_PULLDOWN | MUX_MODE7)
 562			AM4372_IOPAD(0xa7c, PIN_INPUT | PULL_DISABLE)
 563			AM4372_IOPAD(0xac8, PIN_INPUT_PULLDOWN)
 564			AM4372_IOPAD(0xad4, PIN_INPUT_PULLDOWN)
 565			AM4372_IOPAD(0xad8, PIN_INPUT_PULLDOWN | MUX_MODE7)
 566			AM4372_IOPAD(0xadc, PIN_INPUT_PULLDOWN | MUX_MODE7)
 567			AM4372_IOPAD(0xae0, PIN_INPUT_PULLDOWN | MUX_MODE7)
 568			AM4372_IOPAD(0xae4, PIN_INPUT_PULLDOWN | MUX_MODE7)
 569			AM4372_IOPAD(0xae8, PIN_INPUT_PULLDOWN | MUX_MODE7)
 570			AM4372_IOPAD(0xaec, PIN_INPUT_PULLDOWN | MUX_MODE7)
 571			AM4372_IOPAD(0xaf0, PIN_INPUT_PULLDOWN | MUX_MODE7)
 572			AM4372_IOPAD(0xaf4, PIN_INPUT_PULLDOWN | MUX_MODE7)
 573			AM4372_IOPAD(0xaf8, PIN_INPUT_PULLDOWN | MUX_MODE7)
 574			AM4372_IOPAD(0xafc, PIN_INPUT_PULLDOWN | MUX_MODE7)
 575			AM4372_IOPAD(0xb00, PIN_INPUT_PULLDOWN | MUX_MODE7)
 576			AM4372_IOPAD(0xb04, PIN_INPUT_PULLDOWN | MUX_MODE7)
 577			AM4372_IOPAD(0xb08, PIN_INPUT_PULLDOWN | MUX_MODE7)
 578			AM4372_IOPAD(0xb0c, PIN_INPUT_PULLDOWN | MUX_MODE7)
 579			AM4372_IOPAD(0xb10, PIN_INPUT_PULLDOWN | MUX_MODE7)
 580			AM4372_IOPAD(0xb14, PIN_INPUT_PULLDOWN | MUX_MODE7)
 581			AM4372_IOPAD(0xb18, PIN_INPUT_PULLDOWN | MUX_MODE7)
 582		>;
 583	};
 584
 585	debugss_pins: pinmux_debugss_pins {
 586		pinctrl-single,pins = <
 587			AM4372_IOPAD(0xa90, PIN_INPUT_PULLDOWN)
 588			AM4372_IOPAD(0xa94, PIN_INPUT_PULLDOWN)
 589			AM4372_IOPAD(0xa98, PIN_INPUT_PULLDOWN)
 590			AM4372_IOPAD(0xa9c, PIN_INPUT_PULLDOWN)
 591			AM4372_IOPAD(0xaa0, PIN_INPUT_PULLDOWN)
 592			AM4372_IOPAD(0xaa4, PIN_INPUT_PULLDOWN)
 593			AM4372_IOPAD(0xaa8, PIN_INPUT_PULLDOWN)
 594		>;
 595	};
 596
 597	uart0_pins_default: uart0_pins_default {
 598		pinctrl-single,pins = <
 599			AM4372_IOPAD(0x968, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE0) /* uart0_ctsn.uart0_ctsn */
 600			AM4372_IOPAD(0x96C, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE0) /* uart0_rtsn.uart0_rtsn */
 601			AM4372_IOPAD(0x970, PIN_INPUT_PULLUP | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0) /* uart0_rxd.uart0_rxd */
 602			AM4372_IOPAD(0x974, PIN_INPUT | PULL_DISABLE | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0) /* uart0_txd.uart0_txd */
 603		>;
 604	};
 605
 606	uart0_pins_sleep: uart0_pins_sleep {
 607		pinctrl-single,pins = <
 608			AM4372_IOPAD(0x968, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7) /* uart0_ctsn.uart0_ctsn */
 609			AM4372_IOPAD(0x96C, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7) /* uart0_rtsn.uart0_rtsn */
 610			AM4372_IOPAD(0x970, PIN_INPUT_PULLUP | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0) /* uart0_rxd.uart0_rxd */
 611			AM4372_IOPAD(0x974, PIN_INPUT_PULLDOWN | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0) /* uart0_txd.uart0_txd */
 612		>;
 613	};
 614
 615	matrix_keypad_default: matrix_keypad_default {
 616		pinctrl-single,pins = <
 617			AM4372_IOPAD(0x9a4, PIN_OUTPUT | MUX_MODE7)
 618			AM4372_IOPAD(0x9a8, PIN_OUTPUT | MUX_MODE7)
 619			AM4372_IOPAD(0x9ac, PIN_INPUT | PULL_DISABLE | MUX_MODE9)
 620			AM4372_IOPAD(0x954, PIN_INPUT_PULLDOWN | MUX_MODE0)
 621		>;
 622	};
 623
 624	matrix_keypad_sleep: matrix_keypad_sleep {
 625		pinctrl-single,pins = <
 626			AM4372_IOPAD(0x9a4, PULL_UP | MUX_MODE7)
 627			AM4372_IOPAD(0x9a8, PULL_UP | MUX_MODE7)
 628			AM4372_IOPAD(0x9ac, PIN_INPUT | PULL_DISABLE | MUX_MODE9)
 629			AM4372_IOPAD(0x954, PIN_INPUT_PULLDOWN | MUX_MODE0)
 630		>;
 631	};
 632};
 633
 634&uart0 {
 635	status = "okay";
 636	pinctrl-names = "default", "sleep";
 637	pinctrl-0 = <&uart0_pins_default>;
 638	pinctrl-1 = <&uart0_pins_sleep>;
 639};
 640
 641&i2c0 {
 642	status = "okay";
 643	pinctrl-names = "default";
 644	pinctrl-0 = <&i2c0_pins>;
 645	clock-frequency = <100000>;
 646
 647	tps65218: tps65218@24 {
 648		reg = <0x24>;
 649		compatible = "ti,tps65218";
 650		interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; /* NMIn */
 651		interrupt-controller;
 652		#interrupt-cells = <2>;
 653
 654		dcdc1: regulator-dcdc1 {
 655			regulator-name = "vdd_core";
 656			regulator-min-microvolt = <912000>;
 657			regulator-max-microvolt = <1144000>;
 658			regulator-boot-on;
 659			regulator-always-on;
 660		};
 661
 662		dcdc2: regulator-dcdc2 {
 663			regulator-name = "vdd_mpu";
 664			regulator-min-microvolt = <912000>;
 665			regulator-max-microvolt = <1378000>;
 666			regulator-boot-on;
 667			regulator-always-on;
 668		};
 669
 670		dcdc3: regulator-dcdc3 {
 671			regulator-name = "vdcdc3";
 672			regulator-boot-on;
 673			regulator-always-on;
 674			regulator-state-mem {
 675				regulator-on-in-suspend;
 676			};
 677			regulator-state-disk {
 678				regulator-off-in-suspend;
 679			};
 680		};
 681
 682		dcdc5: regulator-dcdc5 {
 683			regulator-name = "v1_0bat";
 684			regulator-min-microvolt = <1000000>;
 685			regulator-max-microvolt = <1000000>;
 686			regulator-boot-on;
 687			regulator-always-on;
 688			regulator-state-mem {
 689				regulator-on-in-suspend;
 690			};
 691		};
 692
 693		dcdc6: regulator-dcdc6 {
 694			regulator-name = "v1_8bat";
 695			regulator-min-microvolt = <1800000>;
 696			regulator-max-microvolt = <1800000>;
 697			regulator-boot-on;
 698			regulator-always-on;
 699			regulator-state-mem {
 700				regulator-on-in-suspend;
 701			};
 702		};
 703
 704		ldo1: regulator-ldo1 {
 705			regulator-min-microvolt = <1800000>;
 706			regulator-max-microvolt = <1800000>;
 707			regulator-boot-on;
 708			regulator-always-on;
 709		};
 710	};
 711
 712	ov2659@30 {
 713		compatible = "ovti,ov2659";
 714		reg = <0x30>;
 715
 716		clocks = <&refclk 0>;
 717		clock-names = "xvclk";
 718
 719		port {
 720			ov2659_0: endpoint {
 721				remote-endpoint = <&vpfe1_ep>;
 722				link-frequencies = /bits/ 64 <70000000>;
 723			};
 724		};
 725	};
 726};
 727
 728&i2c1 {
 729	status = "okay";
 730	pinctrl-names = "default";
 731	pinctrl-0 = <&i2c1_pins>;
 732	pixcir_ts@5c {
 733		compatible = "pixcir,pixcir_tangoc";
 734		pinctrl-names = "default";
 735		pinctrl-0 = <&pixcir_ts_pins>;
 736		reg = <0x5c>;
 737
 738		attb-gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
 739
 740		/*
 741		 * 0x264 represents the offset of padconf register of
 742		 * gpio3_22 from am43xx_pinmux base.
 743		 */
 744		interrupts-extended = <&gpio3 22 IRQ_TYPE_EDGE_FALLING>,
 745				      <&am43xx_pinmux 0x264>;
 746		interrupt-names = "tsc", "wakeup";
 747
 748		touchscreen-size-x = <1024>;
 749		touchscreen-size-y = <600>;
 750		wakeup-source;
 751	};
 752
 753	ov2659@30 {
 754		compatible = "ovti,ov2659";
 755		reg = <0x30>;
 756
 757		clocks = <&refclk 0>;
 758		clock-names = "xvclk";
 759
 760		port {
 761			ov2659_1: endpoint {
 762				remote-endpoint = <&vpfe0_ep>;
 763				link-frequencies = /bits/ 64 <70000000>;
 764			};
 765		};
 766	};
 767
 768	tlv320aic3106: tlv320aic3106@1b {
 769		#sound-dai-cells = <0>;
 770		compatible = "ti,tlv320aic3106";
 771		reg = <0x1b>;
 772		status = "okay";
 773
 774		/* Regulators */
 775		IOVDD-supply = <&evm_v3_3d>; /* V3_3D -> <tps63031> EN: V1_8D -> VBAT */
 776		AVDD-supply = <&evm_v3_3d>; /* v3_3AUD -> V3_3D -> ... */
 777		DRVDD-supply = <&evm_v3_3d>; /* v3_3AUD -> V3_3D -> ... */
 778		DVDD-supply = <&ldo1>; /* V1_8D -> LDO1 */
 779	};
 780};
 781
 782&epwmss0 {
 783	status = "okay";
 784};
 785
 786&tscadc {
 787	status = "okay";
 788
 789	adc {
 790		ti,adc-channels = <0 1 2 3 4 5 6 7>;
 791	};
 792};
 793
 
 
 
 
 
 
 
 
 794&ecap0 {
 795	status = "okay";
 796	pinctrl-names = "default";
 797	pinctrl-0 = <&ecap0_pins>;
 798};
 799
 800&gpio0 {
 801	pinctrl-names = "default";
 802	pinctrl-0 = <&gpio0_pins>;
 803	status = "okay";
 804
 805	p23 {
 806		gpio-hog;
 807		gpios = <23 GPIO_ACTIVE_HIGH>;
 808		/* SelEMMCorNAND selects between eMMC and NAND:
 809		 * Low: NAND
 810		 * High: eMMC
 811		 * When changing this line make sure the newly
 812		 * selected device node is enabled and the previously
 813		 * selected device node is disabled.
 814		 */
 815		output-low;
 816		line-name = "SelEMMCorNAND";
 817	};
 818};
 819
 820&gpio1 {
 821	status = "okay";
 822};
 823
 824&gpio3 {
 825	status = "okay";
 826};
 827
 828&gpio4 {
 829	status = "okay";
 830};
 831
 
 
 
 
 832&gpio5 {
 833	pinctrl-names = "default";
 834	pinctrl-0 = <&display_mux_pins>;
 835	status = "okay";
 836	ti,no-reset-on-init;
 837
 838	p8 {
 839		/*
 840		 * SelLCDorHDMI selects between display and audio paths:
 841		 * Low: HDMI display with audio via HDMI
 842		 * High: LCD display with analog audio via aic3111 codec
 843		 */
 844		gpio-hog;
 845		gpios = <8 GPIO_ACTIVE_HIGH>;
 846		output-high;
 847		line-name = "SelLCDorHDMI";
 848	};
 849};
 850
 851&mmc1 {
 852	status = "okay";
 853	vmmc-supply = <&evm_v3_3d>;
 854	bus-width = <4>;
 855	pinctrl-names = "default";
 856	pinctrl-0 = <&mmc1_pins>;
 857	cd-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
 858};
 859
 860/* eMMC sits on mmc2 */
 861&mmc2 {
 862	/*
 863	 * When enabling eMMC, disable GPMC/NAND and set
 864	 * SelEMMCorNAND to output-high
 865	 */
 866	status = "disabled";
 867	vmmc-supply = <&evm_v3_3d>;
 868	bus-width = <8>;
 869	pinctrl-names = "default", "sleep";
 870	pinctrl-0 = <&emmc_pins_default>;
 871	pinctrl-1 = <&emmc_pins_sleep>;
 872	ti,non-removable;
 873};
 874
 875&mmc3 {
 876	status = "okay";
 877	/* these are on the crossbar and are outlined in the
 878	   xbar-event-map element */
 879	dmas = <&edma_xbar 30 0 1>,
 880		<&edma_xbar 31 0 2>;
 881	dma-names = "tx", "rx";
 882	vmmc-supply = <&vmmcwl_fixed>;
 883	bus-width = <4>;
 884	pinctrl-names = "default", "sleep";
 885	pinctrl-0 = <&mmc3_pins_default>;
 886	pinctrl-1 = <&mmc3_pins_sleep>;
 887	cap-power-off-card;
 888	keep-power-in-suspend;
 889	ti,non-removable;
 890
 891	#address-cells = <1>;
 892	#size-cells = <0>;
 893	wlcore: wlcore@0 {
 894		compatible = "ti,wl1835";
 895		reg = <2>;
 896		interrupt-parent = <&gpio1>;
 897		interrupts = <23 IRQ_TYPE_EDGE_RISING>;
 898	};
 899};
 900
 901&uart3 {
 902	status = "okay";
 903	pinctrl-names = "default";
 904	pinctrl-0 = <&uart3_pins>;
 905};
 906
 907&usb2_phy1 {
 908	status = "okay";
 909};
 910
 911&usb1 {
 912	dr_mode = "otg";
 913	status = "okay";
 914};
 915
 916&usb2_phy2 {
 917	status = "okay";
 918};
 919
 920&usb2 {
 921	dr_mode = "host";
 922	status = "okay";
 923};
 924
 925&mac {
 926	slaves = <1>;
 927	pinctrl-names = "default", "sleep";
 928	pinctrl-0 = <&cpsw_default>;
 929	pinctrl-1 = <&cpsw_sleep>;
 930	status = "okay";
 931};
 932
 933&davinci_mdio {
 934	pinctrl-names = "default", "sleep";
 935	pinctrl-0 = <&davinci_mdio_default>;
 936	pinctrl-1 = <&davinci_mdio_sleep>;
 937	status = "okay";
 938
 939	ethphy0: ethernet-phy@0 {
 940		reg = <0>;
 941	};
 942};
 943
 944&cpsw_emac0 {
 945	phy-handle = <&ethphy0>;
 946	phy-mode = "rgmii";
 
 
 
 
 
 947};
 948
 949&elm {
 950	status = "okay";
 951};
 952
 953&gpmc {
 954	/*
 955	 * When enabling GPMC, disable eMMC and set
 956	 * SelEMMCorNAND to output-low
 957	 */
 958	status = "okay";
 959	pinctrl-names = "default";
 960	pinctrl-0 = <&nand_flash_x8>;
 961	ranges = <0 0 0x08000000 0x01000000>;	/* CS0 space. Min partition = 16MB */
 962	nand@0,0 {
 963		compatible = "ti,omap2-nand";
 964		reg = <0 0 4>;		/* device IO registers */
 965		interrupt-parent = <&gpmc>;
 966		interrupts = <0 IRQ_TYPE_NONE>, /* fifoevent */
 967			     <1 IRQ_TYPE_NONE>;	/* termcount */
 968		rb-gpios = <&gpmc 0 GPIO_ACTIVE_HIGH>;	/* gpmc_wait0 */
 969		ti,nand-xfer-type = "prefetch-dma";
 970		ti,nand-ecc-opt = "bch16";
 971		ti,elm-id = <&elm>;
 972		nand-bus-width = <8>;
 973		gpmc,device-width = <1>;
 974		gpmc,sync-clk-ps = <0>;
 975		gpmc,cs-on-ns = <0>;
 976		gpmc,cs-rd-off-ns = <40>;
 977		gpmc,cs-wr-off-ns = <40>;
 978		gpmc,adv-on-ns = <0>;
 979		gpmc,adv-rd-off-ns = <25>;
 980		gpmc,adv-wr-off-ns = <25>;
 981		gpmc,we-on-ns = <0>;
 982		gpmc,we-off-ns = <20>;
 983		gpmc,oe-on-ns = <3>;
 984		gpmc,oe-off-ns = <30>;
 985		gpmc,access-ns = <30>;
 986		gpmc,rd-cycle-ns = <40>;
 987		gpmc,wr-cycle-ns = <40>;
 988		gpmc,bus-turnaround-ns = <0>;
 989		gpmc,cycle2cycle-delay-ns = <0>;
 990		gpmc,clk-activation-ns = <0>;
 991		gpmc,wr-access-ns = <40>;
 992		gpmc,wr-data-mux-bus-ns = <0>;
 993		/* MTD partition table */
 994		/* All SPL-* partitions are sized to minimal length
 995		 * which can be independently programmable. For
 996		 * NAND flash this is equal to size of erase-block */
 997		#address-cells = <1>;
 998		#size-cells = <1>;
 999		partition@0 {
1000			label = "NAND.SPL";
1001			reg = <0x00000000 0x00040000>;
1002		};
1003		partition@1 {
1004			label = "NAND.SPL.backup1";
1005			reg = <0x00040000 0x00040000>;
1006		};
1007		partition@2 {
1008			label = "NAND.SPL.backup2";
1009			reg = <0x00080000 0x00040000>;
1010		};
1011		partition@3 {
1012			label = "NAND.SPL.backup3";
1013			reg = <0x000c0000 0x00040000>;
1014		};
1015		partition@4 {
1016			label = "NAND.u-boot-spl-os";
1017			reg = <0x00100000 0x00080000>;
1018		};
1019		partition@5 {
1020			label = "NAND.u-boot";
1021			reg = <0x00180000 0x00100000>;
1022		};
1023		partition@6 {
1024			label = "NAND.u-boot-env";
1025			reg = <0x00280000 0x00040000>;
1026		};
1027		partition@7 {
1028			label = "NAND.u-boot-env.backup1";
1029			reg = <0x002c0000 0x00040000>;
1030		};
1031		partition@8 {
1032			label = "NAND.kernel";
1033			reg = <0x00300000 0x00700000>;
1034		};
1035		partition@9 {
1036			label = "NAND.file-system";
1037			reg = <0x00a00000 0x1f600000>;
1038		};
1039	};
1040};
1041
1042&dss {
1043	status = "ok";
1044
1045	pinctrl-names = "default";
1046	pinctrl-0 = <&dss_pins>;
1047
1048	port {
1049		dpi_out: endpoint {
1050			remote-endpoint = <&lcd_in>;
1051			data-lines = <24>;
1052		};
1053	};
1054};
1055
1056&dcan0 {
1057	pinctrl-names = "default", "sleep";
1058	pinctrl-0 = <&dcan0_default>;
1059	pinctrl-1 = <&dcan0_sleep>;
1060	status = "okay";
1061};
1062
1063&dcan1 {
1064	pinctrl-names = "default", "sleep";
1065	pinctrl-0 = <&dcan1_default>;
1066	pinctrl-1 = <&dcan1_sleep>;
1067	status = "okay";
1068};
1069
1070&vpfe0 {
1071	status = "okay";
1072	pinctrl-names = "default", "sleep";
1073	pinctrl-0 = <&vpfe0_pins_default>;
1074	pinctrl-1 = <&vpfe0_pins_sleep>;
1075
1076	port {
1077		vpfe0_ep: endpoint {
1078			remote-endpoint = <&ov2659_1>;
1079			ti,am437x-vpfe-interface = <0>;
1080			bus-width = <8>;
1081			hsync-active = <0>;
1082			vsync-active = <0>;
1083		};
1084	};
1085};
1086
1087&vpfe1 {
1088	status = "okay";
1089	pinctrl-names = "default", "sleep";
1090	pinctrl-0 = <&vpfe1_pins_default>;
1091	pinctrl-1 = <&vpfe1_pins_sleep>;
1092
1093	port {
1094		vpfe1_ep: endpoint {
1095			remote-endpoint = <&ov2659_0>;
1096			ti,am437x-vpfe-interface = <0>;
1097			bus-width = <8>;
1098			hsync-active = <0>;
1099			vsync-active = <0>;
1100		};
1101	};
1102};
1103
1104&mcasp1 {
1105	#sound-dai-cells = <0>;
1106	pinctrl-names = "default", "sleep";
1107	pinctrl-0 = <&mcasp1_pins>;
1108	pinctrl-1 = <&mcasp1_sleep_pins>;
1109
1110	status = "okay";
1111
1112	op-mode = <0>; /* MCASP_IIS_MODE */
1113	tdm-slots = <2>;
1114	/* 4 serializers */
1115	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
1116		0 0 1 2
1117	>;
1118	tx-num-evt = <32>;
1119	rx-num-evt = <32>;
1120};
1121
1122&rtc {
1123	clocks = <&clk_32k_rtc>, <&clk_32768_ck>;
1124	clock-names = "ext-clk", "int-clk";
1125	status = "okay";
1126};
1127
1128&cpu {
1129	cpu0-supply = <&dcdc2>;
 
 
 
 
 
 
 
 
 
1130};