Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0-only
0002 /*
0003  * Copyright (C) 2013 Texas Instruments Incorporated - https://www.ti.com/
0004  */
0005 
0006 /* AM43x EPOS EVM */
0007 
0008 /dts-v1/;
0009 
0010 #include "am4372.dtsi"
0011 #include <dt-bindings/pinctrl/am43xx.h>
0012 #include <dt-bindings/gpio/gpio.h>
0013 #include <dt-bindings/pwm/pwm.h>
0014 #include <dt-bindings/sound/tlv320aic31xx.h>
0015 
0016 / {
0017         model = "TI AM43x EPOS EVM";
0018         compatible = "ti,am43x-epos-evm","ti,am438x","ti,am43";
0019 
0020         aliases {
0021                 display0 = &lcd0;
0022         };
0023 
0024         chosen {
0025                 stdout-path = &uart0;
0026         };
0027 
0028         vmmcsd_fixed: fixedregulator-sd {
0029                 compatible = "regulator-fixed";
0030                 regulator-name = "vmmcsd_fixed";
0031                 regulator-min-microvolt = <3300000>;
0032                 regulator-max-microvolt = <3300000>;
0033                 enable-active-high;
0034         };
0035 
0036         vbat: fixedregulator0 {
0037                 compatible = "regulator-fixed";
0038                 regulator-name = "vbat";
0039                 regulator-min-microvolt = <5000000>;
0040                 regulator-max-microvolt = <5000000>;
0041                 regulator-boot-on;
0042         };
0043 
0044         lcd0: display {
0045                 compatible = "osddisplays,osd070t1718-19ts", "panel-dpi";
0046                 label = "lcd";
0047 
0048                 backlight = <&lcd_bl>;
0049 
0050                 port {
0051                         lcd_in: endpoint {
0052                                 remote-endpoint = <&dpi_out>;
0053                         };
0054                 };
0055         };
0056 
0057         matrix_keypad: matrix_keypad0 {
0058                 compatible = "gpio-matrix-keypad";
0059                 debounce-delay-ms = <5>;
0060                 col-scan-delay-us = <2>;
0061                 pinctrl-names = "default", "sleep";
0062                 pinctrl-0 = <&matrix_keypad_default>;
0063                 pinctrl-1 = <&matrix_keypad_sleep>;
0064                 wakeup-source;
0065 
0066                 row-gpios = <&gpio0 12 GPIO_ACTIVE_HIGH         /* Bank0, pin12 */
0067                              &gpio0 13 GPIO_ACTIVE_HIGH         /* Bank0, pin13 */
0068                              &gpio0 14 GPIO_ACTIVE_HIGH         /* Bank0, pin14 */
0069                              &gpio0 15 GPIO_ACTIVE_HIGH>;       /* Bank0, pin15 */
0070 
0071                 col-gpios = <&gpio3 9 GPIO_ACTIVE_HIGH          /* Bank3, pin9 */
0072                              &gpio3 10 GPIO_ACTIVE_HIGH         /* Bank3, pin10 */
0073                              &gpio2 18 GPIO_ACTIVE_HIGH         /* Bank2, pin18 */
0074                              &gpio2 19 GPIO_ACTIVE_HIGH>;       /* Bank2, pin19 */
0075 
0076                 linux,keymap = <0x00000201      /* P1 */
0077                         0x01000204      /* P4 */
0078                         0x02000207      /* P7 */
0079                         0x0300020a      /* NUMERIC_STAR */
0080                         0x00010202      /* P2 */
0081                         0x01010205      /* P5 */
0082                         0x02010208      /* P8 */
0083                         0x03010200      /* P0 */
0084                         0x00020203      /* P3 */
0085                         0x01020206      /* P6 */
0086                         0x02020209      /* P9 */
0087                         0x0302020b      /* NUMERIC_POUND */
0088                         0x00030067      /* UP */
0089                         0x0103006a      /* RIGHT */
0090                         0x0203006c      /* DOWN */
0091                         0x03030069>;    /* LEFT */
0092         };
0093 
0094         lcd_bl: backlight {
0095                 compatible = "pwm-backlight";
0096                 pwms = <&ecap0 0 50000 PWM_POLARITY_INVERTED>;
0097                 brightness-levels = <0 51 53 56 62 75 101 152 255>;
0098                 default-brightness-level = <8>;
0099         };
0100 
0101         sound0: sound0 {
0102                 compatible = "simple-audio-card";
0103                 simple-audio-card,name = "AM43-EPOS-EVM";
0104                 simple-audio-card,widgets =
0105                         "Microphone", "Microphone Jack",
0106                         "Headphone", "Headphone Jack",
0107                         "Speaker", "Speaker";
0108                 simple-audio-card,routing =
0109                         "MIC1LP", "Microphone Jack",
0110                         "MIC1RP", "Microphone Jack",
0111                         "MIC1LP", "MICBIAS",
0112                         "MIC1RP", "MICBIAS",
0113                         "Headphone Jack", "HPL",
0114                         "Headphone Jack", "HPR",
0115                         "Speaker", "SPL",
0116                         "Speaker", "SPR";
0117                 simple-audio-card,format = "dsp_b";
0118                 simple-audio-card,bitclock-master = <&sound0_master>;
0119                 simple-audio-card,frame-master = <&sound0_master>;
0120                 simple-audio-card,bitclock-inversion;
0121 
0122                 simple-audio-card,cpu {
0123                         sound-dai = <&mcasp1>;
0124                         system-clock-frequency = <12000000>;
0125                 };
0126 
0127                 sound0_master: simple-audio-card,codec {
0128                         sound-dai = <&tlv320aic3111>;
0129                         system-clock-frequency = <12000000>;
0130                 };
0131         };
0132 
0133         audio_mstrclk: clock {
0134                 compatible = "fixed-clock";
0135                 #clock-cells = <0>;
0136                 clock-frequency = <12000000>;
0137         };
0138 };
0139 
0140 &am43xx_pinmux {
0141                 pinctrl-names = "default";
0142                 pinctrl-0 = <&unused_pins>;
0143 
0144                 unused_pins: unused_pins {
0145                         pinctrl-single,pins = <
0146                                 AM4372_IOPAD(0x848, DS0_PIN_OUTPUT_PULLUP | PIN_OUTPUT_PULLUP | MUX_MODE7)
0147                                 AM4372_IOPAD(0x850, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0148                                 AM4372_IOPAD(0x858, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0149                                 AM4372_IOPAD(0x860, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0150                                 AM4372_IOPAD(0x864, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0151                                 AM4372_IOPAD(0x868, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0152                                 AM4372_IOPAD(0x86c, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0153                                 AM4372_IOPAD(0x878, DS0_PIN_OUTPUT_PULLUP | PIN_OUTPUT_PULLUP | MUX_MODE7)
0154                                 AM4372_IOPAD(0x908, DS0_PIN_INPUT_PULLDOWN | PIN_INPUT_PULLDOWN | MUX_MODE7)
0155                                 AM4372_IOPAD(0x91c, DS0_PIN_OUTPUT_PULLDOWN | PIN_OUTPUT_PULLDOWN | MUX_MODE7)
0156                                 AM4372_IOPAD(0x920, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0157                                 AM4372_IOPAD(0x9e0, DS0_PIN_INPUT_PULLDOWN | PIN_INPUT_PULLDOWN | MUX_MODE7)
0158                                 AM4372_IOPAD(0xA0c, DS0_PIN_OUTPUT_PULLDOWN | PIN_OUTPUT_PULLDOWN | MUX_MODE7)
0159                                 AM4372_IOPAD(0xA38, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0160                                 AM4372_IOPAD(0xA3c, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0161                                 AM4372_IOPAD(0xA40, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0162                                 AM4372_IOPAD(0xA44, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0163                                 AM4372_IOPAD(0xA48, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0164                                 AM4372_IOPAD(0xA4c, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0165                                 AM4372_IOPAD(0xA50, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0166                                 AM4372_IOPAD(0xA54, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0167                                 AM4372_IOPAD(0xA58, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0168                                 AM4372_IOPAD(0xA5c, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0169                                 AM4372_IOPAD(0xA60, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0170                                 AM4372_IOPAD(0xA64, DS0_PIN_OUTPUT_PULLUP | PIN_OUTPUT_PULLUP | MUX_MODE7)
0171                                 AM4372_IOPAD(0xA68, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0172                                 AM4372_IOPAD(0xA6C, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0173                                 AM4372_IOPAD(0xA74, DS0_PIN_INPUT_PULLDOWN | PIN_INPUT_PULLDOWN | MUX_MODE7)
0174                                 AM4372_IOPAD(0xA78, DS0_PIN_INPUT | PIN_INPUT_PULLDOWN | MUX_MODE7)
0175                         >;
0176                 };
0177 
0178                 cpsw_default: cpsw_default {
0179                         pinctrl-single,pins = <
0180                                 /* Slave 1 */
0181                                 AM4372_IOPAD(0x90c, PIN_INPUT_PULLDOWN | MUX_MODE1)     /* mii1_crs.rmii1_crs */
0182                                 AM4372_IOPAD(0x910, PIN_INPUT_PULLDOWN | MUX_MODE1)     /* mii1_rxerr.rmii1_rxerr */
0183                                 AM4372_IOPAD(0x914, PIN_OUTPUT_PULLDOWN | MUX_MODE1)    /* mii1_txen.rmii1_txen */
0184                                 AM4372_IOPAD(0x918, PIN_INPUT_PULLDOWN | MUX_MODE1)     /* mii1_rxdv.rmii1_rxdv */
0185                                 AM4372_IOPAD(0x924, PIN_OUTPUT_PULLDOWN | MUX_MODE1)    /* mii1_txd1.rmii1_txd1 */
0186                                 AM4372_IOPAD(0x928, PIN_OUTPUT_PULLDOWN | MUX_MODE1)    /* mii1_txd0.rmii1_txd0 */
0187                                 AM4372_IOPAD(0x93c, PIN_INPUT_PULLDOWN | MUX_MODE1)     /* mii1_rxd1.rmii1_rxd1 */
0188                                 AM4372_IOPAD(0x940, PIN_INPUT_PULLDOWN | MUX_MODE1)     /* mii1_rxd0.rmii1_rxd0 */
0189                                 AM4372_IOPAD(0x944, PIN_INPUT_PULLDOWN | MUX_MODE0)     /* rmii1_refclk.rmii1_refclk */
0190                         >;
0191                 };
0192 
0193                 cpsw_sleep: cpsw_sleep {
0194                         pinctrl-single,pins = <
0195                                 /* Slave 1 reset value */
0196                                 AM4372_IOPAD(0x90c, PIN_INPUT_PULLDOWN | MUX_MODE7)
0197                                 AM4372_IOPAD(0x910, PIN_INPUT_PULLDOWN | MUX_MODE7)
0198                                 AM4372_IOPAD(0x914, PIN_INPUT_PULLDOWN | MUX_MODE7)
0199                                 AM4372_IOPAD(0x918, PIN_INPUT_PULLDOWN | MUX_MODE7)
0200                                 AM4372_IOPAD(0x924, PIN_INPUT_PULLDOWN | MUX_MODE7)
0201                                 AM4372_IOPAD(0x928, PIN_INPUT_PULLDOWN | MUX_MODE7)
0202                                 AM4372_IOPAD(0x93c, PIN_INPUT_PULLDOWN | MUX_MODE7)
0203                                 AM4372_IOPAD(0x940, PIN_INPUT_PULLDOWN | MUX_MODE7)
0204                                 AM4372_IOPAD(0x944, PIN_INPUT_PULLDOWN | MUX_MODE7)
0205                         >;
0206                 };
0207 
0208                 davinci_mdio_default: davinci_mdio_default {
0209                         pinctrl-single,pins = <
0210                                 /* MDIO */
0211                                 AM4372_IOPAD(0x948, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)       /* mdio_data.mdio_data */
0212                                 AM4372_IOPAD(0x94c, PIN_OUTPUT_PULLUP | MUX_MODE0)                      /* mdio_clk.mdio_clk */
0213                         >;
0214                 };
0215 
0216                 davinci_mdio_sleep: davinci_mdio_sleep {
0217                         pinctrl-single,pins = <
0218                                 /* MDIO reset value */
0219                                 AM4372_IOPAD(0x948, PIN_INPUT_PULLDOWN | MUX_MODE7)
0220                                 AM4372_IOPAD(0x94c, PIN_INPUT_PULLDOWN | MUX_MODE7)
0221                         >;
0222                 };
0223 
0224                 i2c0_pins: pinmux_i2c0_pins {
0225                         pinctrl-single,pins = <
0226                                 AM4372_IOPAD(0x988, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)       /* i2c0_sda.i2c0_sda */
0227                                 AM4372_IOPAD(0x98c, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)       /* i2c0_scl.i2c0_scl */
0228                         >;
0229                 };
0230 
0231                 nand_flash_x8_default: nand_flash_x8_default {
0232                         pinctrl-single,pins = <
0233                                 AM4372_IOPAD(0x840, PIN_OUTPUT_PULLDOWN | MUX_MODE7)    /* gpmc_a0.SELQSPIorNAND/GPIO */
0234                                 AM4372_IOPAD(0x800, PIN_INPUT_PULLDOWN | MUX_MODE0)     /* gpmc_ad0.gpmc_ad0 */
0235                                 AM4372_IOPAD(0x804, PIN_INPUT_PULLDOWN | MUX_MODE0)     /* gpmc_ad1.gpmc_ad1 */
0236                                 AM4372_IOPAD(0x808, PIN_INPUT_PULLDOWN | MUX_MODE0)     /* gpmc_ad2.gpmc_ad2 */
0237                                 AM4372_IOPAD(0x80c, PIN_INPUT_PULLDOWN | MUX_MODE0)     /* gpmc_ad3.gpmc_ad3 */
0238                                 AM4372_IOPAD(0x810, PIN_INPUT_PULLDOWN | MUX_MODE0)     /* gpmc_ad4.gpmc_ad4 */
0239                                 AM4372_IOPAD(0x814, PIN_INPUT_PULLDOWN | MUX_MODE0)     /* gpmc_ad5.gpmc_ad5 */
0240                                 AM4372_IOPAD(0x818, PIN_INPUT_PULLDOWN | MUX_MODE0)     /* gpmc_ad6.gpmc_ad6 */
0241                                 AM4372_IOPAD(0x81c, PIN_INPUT_PULLDOWN | MUX_MODE0)     /* gpmc_ad7.gpmc_ad7 */
0242                                 AM4372_IOPAD(0x870, PIN_INPUT_PULLUP | MUX_MODE0)       /* gpmc_wait0.gpmc_wait0 */
0243                                 AM4372_IOPAD(0x874, PIN_OUTPUT_PULLUP | MUX_MODE7)      /* gpmc_wpn.gpmc_wpn */
0244                                 AM4372_IOPAD(0x87c, PIN_OUTPUT | MUX_MODE0)             /* gpmc_csn0.gpmc_csn0  */
0245                                 AM4372_IOPAD(0x890, PIN_OUTPUT | MUX_MODE0)             /* gpmc_advn_ale.gpmc_advn_ale */
0246                                 AM4372_IOPAD(0x894, PIN_OUTPUT | MUX_MODE0)             /* gpmc_oen_ren.gpmc_oen_ren */
0247                                 AM4372_IOPAD(0x898, PIN_OUTPUT | MUX_MODE0)             /* gpmc_wen.gpmc_wen */
0248                                 AM4372_IOPAD(0x89c, PIN_OUTPUT | MUX_MODE0)             /* gpmc_be0n_cle.gpmc_be0n_cle */
0249                         >;
0250                 };
0251 
0252                 nand_flash_x8_sleep: nand_flash_x8_sleep {
0253                         pinctrl-single,pins = <
0254                                 AM4372_IOPAD(0x840, DS0_PIN_OUTPUT_PULLDOWN | MUX_MODE7)
0255                                 AM4372_IOPAD(0x800, DS0_PIN_OUTPUT_PULLDOWN | MUX_MODE7)
0256                                 AM4372_IOPAD(0x804, DS0_PIN_OUTPUT_PULLDOWN | MUX_MODE7)
0257                                 AM4372_IOPAD(0x808, DS0_PIN_OUTPUT_PULLDOWN | MUX_MODE7)
0258                                 AM4372_IOPAD(0x80c, DS0_PIN_OUTPUT_PULLDOWN | MUX_MODE7)
0259                                 AM4372_IOPAD(0x810, DS0_PIN_OUTPUT_PULLDOWN | MUX_MODE7)
0260                                 AM4372_IOPAD(0x814, DS0_PIN_OUTPUT_PULLDOWN | MUX_MODE7)
0261                                 AM4372_IOPAD(0x818, DS0_PIN_OUTPUT_PULLDOWN | MUX_MODE7)
0262                                 AM4372_IOPAD(0x81c, DS0_PIN_OUTPUT_PULLDOWN | MUX_MODE7)
0263                                 AM4372_IOPAD(0x870, DS0_PIN_OUTPUT_PULLUP | MUX_MODE7)
0264                                 AM4372_IOPAD(0x874, DS0_PIN_OUTPUT_PULLUP | MUX_MODE7)
0265                                 AM4372_IOPAD(0x87c, DS0_PIN_OUTPUT_PULLUP | MUX_MODE7)
0266                                 AM4372_IOPAD(0x890, DS0_PIN_OUTPUT_PULLUP | MUX_MODE7)
0267                                 AM4372_IOPAD(0x894, DS0_PIN_OUTPUT_PULLUP | MUX_MODE7)
0268                                 AM4372_IOPAD(0x898, DS0_PIN_OUTPUT_PULLUP | MUX_MODE7)
0269                                 AM4372_IOPAD(0x89c, DS0_PIN_OUTPUT_PULLUP | MUX_MODE7)
0270                         >;
0271                 };
0272 
0273                 ecap0_pins_default: backlight_pins_default {
0274                         pinctrl-single,pins = <
0275                                 AM4372_IOPAD(0x964, MUX_MODE0)         /* eCAP0_in_PWM0_out.eCAP0_in_PWM0_out MODE0 */
0276                         >;
0277                 };
0278 
0279                 ecap0_pins_sleep: backlight_pins_sleep {
0280                         pinctrl-single,pins = <
0281                                 AM4372_IOPAD(0x964, DS0_PIN_OUTPUT_PULLUP | MUX_MODE7)
0282                         >;
0283                 };
0284 
0285                 i2c2_pins: pinmux_i2c2_pins {
0286                         pinctrl-single,pins = <
0287                                 AM4372_IOPAD(0x9c0, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE8)    /* i2c2_sda.i2c2_sda */
0288                                 AM4372_IOPAD(0x9c4, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE8)    /* i2c2_scl.i2c2_scl */
0289                         >;
0290                 };
0291 
0292                 spi0_pins_default: pinmux_spi0_pins_default {
0293                         pinctrl-single,pins = <
0294                                 AM4372_IOPAD(0x950, PIN_INPUT | MUX_MODE0)           /* spi0_clk.spi0_clk */
0295                                 AM4372_IOPAD(0x954, PIN_OUTPUT | MUX_MODE0)           /* spi0_d0.spi0_d0 */
0296                                 AM4372_IOPAD(0x958, PIN_INPUT | MUX_MODE0)           /* spi0_d1.spi0_d1 */
0297                                 AM4372_IOPAD(0x95c, PIN_OUTPUT | MUX_MODE0)          /* spi0_cs0.spi0_cs0 */
0298                         >;
0299                 };
0300 
0301                 spi0_pins_sleep: pinmux_spi0_pins_sleep {
0302                         pinctrl-single,pins = <
0303                                 AM4372_IOPAD(0x950, DS0_PIN_OUTPUT_PULLUP | PIN_OUTPUT_PULLUP | MUX_MODE7)
0304                                 AM4372_IOPAD(0x954, DS0_PIN_OUTPUT_PULLUP | PIN_OUTPUT_PULLUP | MUX_MODE7)
0305                                 AM4372_IOPAD(0x958, DS0_PIN_OUTPUT_PULLUP | PIN_OUTPUT_PULLUP | MUX_MODE7)
0306                                 AM4372_IOPAD(0x95c, DS0_PIN_OUTPUT_PULLUP | PIN_OUTPUT_PULLUP | MUX_MODE7)
0307                         >;
0308                 };
0309 
0310                 spi1_pins_default: pinmux_spi1_pins_default {
0311                         pinctrl-single,pins = <
0312                                 AM4372_IOPAD(0x990, PIN_INPUT | MUX_MODE3)           /* mcasp0_aclkx.spi1_clk */
0313                                 AM4372_IOPAD(0x994, PIN_OUTPUT | MUX_MODE3)           /* mcasp0_fsx.spi1_d0 */
0314                                 AM4372_IOPAD(0x998, PIN_INPUT | MUX_MODE3)           /* mcasp0_axr0.spi1_d1 */
0315                                 AM4372_IOPAD(0x99c, PIN_OUTPUT | MUX_MODE3)          /* mcasp0_ahclkr.spi1_cs0 */
0316                         >;
0317                 };
0318 
0319                 spi1_pins_sleep: pinmux_spi1_pins_sleep {
0320                         pinctrl-single,pins = <
0321                                 AM4372_IOPAD(0x990, DS0_PIN_OUTPUT_PULLDOWN | PIN_OUTPUT_PULLDOWN | MUX_MODE7)
0322                                 AM4372_IOPAD(0x994, DS0_PIN_OUTPUT_PULLDOWN | PIN_OUTPUT_PULLDOWN | MUX_MODE7)
0323                                 AM4372_IOPAD(0x998, DS0_PIN_OUTPUT_PULLDOWN | PIN_OUTPUT_PULLDOWN | MUX_MODE7)
0324                                 AM4372_IOPAD(0x99c, DS0_PIN_OUTPUT_PULLDOWN | PIN_OUTPUT_PULLDOWN | MUX_MODE7)
0325                         >;
0326                 };
0327 
0328                 mmc1_pins_default: pinmux_mmc1_pins_default {
0329                         pinctrl-single,pins = <
0330                                 AM4372_IOPAD(0x960, PIN_INPUT | MUX_MODE7) /* spi0_cs1.gpio0_6 */
0331                         >;
0332                 };
0333 
0334                 mmc1_pins_sleep: pinmux_mmc1_pins_sleep {
0335                         pinctrl-single,pins = <
0336                                 AM4372_IOPAD(0x960, DS0_PIN_OUTPUT_PULLUP | PIN_INPUT | MUX_MODE7)
0337                         >;
0338                 };
0339 
0340                 matrix_keypad_default: matrix_keypad_default {
0341                         pinctrl-single,pins = <
0342                                  AM4372_IOPAD(0x92c, PIN_OUTPUT | MUX_MODE7)          /* mii1_tx_clk.gpio3_9 */
0343                                  AM4372_IOPAD(0x930, PIN_OUTPUT | MUX_MODE7)          /* mii1_rx_clk.gpio3_10 */
0344                                  AM4372_IOPAD(0x934, PIN_OUTPUT | MUX_MODE7)          /* mii1_rxd3.gpio2_18 */
0345                                  AM4372_IOPAD(0x938, PIN_OUTPUT | MUX_MODE7)          /* mii1_rxd2.gpio2_19 */
0346                                  AM4372_IOPAD(0x978, PIN_INPUT_PULLDOWN | MUX_MODE7)  /* uart1_ctsn.gpio0_12 */
0347                                  AM4372_IOPAD(0x97C, PIN_INPUT_PULLDOWN | MUX_MODE7)  /* uart1_rtsn.gpio0_13 */
0348                                  AM4372_IOPAD(0x980, PIN_INPUT_PULLDOWN | MUX_MODE7)  /* uart1_rxd.gpio0_14 */
0349                                  AM4372_IOPAD(0x984, PIN_INPUT_PULLDOWN | MUX_MODE7)  /* uart1_txd.gpio0_15 */
0350                         >;
0351                 };
0352 
0353                 matrix_keypad_sleep: matrix_keypad_sleep {
0354                         pinctrl-single,pins = <
0355                                 AM4372_IOPAD(0x92c, PIN_INPUT_PULLUP | MUX_MODE7)
0356                                 AM4372_IOPAD(0x930, PIN_INPUT_PULLUP | MUX_MODE7)
0357                                 AM4372_IOPAD(0x934, PIN_INPUT_PULLUP | MUX_MODE7)
0358                                 AM4372_IOPAD(0x938, PIN_INPUT_PULLUP | MUX_MODE7)
0359                                 AM4372_IOPAD(0x978, PIN_INPUT_PULLDOWN | MUX_MODE7)
0360                                 AM4372_IOPAD(0x97C, PIN_INPUT_PULLDOWN | MUX_MODE7)
0361                                 AM4372_IOPAD(0x980, PIN_INPUT_PULLDOWN | MUX_MODE7)
0362                                 AM4372_IOPAD(0x984, PIN_INPUT_PULLDOWN | MUX_MODE7)
0363                         >;
0364                 };
0365 
0366                 qspi1_pins_default: qspi1_pins_default {
0367                         pinctrl-single,pins = <
0368                                 AM4372_IOPAD(0x87c, PIN_INPUT_PULLUP | MUX_MODE3)
0369                                 AM4372_IOPAD(0x888, PIN_INPUT_PULLUP | MUX_MODE2)
0370                                 AM4372_IOPAD(0x890, PIN_INPUT_PULLUP | MUX_MODE3)
0371                                 AM4372_IOPAD(0x894, PIN_INPUT_PULLUP | MUX_MODE3)
0372                                 AM4372_IOPAD(0x898, PIN_INPUT_PULLUP | MUX_MODE3)
0373                                 AM4372_IOPAD(0x89c, PIN_INPUT_PULLUP | MUX_MODE3)
0374                         >;
0375                 };
0376 
0377                 qspi1_pins_sleep: qspi1_pins_sleep {
0378                         pinctrl-single,pins = <
0379                                 AM4372_IOPAD(0x87c, DS0_PIN_OUTPUT_PULLUP | MUX_MODE7)
0380                                 AM4372_IOPAD(0x888, DS0_PIN_OUTPUT_PULLUP | MUX_MODE7)
0381                                 AM4372_IOPAD(0x890, DS0_PIN_OUTPUT_PULLUP | MUX_MODE7)
0382                                 AM4372_IOPAD(0x894, DS0_PIN_OUTPUT_PULLUP | MUX_MODE7)
0383                                 AM4372_IOPAD(0x898, DS0_PIN_OUTPUT_PULLUP | MUX_MODE7)
0384                                 AM4372_IOPAD(0x89c, DS0_PIN_OUTPUT_PULLUP | MUX_MODE7)
0385                         >;
0386                 };
0387 
0388                 pixcir_ts_pins_default: pixcir_ts_pins_default {
0389                         pinctrl-single,pins = <
0390                                 AM4372_IOPAD(0x844, PIN_INPUT_PULLUP | MUX_MODE7)       /* gpmc_a1.gpio1_17 */
0391                         >;
0392                 };
0393 
0394                 pixcir_ts_pins_sleep: pixcir_ts_pins_sleep {
0395                         pinctrl-single,pins = <
0396                                 AM4372_IOPAD(0x844, DS0_PIN_OUTPUT_PULLUP | PIN_OUTPUT_PULLUP | MUX_MODE7)      /* gpmc_a1.gpio1_17 */
0397                         >;
0398                 };
0399 
0400                 hdq_pins: pinmux_hdq_pins {
0401                         pinctrl-single,pins = <
0402                                 AM4372_IOPAD(0xa34, PIN_INPUT_PULLUP | MUX_MODE1)    /* cam1_wen.hdq_gpio */
0403                         >;
0404                 };
0405 
0406                 dss_pins: dss_pins {
0407                         pinctrl-single,pins = <
0408                                 AM4372_IOPAD(0x820, PIN_OUTPUT_PULLUP | MUX_MODE1) /*gpmc ad 8 -> DSS DATA 23 */
0409                                 AM4372_IOPAD(0x824, PIN_OUTPUT_PULLUP | MUX_MODE1)
0410                                 AM4372_IOPAD(0x828, PIN_OUTPUT_PULLUP | MUX_MODE1)
0411                                 AM4372_IOPAD(0x82c, PIN_OUTPUT_PULLUP | MUX_MODE1)
0412                                 AM4372_IOPAD(0x830, PIN_OUTPUT_PULLUP | MUX_MODE1)
0413                                 AM4372_IOPAD(0x834, PIN_OUTPUT_PULLUP | MUX_MODE1)
0414                                 AM4372_IOPAD(0x838, PIN_OUTPUT_PULLUP | MUX_MODE1)
0415                                 AM4372_IOPAD(0x83c, PIN_OUTPUT_PULLUP | MUX_MODE1) /*gpmc ad 15 -> DSS DATA 16 */
0416                                 AM4372_IOPAD(0x8a0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS DATA 0 */
0417                                 AM4372_IOPAD(0x8a4, PIN_OUTPUT_PULLUP | MUX_MODE0)
0418                                 AM4372_IOPAD(0x8a8, PIN_OUTPUT_PULLUP | MUX_MODE0)
0419                                 AM4372_IOPAD(0x8ac, PIN_OUTPUT_PULLUP | MUX_MODE0)
0420                                 AM4372_IOPAD(0x8b0, PIN_OUTPUT_PULLUP | MUX_MODE0)
0421                                 AM4372_IOPAD(0x8b4, PIN_OUTPUT_PULLUP | MUX_MODE0)
0422                                 AM4372_IOPAD(0x8B8, PIN_OUTPUT_PULLUP | MUX_MODE0)
0423                                 AM4372_IOPAD(0x8bc, PIN_OUTPUT_PULLUP | MUX_MODE0)
0424                                 AM4372_IOPAD(0x8c0, PIN_OUTPUT_PULLUP | MUX_MODE0)
0425                                 AM4372_IOPAD(0x8c4, PIN_OUTPUT_PULLUP | MUX_MODE0)
0426                                 AM4372_IOPAD(0x8c8, PIN_OUTPUT_PULLUP | MUX_MODE0)
0427                                 AM4372_IOPAD(0x8cc, PIN_OUTPUT_PULLUP | MUX_MODE0)
0428                                 AM4372_IOPAD(0x8d0, PIN_OUTPUT_PULLUP | MUX_MODE0)
0429                                 AM4372_IOPAD(0x8d4, PIN_OUTPUT_PULLUP | MUX_MODE0)
0430                                 AM4372_IOPAD(0x8d8, PIN_OUTPUT_PULLUP | MUX_MODE0)
0431                                 AM4372_IOPAD(0x8dc, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS DATA 15 */
0432                                 AM4372_IOPAD(0x8e0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS VSYNC */
0433                                 AM4372_IOPAD(0x8e4, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS HSYNC */
0434                                 AM4372_IOPAD(0x8e8, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS PCLK */
0435                                 AM4372_IOPAD(0x8ec, PIN_OUTPUT_PULLUP | MUX_MODE0) /* DSS AC BIAS EN */
0436                         >;
0437                 };
0438 
0439                 display_mux_pins: display_mux_pins {
0440                         pinctrl-single,pins = <
0441                                 /* GPMC CLK -> GPIO 2_1 to select LCD / HDMI */
0442                                 AM4372_IOPAD(0x88C, PIN_OUTPUT_PULLUP | MUX_MODE7)
0443                         >;
0444                 };
0445 
0446                 vpfe1_pins_default: vpfe1_pins_default {
0447                         pinctrl-single,pins = <
0448                                 AM4372_IOPAD(0x9cc, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data9 mode 0 */
0449                                 AM4372_IOPAD(0x9d0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data8 mode 0 */
0450                                 AM4372_IOPAD(0x9d4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_hd mode 0 */
0451                                 AM4372_IOPAD(0x9d8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_vd mode 0 */
0452                                 AM4372_IOPAD(0x9dc, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_pclk mode 0 */
0453                                 AM4372_IOPAD(0x9e8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data0 mode 0 */
0454                                 AM4372_IOPAD(0x9ec, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data1 mode 0 */
0455                                 AM4372_IOPAD(0x9f0, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data2 mode 0 */
0456                                 AM4372_IOPAD(0x9f4, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data3 mode 0 */
0457                                 AM4372_IOPAD(0x9f8, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data4 mode 0 */
0458                                 AM4372_IOPAD(0x9fc, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data5 mode 0 */
0459                                 AM4372_IOPAD(0xa00, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data6 mode 0 */
0460                                 AM4372_IOPAD(0xa04, PIN_INPUT_PULLUP | MUX_MODE0)  /* cam1_data7 mode 0 */
0461                         >;
0462                 };
0463 
0464                 vpfe1_pins_sleep: vpfe1_pins_sleep {
0465                         pinctrl-single,pins = <
0466                                 AM4372_IOPAD(0x9cc, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)
0467                                 AM4372_IOPAD(0x9d0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)
0468                                 AM4372_IOPAD(0x9d4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)
0469                                 AM4372_IOPAD(0x9d8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)
0470                                 AM4372_IOPAD(0x9dc, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)
0471                                 AM4372_IOPAD(0x9e8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)
0472                                 AM4372_IOPAD(0x9ec, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)
0473                                 AM4372_IOPAD(0x9f0, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)
0474                                 AM4372_IOPAD(0x9f4, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)
0475                                 AM4372_IOPAD(0x9f8, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)
0476                                 AM4372_IOPAD(0x9fc, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)
0477                                 AM4372_IOPAD(0xa00, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)
0478                                 AM4372_IOPAD(0xa04, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)
0479                         >;
0480                 };
0481 
0482                 uart0_pins_default: uart0_pins_default {
0483                         pinctrl-single,pins = <
0484                                 AM4372_IOPAD(0x968, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE0) /* uart0_ctsn.uart0_ctsn */
0485                                 AM4372_IOPAD(0x96C, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE0) /* uart0_rtsn.uart0_rtsn */
0486                                 AM4372_IOPAD(0x970, PIN_INPUT_PULLUP | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0) /* uart0_rxd.uart0_rxd */
0487                                 AM4372_IOPAD(0x974, PIN_INPUT | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0)        /* uart0_txd.uart0_txd */
0488                         >;
0489                 };
0490 
0491                 uart0_pins_sleep: uart0_pins_sleep {
0492                         pinctrl-single,pins = <
0493                                 AM4372_IOPAD(0x968, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)
0494                                 AM4372_IOPAD(0x96C, DS0_PULL_UP_DOWN_EN | INPUT_EN | MUX_MODE7)
0495                                 AM4372_IOPAD(0x970, PIN_INPUT_PULLUP | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0)
0496                                 AM4372_IOPAD(0x974, PIN_INPUT | SLEWCTRL_FAST | DS0_PULL_UP_DOWN_EN | MUX_MODE0)
0497                         >;
0498                 };
0499 
0500                 usb2_phy1_default: usb2_phy1_default {
0501                         pinctrl-single,pins = <
0502                                 AM4372_IOPAD(0xac0, PIN_INPUT_PULLDOWN | MUX_MODE0)
0503                         >;
0504                 };
0505 
0506                 usb2_phy1_sleep: usb2_phy1_sleep {
0507                         pinctrl-single,pins = <
0508                                 AM4372_IOPAD(0xac0, DS0_PULL_UP_DOWN_EN | PIN_INPUT_PULLDOWN | MUX_MODE7)
0509                         >;
0510                 };
0511 
0512                 usb2_phy2_default: usb2_phy2_default {
0513                         pinctrl-single,pins = <
0514                                 AM4372_IOPAD(0xac4, PIN_INPUT_PULLDOWN | MUX_MODE0)
0515                         >;
0516                 };
0517 
0518                 usb2_phy2_sleep: usb2_phy2_sleep {
0519                         pinctrl-single,pins = <
0520                                 AM4372_IOPAD(0xac4, DS0_PULL_UP_DOWN_EN | PIN_INPUT_PULLDOWN | MUX_MODE7)
0521                         >;
0522                 };
0523 
0524                 mcasp1_pins: mcasp1_pins {
0525                         pinctrl-single,pins = <
0526                                 AM4372_IOPAD(0x9a0, PIN_INPUT_PULLDOWN | MUX_MODE3) /* MCASP0_ACLKR/MCASP1_ACLKX */
0527                                 AM4372_IOPAD(0x9a4, PIN_INPUT_PULLDOWN | MUX_MODE3) /* MCASP0_FSR/MCASP1_FSX */
0528                                 AM4372_IOPAD(0x9a8, PIN_OUTPUT_PULLDOWN | MUX_MODE3)/* MCASP0_AXR1/MCASP1_AXR0 */
0529                                 AM4372_IOPAD(0x9ac, PIN_INPUT_PULLDOWN | MUX_MODE3) /* MCASP0_AHCLKX/MCASP1_AXR1 */
0530                         >;
0531                 };
0532 
0533                 mcasp1_sleep_pins: mcasp1_sleep_pins {
0534                         pinctrl-single,pins = <
0535                                 AM4372_IOPAD(0x9a0, PIN_INPUT_PULLDOWN | MUX_MODE7)
0536                                 AM4372_IOPAD(0x9a4, PIN_INPUT_PULLDOWN | MUX_MODE7)
0537                                 AM4372_IOPAD(0x9a8, PIN_INPUT_PULLDOWN | MUX_MODE7)
0538                                 AM4372_IOPAD(0x9ac, PIN_INPUT_PULLDOWN | MUX_MODE7)
0539                         >;
0540                 };
0541 };
0542 
0543 &mmc1 {
0544         status = "okay";
0545         vmmc-supply = <&vmmcsd_fixed>;
0546         bus-width = <4>;
0547         pinctrl-names = "default", "sleep";
0548         pinctrl-0 = <&mmc1_pins_default>;
0549         pinctrl-1 = <&mmc1_pins_sleep>;
0550         cd-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
0551 };
0552 
0553 &mac_sw {
0554         pinctrl-names = "default", "sleep";
0555         pinctrl-0 = <&cpsw_default>;
0556         pinctrl-1 = <&cpsw_sleep>;
0557         status = "okay";
0558 };
0559 
0560 &davinci_mdio_sw {
0561         pinctrl-names = "default", "sleep";
0562         pinctrl-0 = <&davinci_mdio_default>;
0563         pinctrl-1 = <&davinci_mdio_sleep>;
0564 
0565         ethphy0: ethernet-phy@16 {
0566                 reg = <16>;
0567         };
0568 };
0569 
0570 &cpsw_port1 {
0571         phy-handle = <&ethphy0>;
0572         phy-mode = "rmii";
0573         phys = <&phy_gmii_sel 1 1>;
0574         ti,dual-emac-pvid = <1>;
0575 };
0576 
0577 &cpsw_port2 {
0578         status = "disabled";
0579 };
0580 
0581 &i2c0 {
0582         status = "okay";
0583         pinctrl-names = "default";
0584         pinctrl-0 = <&i2c0_pins>;
0585         clock-frequency = <100000>;
0586 
0587         tps65218: tps65218@24 {
0588                 reg = <0x24>;
0589                 compatible = "ti,tps65218";
0590                 interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; /* NMIn */
0591                 interrupt-controller;
0592                 #interrupt-cells = <2>;
0593 
0594                 dcdc1: regulator-dcdc1 {
0595                         regulator-name = "vdd_core";
0596                         regulator-min-microvolt = <912000>;
0597                         regulator-max-microvolt = <1144000>;
0598                         regulator-boot-on;
0599                         regulator-always-on;
0600                 };
0601 
0602                 dcdc2: regulator-dcdc2 {
0603                         regulator-name = "vdd_mpu";
0604                         regulator-min-microvolt = <912000>;
0605                         regulator-max-microvolt = <1378000>;
0606                         regulator-boot-on;
0607                         regulator-always-on;
0608                 };
0609 
0610                 dcdc3: regulator-dcdc3 {
0611                         regulator-name = "vdcdc3";
0612                         regulator-boot-on;
0613                         regulator-always-on;
0614                         regulator-state-mem {
0615                                 regulator-on-in-suspend;
0616                         };
0617                         regulator-state-disk {
0618                                 regulator-off-in-suspend;
0619                         };
0620                 };
0621 
0622                 dcdc4: regulator-dcdc4 {
0623                         regulator-name = "vdcdc4";
0624                         regulator-min-microvolt = <3300000>;
0625                         regulator-max-microvolt = <3300000>;
0626                         regulator-boot-on;
0627                         regulator-always-on;
0628                 };
0629 
0630                 dcdc5: regulator-dcdc5 {
0631                         regulator-name = "v1_0bat";
0632                         regulator-min-microvolt = <1000000>;
0633                         regulator-max-microvolt = <1000000>;
0634                         regulator-boot-on;
0635                         regulator-always-on;
0636                 };
0637 
0638                 dcdc6: regulator-dcdc6 {
0639                         regulator-name = "v1_8bat";
0640                         regulator-min-microvolt = <1800000>;
0641                         regulator-max-microvolt = <1800000>;
0642                         regulator-boot-on;
0643                         regulator-always-on;
0644                 };
0645 
0646                 ldo1: regulator-ldo1 {
0647                         regulator-min-microvolt = <1800000>;
0648                         regulator-max-microvolt = <1800000>;
0649                         regulator-boot-on;
0650                         regulator-always-on;
0651                 };
0652         };
0653 
0654         at24@50 {
0655                 compatible = "atmel,24c256";
0656                 pagesize = <64>;
0657                 reg = <0x50>;
0658         };
0659 
0660         pixcir_ts@5c {
0661                 compatible = "pixcir,pixcir_tangoc";
0662                 pinctrl-names = "default", "sleep";
0663                 pinctrl-0 = <&pixcir_ts_pins_default>;
0664                 pinctrl-1 = <&pixcir_ts_pins_sleep>;
0665 
0666                 reg = <0x5c>;
0667                 interrupt-parent = <&gpio1>;
0668                 interrupts = <17 IRQ_TYPE_EDGE_FALLING>;
0669 
0670                 attb-gpio = <&gpio1 17 GPIO_ACTIVE_HIGH>;
0671 
0672                 touchscreen-size-x = <1024>;
0673                 touchscreen-size-y = <600>;
0674         };
0675 
0676         tlv320aic3111: tlv320aic3111@18 {
0677                 #sound-dai-cells = <0>;
0678                 compatible = "ti,tlv320aic3111";
0679                 reg = <0x18>;
0680                 status = "okay";
0681 
0682                 ai31xx-micbias-vg = <MICBIAS_2_0V>;
0683 
0684                 /* Regulators */
0685                 HPVDD-supply = <&dcdc4>; /* v3_3AUD -> V3_3D -> DCDC4 */
0686                 SPRVDD-supply = <&vbat>; /* vbat */
0687                 SPLVDD-supply = <&vbat>; /* vbat */
0688                 AVDD-supply = <&dcdc4>; /* v3_3AUD -> V3_3D -> DCDC4 */
0689                 IOVDD-supply = <&dcdc4>; /* V3_3D -> DCDC4 */
0690                 DVDD-supply = <&ldo1>; /* V1_8AUD -> V1_8D -> LDO1 */
0691         };
0692 
0693         ov2659@30 {
0694                 compatible = "ovti,ov2659";
0695                 reg = <0x30>;
0696 
0697                 clocks = <&audio_mstrclk>;
0698                 clock-names = "xvclk";
0699 
0700                 port {
0701                         ov2659_1: endpoint {
0702                                 remote-endpoint = <&vpfe1_ep>;
0703                                 link-frequencies = /bits/ 64 <70000000>;
0704                         };
0705                 };
0706         };
0707 };
0708 
0709 &i2c2 {
0710         pinctrl-names = "default";
0711         pinctrl-0 = <&i2c2_pins>;
0712         status = "okay";
0713 };
0714 
0715 &gpio0 {
0716         status = "okay";
0717 };
0718 
0719 &gpio1 {
0720         status = "okay";
0721 };
0722 
0723 &gpio2 {
0724         pinctrl-names = "default";
0725         pinctrl-0 = <&display_mux_pins>;
0726         status = "okay";
0727 
0728         sel-lcd-hdmi-hog {
0729                 /*
0730                  * SelLCDorHDMI selects between display and audio paths:
0731                  * Low: HDMI display with audio via HDMI
0732                  * High: LCD display with analog audio via aic3111 codec
0733                  */
0734                 gpio-hog;
0735                 gpios = <1 GPIO_ACTIVE_HIGH>;
0736                 output-high;
0737                 line-name = "SelLCDorHDMI";
0738         };
0739 };
0740 
0741 &gpio3 {
0742         status = "okay";
0743 };
0744 
0745 &elm {
0746         status = "okay";
0747 };
0748 
0749 &gpmc {
0750         status = "okay";        /* Disable QSPI when enabling GPMC (NAND) */
0751         pinctrl-names = "default", "sleep";
0752         pinctrl-0 = <&nand_flash_x8_default>;
0753         pinctrl-1 = <&nand_flash_x8_sleep>;
0754         ranges = <0 0 0x08000000 0x01000000>;   /* CS0 space. Min partition = 16MB */
0755         nand@0,0 {
0756                 compatible = "ti,omap2-nand";
0757                 reg = <0 0 4>; /* CS0, offset 0, IO size 4 */
0758                 interrupt-parent = <&gpmc>;
0759                 interrupts = <0 IRQ_TYPE_NONE>, /* fifoevent */
0760                              <1 IRQ_TYPE_NONE>; /* termcount */
0761                 rb-gpios = <&gpmc 0 GPIO_ACTIVE_HIGH>;  /* gpmc_wait0 */
0762                 ti,nand-xfer-type = "prefetch-dma";
0763                 ti,nand-ecc-opt = "bch16";
0764                 ti,elm-id = <&elm>;
0765                 nand-bus-width = <8>;
0766                 gpmc,device-width = <1>;
0767                 gpmc,sync-clk-ps = <0>;
0768                 gpmc,cs-on-ns = <0>;
0769                 gpmc,cs-rd-off-ns = <40>; /* tCEA + tCHZ + 1 */
0770                 gpmc,cs-wr-off-ns = <40>;
0771                 gpmc,adv-on-ns = <0>;  /* cs-on-ns */
0772                 gpmc,adv-rd-off-ns = <25>; /* min( tALH + tALS + 1) */
0773                 gpmc,adv-wr-off-ns = <25>; /* min( tALH + tALS + 1) */
0774                 gpmc,we-on-ns = <0>;   /* cs-on-ns */
0775                 gpmc,we-off-ns = <20>; /* we-on-time + tWP + 2 */
0776                 gpmc,oe-on-ns = <3>;  /* cs-on-ns + tRR + 2 */
0777                 gpmc,oe-off-ns = <30>; /* oe-on-ns + tRP + 2 */
0778                 gpmc,access-ns = <30>; /* tCEA + 4*/
0779                 gpmc,rd-cycle-ns = <40>;
0780                 gpmc,wr-cycle-ns = <40>;
0781                 gpmc,bus-turnaround-ns = <0>;
0782                 gpmc,cycle2cycle-delay-ns = <0>;
0783                 gpmc,clk-activation-ns = <0>;
0784                 gpmc,wr-access-ns = <40>;
0785                 gpmc,wr-data-mux-bus-ns = <0>;
0786                 /* MTD partition table */
0787                 /* All SPL-* partitions are sized to minimal length
0788                  * which can be independently programmable. For
0789                  * NAND flash this is equal to size of erase-block */
0790                 #address-cells = <1>;
0791                 #size-cells = <1>;
0792                 partition@0 {
0793                         label = "NAND.SPL";
0794                         reg = <0x00000000 0x00040000>;
0795                 };
0796                 partition@1 {
0797                         label = "NAND.SPL.backup1";
0798                         reg = <0x00040000 0x00040000>;
0799                 };
0800                 partition@2 {
0801                         label = "NAND.SPL.backup2";
0802                         reg = <0x00080000 0x00040000>;
0803                 };
0804                 partition@3 {
0805                         label = "NAND.SPL.backup3";
0806                         reg = <0x000C0000 0x00040000>;
0807                 };
0808                 partition@4 {
0809                         label = "NAND.u-boot-spl-os";
0810                         reg = <0x00100000 0x00080000>;
0811                 };
0812                 partition@5 {
0813                         label = "NAND.u-boot";
0814                         reg = <0x00180000 0x00100000>;
0815                 };
0816                 partition@6 {
0817                         label = "NAND.u-boot-env";
0818                         reg = <0x00280000 0x00040000>;
0819                 };
0820                 partition@7 {
0821                         label = "NAND.u-boot-env.backup1";
0822                         reg = <0x002C0000 0x00040000>;
0823                 };
0824                 partition@8 {
0825                         label = "NAND.kernel";
0826                         reg = <0x00300000 0x00700000>;
0827                 };
0828                 partition@9 {
0829                         label = "NAND.file-system";
0830                         reg = <0x00a00000 0x1f600000>;
0831                 };
0832         };
0833 };
0834 
0835 &epwmss0 {
0836         status = "okay";
0837 };
0838 
0839 &rtc_target {
0840         status = "disabled";
0841 };
0842 
0843 &tscadc {
0844         status = "okay";
0845 
0846         adc {
0847                 ti,adc-channels = <0 1 2 3 4 5 6 7>;
0848         };
0849 };
0850 
0851 &ecap0 {
0852                 status = "okay";
0853                 pinctrl-names = "default", "sleep";
0854                 pinctrl-0 = <&ecap0_pins_default>;
0855                 pinctrl-1 = <&ecap0_pins_sleep>;
0856 };
0857 
0858 &spi0 {
0859         status = "okay";
0860         pinctrl-names = "default", "sleep";
0861         pinctrl-0 = <&spi0_pins_default>;
0862         pinctrl-1 = <&spi0_pins_sleep>;
0863         ti,pindir-d0-out-d1-in;
0864 };
0865 
0866 &spi1 {
0867         status = "okay";
0868         pinctrl-names = "default", "sleep";
0869         pinctrl-0 = <&spi1_pins_default>;
0870         pinctrl-1 = <&spi1_pins_sleep>;
0871         ti,pindir-d0-out-d1-in;
0872 };
0873 
0874 &usb2_phy1 {
0875         status = "okay";
0876         pinctrl-names = "default", "sleep";
0877         pinctrl-0 = <&usb2_phy1_default>;
0878         pinctrl-1 = <&usb2_phy1_sleep>;
0879 };
0880 
0881 &usb1 {
0882         dr_mode = "otg";
0883         status = "okay";
0884 };
0885 
0886 &usb2_phy2 {
0887         status = "okay";
0888         pinctrl-names = "default", "sleep";
0889         pinctrl-0 = <&usb2_phy2_default>;
0890         pinctrl-1 = <&usb2_phy2_sleep>;
0891 };
0892 
0893 &usb2 {
0894         dr_mode = "host";
0895         status = "okay";
0896 };
0897 
0898 &qspi {
0899         status = "disabled";    /* Disable GPMC (NAND) when enabling QSPI */
0900         pinctrl-names = "default", "sleep";
0901         pinctrl-0 = <&qspi1_pins_default>;
0902         pinctrl-1 = <&qspi1_pins_sleep>;
0903 
0904         spi-max-frequency = <48000000>;
0905         flash@0 {
0906                 compatible = "mx66l51235l";
0907                 spi-max-frequency = <48000000>;
0908                 reg = <0>;
0909                 spi-cpol;
0910                 spi-cpha;
0911                 spi-tx-bus-width = <1>;
0912                 spi-rx-bus-width = <4>;
0913                 #address-cells = <1>;
0914                 #size-cells = <1>;
0915 
0916                 /* MTD partition table.
0917                  * The ROM checks the first 512KiB
0918                  * for a valid file to boot(XIP).
0919                  */
0920                 partition@0 {
0921                         label = "QSPI.U_BOOT";
0922                         reg = <0x00000000 0x000080000>;
0923                 };
0924                 partition@1 {
0925                         label = "QSPI.U_BOOT.backup";
0926                         reg = <0x00080000 0x00080000>;
0927                 };
0928                 partition@2 {
0929                         label = "QSPI.U-BOOT-SPL_OS";
0930                         reg = <0x00100000 0x00010000>;
0931                 };
0932                 partition@3 {
0933                         label = "QSPI.U_BOOT_ENV";
0934                         reg = <0x00110000 0x00010000>;
0935                 };
0936                 partition@4 {
0937                         label = "QSPI.U-BOOT-ENV.backup";
0938                         reg = <0x00120000 0x00010000>;
0939                 };
0940                 partition@5 {
0941                         label = "QSPI.KERNEL";
0942                         reg = <0x00130000 0x0800000>;
0943                 };
0944                 partition@6 {
0945                         label = "QSPI.FILESYSTEM";
0946                         reg = <0x00930000 0x36D0000>;
0947                 };
0948         };
0949 };
0950 
0951 &hdq {
0952         status = "okay";
0953         pinctrl-names = "default";
0954         pinctrl-0 = <&hdq_pins>;
0955 };
0956 
0957 &dss {
0958         status = "okay";
0959 
0960         pinctrl-names = "default";
0961         pinctrl-0 = <&dss_pins>;
0962 
0963         port {
0964                 dpi_out: endpoint {
0965                         remote-endpoint = <&lcd_in>;
0966                         data-lines = <24>;
0967                 };
0968         };
0969 };
0970 
0971 &vpfe1 {
0972         status = "okay";
0973         pinctrl-names = "default", "sleep";
0974         pinctrl-0 = <&vpfe1_pins_default>;
0975         pinctrl-1 = <&vpfe1_pins_sleep>;
0976 
0977         port {
0978                 vpfe1_ep: endpoint {
0979                         remote-endpoint = <&ov2659_1>;
0980                         ti,am437x-vpfe-interface = <0>;
0981                         bus-width = <8>;
0982                         hsync-active = <0>;
0983                         vsync-active = <0>;
0984                 };
0985         };
0986 };
0987 
0988 &uart0 {
0989         status = "okay";
0990         pinctrl-names = "default", "sleep";
0991         pinctrl-0 = <&uart0_pins_default>;
0992         pinctrl-1 = <&uart0_pins_sleep>;
0993 };
0994 
0995 &mcasp1 {
0996         #sound-dai-cells = <0>;
0997         pinctrl-names = "default", "sleep";
0998         pinctrl-0 = <&mcasp1_pins>;
0999         pinctrl-1 = <&mcasp1_sleep_pins>;
1000 
1001         status = "okay";
1002 
1003         op-mode = <0>;          /* MCASP_IIS_MODE */
1004         tdm-slots = <2>;
1005         /* 4 serializer */
1006         serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
1007                 1 2 0 0
1008         >;
1009         tx-num-evt = <32>;
1010         rx-num-evt = <32>;
1011 };
1012 
1013 &mux_synctimer32k_ck {
1014         assigned-clocks = <&mux_synctimer32k_ck>;
1015         assigned-clock-parents = <&clkdiv32k_ick>;
1016 };
1017 
1018 &cpu {
1019         cpu0-supply = <&dcdc2>;
1020 };
1021 
1022 &wkup_m3_ipc {
1023         firmware-name = "am43x-evm-scale-data.bin";
1024 };
1025 
1026 &pruss1_mdio {
1027         status = "disabled";
1028 };