1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-only 2*724ba675SRob Herring/* 3*724ba675SRob Herring * Copyright (C) 2014 Gumstix, Inc. - https://www.gumstix.com/ 4*724ba675SRob Herring */ 5*724ba675SRob Herring/dts-v1/; 6*724ba675SRob Herring 7*724ba675SRob Herring#include <dt-bindings/input/input.h> 8*724ba675SRob Herring#include "am33xx.dtsi" 9*724ba675SRob Herring 10*724ba675SRob Herring/ { 11*724ba675SRob Herring model = "Gumstix Pepper"; 12*724ba675SRob Herring compatible = "gumstix,am335x-pepper", "ti,am33xx"; 13*724ba675SRob Herring 14*724ba675SRob Herring cpus { 15*724ba675SRob Herring cpu@0 { 16*724ba675SRob Herring cpu0-supply = <&dcdc3_reg>; 17*724ba675SRob Herring }; 18*724ba675SRob Herring }; 19*724ba675SRob Herring 20*724ba675SRob Herring memory@80000000 { 21*724ba675SRob Herring device_type = "memory"; 22*724ba675SRob Herring reg = <0x80000000 0x20000000>; /* 512 MB */ 23*724ba675SRob Herring }; 24*724ba675SRob Herring 25*724ba675SRob Herring buttons: user_buttons { 26*724ba675SRob Herring compatible = "gpio-keys"; 27*724ba675SRob Herring }; 28*724ba675SRob Herring 29*724ba675SRob Herring leds: user-leds-pins { 30*724ba675SRob Herring compatible = "gpio-leds"; 31*724ba675SRob Herring }; 32*724ba675SRob Herring 33*724ba675SRob Herring panel: lcd_panel { 34*724ba675SRob Herring compatible = "ti,tilcdc,panel"; 35*724ba675SRob Herring }; 36*724ba675SRob Herring 37*724ba675SRob Herring sound: sound_iface { 38*724ba675SRob Herring compatible = "ti,da830-evm-audio"; 39*724ba675SRob Herring }; 40*724ba675SRob Herring 41*724ba675SRob Herring vbat: fixedregulator0 { 42*724ba675SRob Herring compatible = "regulator-fixed"; 43*724ba675SRob Herring }; 44*724ba675SRob Herring 45*724ba675SRob Herring v3v3c_reg: fixedregulator1 { 46*724ba675SRob Herring compatible = "regulator-fixed"; 47*724ba675SRob Herring }; 48*724ba675SRob Herring 49*724ba675SRob Herring vdd5_reg: fixedregulator2 { 50*724ba675SRob Herring compatible = "regulator-fixed"; 51*724ba675SRob Herring }; 52*724ba675SRob Herring}; 53*724ba675SRob Herring 54*724ba675SRob Herring/* I2C Busses */ 55*724ba675SRob Herring&i2c0 { 56*724ba675SRob Herring status = "okay"; 57*724ba675SRob Herring pinctrl-names = "default"; 58*724ba675SRob Herring pinctrl-0 = <&i2c0_pins>; 59*724ba675SRob Herring 60*724ba675SRob Herring clock-frequency = <400000>; 61*724ba675SRob Herring 62*724ba675SRob Herring tps: tps@24 { 63*724ba675SRob Herring reg = <0x24>; 64*724ba675SRob Herring }; 65*724ba675SRob Herring 66*724ba675SRob Herring eeprom: eeprom@50 { 67*724ba675SRob Herring compatible = "atmel,24c256"; 68*724ba675SRob Herring reg = <0x50>; 69*724ba675SRob Herring }; 70*724ba675SRob Herring 71*724ba675SRob Herring audio_codec: tlv320aic3106@1b { 72*724ba675SRob Herring compatible = "ti,tlv320aic3106"; 73*724ba675SRob Herring reg = <0x1b>; 74*724ba675SRob Herring ai3x-micbias-vg = <0x2>; 75*724ba675SRob Herring }; 76*724ba675SRob Herring 77*724ba675SRob Herring accel: lis331dlh@1d { 78*724ba675SRob Herring compatible = "st,lis3lv02d"; 79*724ba675SRob Herring reg = <0x1d>; 80*724ba675SRob Herring }; 81*724ba675SRob Herring}; 82*724ba675SRob Herring 83*724ba675SRob Herring&i2c1 { 84*724ba675SRob Herring status = "okay"; 85*724ba675SRob Herring pinctrl-names = "default"; 86*724ba675SRob Herring pinctrl-0 = <&i2c1_pins>; 87*724ba675SRob Herring clock-frequency = <400000>; 88*724ba675SRob Herring}; 89*724ba675SRob Herring 90*724ba675SRob Herring&am33xx_pinmux { 91*724ba675SRob Herring i2c0_pins: i2c0-pins { 92*724ba675SRob Herring pinctrl-single,pins = < 93*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_I2C0_SDA, PIN_INPUT_PULLUP, MUX_MODE0) 94*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_I2C0_SCL, PIN_INPUT_PULLUP, MUX_MODE0) 95*724ba675SRob Herring >; 96*724ba675SRob Herring }; 97*724ba675SRob Herring i2c1_pins: i2c1-pins { 98*724ba675SRob Herring pinctrl-single,pins = < 99*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MII1_CRS, PIN_INPUT_PULLUP, MUX_MODE3) /* mii1_crs,i2c1_sda */ 100*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MII1_RX_ER, PIN_INPUT_PULLUP, MUX_MODE3) /* mii1_rxerr,i2c1_scl */ 101*724ba675SRob Herring >; 102*724ba675SRob Herring }; 103*724ba675SRob Herring}; 104*724ba675SRob Herring 105*724ba675SRob Herring/* Accelerometer */ 106*724ba675SRob Herring&accel { 107*724ba675SRob Herring pinctrl-names = "default"; 108*724ba675SRob Herring pinctrl-0 = <&accel_pins>; 109*724ba675SRob Herring 110*724ba675SRob Herring Vdd-supply = <&ldo3_reg>; 111*724ba675SRob Herring Vdd_IO-supply = <&ldo3_reg>; 112*724ba675SRob Herring st,irq1-click; 113*724ba675SRob Herring st,wakeup-x-lo; 114*724ba675SRob Herring st,wakeup-x-hi; 115*724ba675SRob Herring st,wakeup-y-lo; 116*724ba675SRob Herring st,wakeup-y-hi; 117*724ba675SRob Herring st,wakeup-z-lo; 118*724ba675SRob Herring st,wakeup-z-hi; 119*724ba675SRob Herring st,min-limit-x = <92>; 120*724ba675SRob Herring st,max-limit-x = <14>; 121*724ba675SRob Herring st,min-limit-y = <14>; 122*724ba675SRob Herring st,max-limit-y = <92>; 123*724ba675SRob Herring st,min-limit-z = <92>; 124*724ba675SRob Herring st,max-limit-z = <14>; 125*724ba675SRob Herring}; 126*724ba675SRob Herring 127*724ba675SRob Herring&am33xx_pinmux { 128*724ba675SRob Herring accel_pins: accel-pins { 129*724ba675SRob Herring pinctrl-single,pins = < 130*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_WEN, PIN_INPUT, MUX_MODE7) /* gpmc_wen.gpio2_4 */ 131*724ba675SRob Herring >; 132*724ba675SRob Herring }; 133*724ba675SRob Herring}; 134*724ba675SRob Herring 135*724ba675SRob Herring/* Audio */ 136*724ba675SRob Herring&audio_codec { 137*724ba675SRob Herring status = "okay"; 138*724ba675SRob Herring 139*724ba675SRob Herring reset-gpios = <&gpio1 16 GPIO_ACTIVE_LOW>; 140*724ba675SRob Herring AVDD-supply = <&ldo3_reg>; 141*724ba675SRob Herring IOVDD-supply = <&ldo3_reg>; 142*724ba675SRob Herring DRVDD-supply = <&ldo3_reg>; 143*724ba675SRob Herring DVDD-supply = <&dcdc1_reg>; 144*724ba675SRob Herring}; 145*724ba675SRob Herring 146*724ba675SRob Herring&sound { 147*724ba675SRob Herring ti,model = "AM335x-EVM"; 148*724ba675SRob Herring ti,audio-codec = <&audio_codec>; 149*724ba675SRob Herring ti,mcasp-controller = <&mcasp0>; 150*724ba675SRob Herring ti,codec-clock-rate = <12000000>; 151*724ba675SRob Herring ti,audio-routing = 152*724ba675SRob Herring "Headphone Jack", "HPLOUT", 153*724ba675SRob Herring "Headphone Jack", "HPROUT", 154*724ba675SRob Herring "MIC3L", "Mic3L Switch"; 155*724ba675SRob Herring}; 156*724ba675SRob Herring 157*724ba675SRob Herring&mcasp0 { 158*724ba675SRob Herring status = "okay"; 159*724ba675SRob Herring pinctrl-names = "default"; 160*724ba675SRob Herring pinctrl-0 = <&audio_pins>; 161*724ba675SRob Herring 162*724ba675SRob Herring op-mode = <0>; /* MCASP_ISS_MODE */ 163*724ba675SRob Herring tdm-slots = <2>; 164*724ba675SRob Herring serial-dir = < 165*724ba675SRob Herring 1 2 0 0 166*724ba675SRob Herring 0 0 0 0 167*724ba675SRob Herring 0 0 0 0 168*724ba675SRob Herring 0 0 0 0 169*724ba675SRob Herring >; 170*724ba675SRob Herring tx-num-evt = <1>; 171*724ba675SRob Herring rx-num-evt = <1>; 172*724ba675SRob Herring}; 173*724ba675SRob Herring 174*724ba675SRob Herring&am33xx_pinmux { 175*724ba675SRob Herring audio_pins: audio-pins { 176*724ba675SRob Herring pinctrl-single,pins = < 177*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MCASP0_AHCLKX, PIN_INPUT_PULLDOWN, MUX_MODE0) 178*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MCASP0_FSX, PIN_INPUT_PULLDOWN, MUX_MODE0) 179*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MCASP0_ACLKX, PIN_INPUT_PULLDOWN, MUX_MODE0) 180*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MCASP0_AXR0, PIN_INPUT_PULLDOWN, MUX_MODE0) 181*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MCASP0_AXR1, PIN_INPUT_PULLDOWN, MUX_MODE0) 182*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_A0, PIN_OUTPUT, MUX_MODE7) /* gpmc_a0.gpio1_16 */ 183*724ba675SRob Herring >; 184*724ba675SRob Herring }; 185*724ba675SRob Herring}; 186*724ba675SRob Herring 187*724ba675SRob Herring/* Display: 24-bit LCD Screen */ 188*724ba675SRob Herring&panel { 189*724ba675SRob Herring status = "okay"; 190*724ba675SRob Herring pinctrl-names = "default"; 191*724ba675SRob Herring pinctrl-0 = <&lcd_pins>; 192*724ba675SRob Herring panel-info { 193*724ba675SRob Herring ac-bias = <255>; 194*724ba675SRob Herring ac-bias-intrpt = <0>; 195*724ba675SRob Herring dma-burst-sz = <16>; 196*724ba675SRob Herring bpp = <32>; 197*724ba675SRob Herring fdd = <0x80>; 198*724ba675SRob Herring sync-edge = <0>; 199*724ba675SRob Herring sync-ctrl = <1>; 200*724ba675SRob Herring raster-order = <0>; 201*724ba675SRob Herring fifo-th = <0>; 202*724ba675SRob Herring }; 203*724ba675SRob Herring display-timings { 204*724ba675SRob Herring native-mode = <&timing0>; 205*724ba675SRob Herring timing0: 480x272 { 206*724ba675SRob Herring clock-frequency = <18400000>; 207*724ba675SRob Herring hactive = <480>; 208*724ba675SRob Herring vactive = <272>; 209*724ba675SRob Herring hfront-porch = <8>; 210*724ba675SRob Herring hback-porch = <4>; 211*724ba675SRob Herring hsync-len = <41>; 212*724ba675SRob Herring vfront-porch = <4>; 213*724ba675SRob Herring vback-porch = <2>; 214*724ba675SRob Herring vsync-len = <10>; 215*724ba675SRob Herring hsync-active = <1>; 216*724ba675SRob Herring vsync-active = <1>; 217*724ba675SRob Herring }; 218*724ba675SRob Herring }; 219*724ba675SRob Herring}; 220*724ba675SRob Herring 221*724ba675SRob Herring&lcdc { 222*724ba675SRob Herring status = "okay"; 223*724ba675SRob Herring}; 224*724ba675SRob Herring 225*724ba675SRob Herring&am33xx_pinmux { 226*724ba675SRob Herring lcd_pins: lcd-pins { 227*724ba675SRob Herring pinctrl-single,pins = < 228*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_DATA0, PIN_OUTPUT, MUX_MODE0) 229*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_DATA1, PIN_OUTPUT, MUX_MODE0) 230*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_DATA2, PIN_OUTPUT, MUX_MODE0) 231*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_DATA3, PIN_OUTPUT, MUX_MODE0) 232*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_DATA4, PIN_OUTPUT, MUX_MODE0) 233*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_DATA5, PIN_OUTPUT, MUX_MODE0) 234*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_DATA6, PIN_OUTPUT, MUX_MODE0) 235*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_DATA7, PIN_OUTPUT, MUX_MODE0) 236*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_DATA8, PIN_OUTPUT, MUX_MODE0) 237*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_DATA9, PIN_OUTPUT, MUX_MODE0) 238*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_DATA10, PIN_OUTPUT, MUX_MODE0) 239*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_DATA11, PIN_OUTPUT, MUX_MODE0) 240*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_DATA12, PIN_OUTPUT, MUX_MODE0) 241*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_DATA13, PIN_OUTPUT, MUX_MODE0) 242*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_DATA14, PIN_OUTPUT, MUX_MODE0) 243*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_DATA15, PIN_OUTPUT, MUX_MODE0) 244*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD8, PIN_OUTPUT, MUX_MODE1) /* gpmc_ad8.lcd_data16 */ 245*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD9, PIN_OUTPUT, MUX_MODE1) /* gpmc_ad9.lcd_data17 */ 246*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD10, PIN_OUTPUT, MUX_MODE1) /* gpmc_ad10.lcd_data18 */ 247*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD11, PIN_OUTPUT, MUX_MODE1) /* gpmc_ad11.lcd_data19 */ 248*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD12, PIN_OUTPUT, MUX_MODE1) /* gpmc_ad12.lcd_data20 */ 249*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD13, PIN_OUTPUT, MUX_MODE1) /* gpmc_ad13.lcd_data21 */ 250*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD14, PIN_OUTPUT, MUX_MODE1) /* gpmc_ad14.lcd_data22 */ 251*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD15, PIN_OUTPUT, MUX_MODE1) /* gpmc_ad15.lcd_data23 */ 252*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_VSYNC, PIN_OUTPUT, MUX_MODE0) 253*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_HSYNC, PIN_OUTPUT, MUX_MODE0) 254*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_PCLK, PIN_OUTPUT, MUX_MODE0) 255*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_LCD_AC_BIAS_EN, PIN_OUTPUT, MUX_MODE0) 256*724ba675SRob Herring /* Display Enable */ 257*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_A11, PIN_OUTPUT_PULLUP, MUX_MODE7) /* gpmc_a11.gpio1_27 */ 258*724ba675SRob Herring >; 259*724ba675SRob Herring }; 260*724ba675SRob Herring}; 261*724ba675SRob Herring 262*724ba675SRob Herring/* Ethernet */ 263*724ba675SRob Herring&cpsw_port1 { 264*724ba675SRob Herring phy-handle = <ðphy0>; 265*724ba675SRob Herring phy-mode = "rgmii"; 266*724ba675SRob Herring ti,dual-emac-pvid = <1>; 267*724ba675SRob Herring}; 268*724ba675SRob Herring 269*724ba675SRob Herring&cpsw_port2 { 270*724ba675SRob Herring phy-handle = <ðphy1>; 271*724ba675SRob Herring phy-mode = "rgmii"; 272*724ba675SRob Herring ti,dual-emac-pvid = <2>; 273*724ba675SRob Herring}; 274*724ba675SRob Herring 275*724ba675SRob Herring&davinci_mdio_sw { 276*724ba675SRob Herring pinctrl-names = "default"; 277*724ba675SRob Herring pinctrl-0 = <&mdio_pins>; 278*724ba675SRob Herring 279*724ba675SRob Herring ethphy0: ethernet-phy@0 { 280*724ba675SRob Herring reg = <0>; 281*724ba675SRob Herring }; 282*724ba675SRob Herring 283*724ba675SRob Herring ethphy1: ethernet-phy@1 { 284*724ba675SRob Herring reg = <1>; 285*724ba675SRob Herring }; 286*724ba675SRob Herring}; 287*724ba675SRob Herring 288*724ba675SRob Herring&mac_sw { 289*724ba675SRob Herring status = "okay"; 290*724ba675SRob Herring pinctrl-names = "default"; 291*724ba675SRob Herring pinctrl-0 = <ðernet_pins>; 292*724ba675SRob Herring}; 293*724ba675SRob Herring 294*724ba675SRob Herring&am33xx_pinmux { 295*724ba675SRob Herring ethernet_pins: ethernet-pins { 296*724ba675SRob Herring pinctrl-single,pins = < 297*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MII1_TX_EN, PIN_OUTPUT_PULLDOWN, MUX_MODE2) /* mii1_txen.rgmii1_tctl */ 298*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MII1_RX_DV, PIN_INPUT_PULLUP, MUX_MODE2) /* mii1_rxdv.rgmii1_rctl */ 299*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MII1_TXD3, PIN_OUTPUT_PULLDOWN, MUX_MODE2) /* mii1_txd3.rgmii1_td3 */ 300*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MII1_TXD2, PIN_OUTPUT_PULLDOWN, MUX_MODE2) /* mii1_txd2.rgmii1_td2 */ 301*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MII1_TXD1, PIN_OUTPUT_PULLDOWN, MUX_MODE2) /* mii1_txd1.rgmii1_td1 */ 302*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MII1_TXD0, PIN_OUTPUT_PULLDOWN, MUX_MODE2) /* mii1_txd0.rgmii1_td0 */ 303*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MII1_TX_CLK, PIN_INPUT_PULLUP, MUX_MODE2) 304*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MII1_RX_CLK, PIN_INPUT_PULLUP, MUX_MODE2) 305*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MII1_RXD3, PIN_INPUT_PULLUP, MUX_MODE2) 306*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MII1_RXD2, PIN_INPUT_PULLUP, MUX_MODE2) 307*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MII1_RXD1, PIN_INPUT_PULLUP, MUX_MODE2) 308*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MII1_RXD0, PIN_INPUT_PULLUP, MUX_MODE2) 309*724ba675SRob Herring /* ethernet interrupt */ 310*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_RMII1_REF_CLK, PIN_INPUT_PULLUP, MUX_MODE7) /* rmii2_refclk.gpio0_29 */ 311*724ba675SRob Herring /* ethernet PHY nReset */ 312*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MII1_COL, PIN_OUTPUT_PULLUP, MUX_MODE7) /* mii1_col.gpio3_0 */ 313*724ba675SRob Herring >; 314*724ba675SRob Herring }; 315*724ba675SRob Herring 316*724ba675SRob Herring mdio_pins: mdio-pins { 317*724ba675SRob Herring pinctrl-single,pins = < 318*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MDIO, PIN_INPUT_PULLUP | SLEWCTRL_FAST, MUX_MODE0) 319*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MDC, PIN_OUTPUT_PULLUP, MUX_MODE0) 320*724ba675SRob Herring >; 321*724ba675SRob Herring }; 322*724ba675SRob Herring}; 323*724ba675SRob Herring 324*724ba675SRob Herring/* MMC */ 325*724ba675SRob Herring&mmc1 { 326*724ba675SRob Herring /* Bootable SD card slot */ 327*724ba675SRob Herring status = "okay"; 328*724ba675SRob Herring vmmc-supply = <&ldo3_reg>; 329*724ba675SRob Herring bus-width = <4>; 330*724ba675SRob Herring pinctrl-names = "default"; 331*724ba675SRob Herring pinctrl-0 = <&sd_pins>; 332*724ba675SRob Herring cd-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>; 333*724ba675SRob Herring}; 334*724ba675SRob Herring 335*724ba675SRob Herring&mmc2 { 336*724ba675SRob Herring /* eMMC (not populated) on MMC #2 */ 337*724ba675SRob Herring status = "disabled"; 338*724ba675SRob Herring pinctrl-names = "default"; 339*724ba675SRob Herring pinctrl-0 = <&emmc_pins>; 340*724ba675SRob Herring vmmc-supply = <&ldo3_reg>; 341*724ba675SRob Herring bus-width = <8>; 342*724ba675SRob Herring non-removable; 343*724ba675SRob Herring}; 344*724ba675SRob Herring 345*724ba675SRob Herring&mmc3 { 346*724ba675SRob Herring /* Wifi & Bluetooth on MMC #3 */ 347*724ba675SRob Herring status = "okay"; 348*724ba675SRob Herring pinctrl-names = "default"; 349*724ba675SRob Herring pinctrl-0 = <&wireless_pins>; 350*724ba675SRob Herring vmmmc-supply = <&v3v3c_reg>; 351*724ba675SRob Herring bus-width = <4>; 352*724ba675SRob Herring non-removable; 353*724ba675SRob Herring dmas = <&edma_xbar 12 0 1 354*724ba675SRob Herring &edma_xbar 13 0 2>; 355*724ba675SRob Herring dma-names = "tx", "rx"; 356*724ba675SRob Herring}; 357*724ba675SRob Herring 358*724ba675SRob Herring 359*724ba675SRob Herring&am33xx_pinmux { 360*724ba675SRob Herring sd_pins: sd-card-pins { 361*724ba675SRob Herring pinctrl-single,pins = < 362*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MMC0_DAT3, PIN_INPUT_PULLUP, MUX_MODE0) 363*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MMC0_DAT2, PIN_INPUT_PULLUP, MUX_MODE0) 364*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MMC0_DAT1, PIN_INPUT_PULLUP, MUX_MODE0) 365*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MMC0_DAT0, PIN_INPUT_PULLUP, MUX_MODE0) 366*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MMC0_CLK, PIN_INPUT_PULLUP, MUX_MODE0) 367*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_MMC0_CMD, PIN_INPUT_PULLUP, MUX_MODE0) 368*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_SPI0_CS1, PIN_INPUT, MUX_MODE7) /* spi0_cs1.gpio0_6 */ 369*724ba675SRob Herring >; 370*724ba675SRob Herring }; 371*724ba675SRob Herring emmc_pins: emmc-pins { 372*724ba675SRob Herring pinctrl-single,pins = < 373*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_CSN1, PIN_INPUT_PULLUP, MUX_MODE2) /* gpmc_csn1.mmc1_clk */ 374*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_CSN2, PIN_INPUT_PULLUP, MUX_MODE2) /* gpmc_csn2.mmc1_cmd */ 375*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD0, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad0.mmc1_dat0 */ 376*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD1, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad1.mmc1_dat1 */ 377*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD2, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad2.mmc1_dat2 */ 378*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD3, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad3.mmc1_dat3 */ 379*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD4, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad4.mmc1_dat4 */ 380*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD5, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad5.mmc1_dat5 */ 381*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD6, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad6.mmc1_dat6 */ 382*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_AD7, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad7.mmc1_dat7 */ 383*724ba675SRob Herring /* EMMC nReset */ 384*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_WPN, PIN_OUTPUT_PULLUP, MUX_MODE7) /* gpmc_wpn.gpio0_31 */ 385*724ba675SRob Herring >; 386*724ba675SRob Herring }; 387*724ba675SRob Herring wireless_pins: wireless-pins { 388*724ba675SRob Herring pinctrl-single,pins = < 389*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_A1, PIN_INPUT_PULLUP, MUX_MODE3) /* gpmc_a1.mmc2_dat0 */ 390*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_A2, PIN_INPUT_PULLUP, MUX_MODE3) /* gpmc_a2.mmc2_dat1 */ 391*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_A3, PIN_INPUT_PULLUP, MUX_MODE3) /* gpmc_a3.mmc2_dat2 */ 392*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_BEN1, PIN_INPUT_PULLUP, MUX_MODE3) /* gpmc_ben1.mmc2_dat3 */ 393*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_CSN3, PIN_INPUT_PULLUP, MUX_MODE3) /* gpmc_csn3.mmc2_cmd */ 394*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_CLK, PIN_INPUT_PULLUP, MUX_MODE3) /* gpmc_clk.mmc1_clk */ 395*724ba675SRob Herring /* WLAN nReset */ 396*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_A8, PIN_OUTPUT_PULLUP, MUX_MODE7) /* gpmc_a8.gpio1_24 */ 397*724ba675SRob Herring /* WLAN nPower down */ 398*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_WAIT0, PIN_OUTPUT_PULLUP, MUX_MODE7) /* gpmc_wait0.gpio0_30 */ 399*724ba675SRob Herring /* 32kHz Clock */ 400*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_XDMA_EVENT_INTR1, PIN_OUTPUT_PULLDOWN, MUX_MODE3) /* xdma_event_intr1.clkout2 */ 401*724ba675SRob Herring >; 402*724ba675SRob Herring }; 403*724ba675SRob Herring}; 404*724ba675SRob Herring 405*724ba675SRob Herring/* Power */ 406*724ba675SRob Herring&vbat { 407*724ba675SRob Herring regulator-name = "vbat"; 408*724ba675SRob Herring regulator-min-microvolt = <5000000>; 409*724ba675SRob Herring regulator-max-microvolt = <5000000>; 410*724ba675SRob Herring}; 411*724ba675SRob Herring 412*724ba675SRob Herring&v3v3c_reg { 413*724ba675SRob Herring regulator-name = "v3v3c_reg"; 414*724ba675SRob Herring regulator-min-microvolt = <3300000>; 415*724ba675SRob Herring regulator-max-microvolt = <3300000>; 416*724ba675SRob Herring vin-supply = <&vbat>; 417*724ba675SRob Herring}; 418*724ba675SRob Herring 419*724ba675SRob Herring&vdd5_reg { 420*724ba675SRob Herring regulator-name = "vdd5_reg"; 421*724ba675SRob Herring regulator-min-microvolt = <5000000>; 422*724ba675SRob Herring regulator-max-microvolt = <5000000>; 423*724ba675SRob Herring vin-supply = <&vbat>; 424*724ba675SRob Herring}; 425*724ba675SRob Herring 426*724ba675SRob Herring/include/ "../../tps65217.dtsi" 427*724ba675SRob Herring 428*724ba675SRob Herring&tps { 429*724ba675SRob Herring backlight { 430*724ba675SRob Herring isel = <1>; /* ISET1 */ 431*724ba675SRob Herring fdim = <200>; /* TPS65217_BL_FDIM_200HZ */ 432*724ba675SRob Herring default-brightness = <80>; 433*724ba675SRob Herring }; 434*724ba675SRob Herring 435*724ba675SRob Herring regulators { 436*724ba675SRob Herring dcdc1_reg: regulator@0 { 437*724ba675SRob Herring /* VDD_1V8 system supply */ 438*724ba675SRob Herring regulator-always-on; 439*724ba675SRob Herring }; 440*724ba675SRob Herring 441*724ba675SRob Herring dcdc2_reg: regulator@1 { 442*724ba675SRob Herring /* VDD_CORE voltage limits 0.95V - 1.26V with +/-4% tolerance */ 443*724ba675SRob Herring regulator-name = "vdd_core"; 444*724ba675SRob Herring regulator-min-microvolt = <925000>; 445*724ba675SRob Herring regulator-max-microvolt = <1150000>; 446*724ba675SRob Herring regulator-boot-on; 447*724ba675SRob Herring regulator-always-on; 448*724ba675SRob Herring }; 449*724ba675SRob Herring 450*724ba675SRob Herring dcdc3_reg: regulator@2 { 451*724ba675SRob Herring /* VDD_MPU voltage limits 0.95V - 1.1V with +/-4% tolerance */ 452*724ba675SRob Herring regulator-name = "vdd_mpu"; 453*724ba675SRob Herring regulator-min-microvolt = <925000>; 454*724ba675SRob Herring regulator-max-microvolt = <1325000>; 455*724ba675SRob Herring regulator-boot-on; 456*724ba675SRob Herring regulator-always-on; 457*724ba675SRob Herring }; 458*724ba675SRob Herring 459*724ba675SRob Herring ldo1_reg: regulator@3 { 460*724ba675SRob Herring /* VRTC 1.8V always-on supply */ 461*724ba675SRob Herring regulator-name = "vrtc,vdds"; 462*724ba675SRob Herring regulator-always-on; 463*724ba675SRob Herring }; 464*724ba675SRob Herring 465*724ba675SRob Herring ldo2_reg: regulator@4 { 466*724ba675SRob Herring /* 3.3V rail */ 467*724ba675SRob Herring regulator-name = "vdd_3v3aux"; 468*724ba675SRob Herring regulator-always-on; 469*724ba675SRob Herring }; 470*724ba675SRob Herring 471*724ba675SRob Herring ldo3_reg: regulator@5 { 472*724ba675SRob Herring /* VDD_3V3A 3.3V rail */ 473*724ba675SRob Herring regulator-name = "vdd_3v3a"; 474*724ba675SRob Herring regulator-min-microvolt = <3300000>; 475*724ba675SRob Herring regulator-max-microvolt = <3300000>; 476*724ba675SRob Herring }; 477*724ba675SRob Herring 478*724ba675SRob Herring ldo4_reg: regulator@6 { 479*724ba675SRob Herring /* VDD_3V3B 3.3V rail */ 480*724ba675SRob Herring regulator-name = "vdd_3v3b"; 481*724ba675SRob Herring regulator-always-on; 482*724ba675SRob Herring }; 483*724ba675SRob Herring }; 484*724ba675SRob Herring}; 485*724ba675SRob Herring 486*724ba675SRob Herring/* SPI Busses */ 487*724ba675SRob Herring&spi0 { 488*724ba675SRob Herring status = "okay"; 489*724ba675SRob Herring pinctrl-names = "default"; 490*724ba675SRob Herring pinctrl-0 = <&spi0_pins>; 491*724ba675SRob Herring}; 492*724ba675SRob Herring 493*724ba675SRob Herring&am33xx_pinmux { 494*724ba675SRob Herring spi0_pins: spi0-pins { 495*724ba675SRob Herring pinctrl-single,pins = < 496*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_SPI0_SCLK, PIN_INPUT_PULLUP, MUX_MODE0) 497*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_SPI0_CS0, PIN_INPUT_PULLUP, MUX_MODE0) 498*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_SPI0_D0, PIN_INPUT_PULLUP, MUX_MODE0) 499*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_SPI0_D1, PIN_INPUT_PULLUP, MUX_MODE0) 500*724ba675SRob Herring >; 501*724ba675SRob Herring }; 502*724ba675SRob Herring}; 503*724ba675SRob Herring 504*724ba675SRob Herring/* Touch Screen */ 505*724ba675SRob Herring&tscadc { 506*724ba675SRob Herring status = "okay"; 507*724ba675SRob Herring tsc { 508*724ba675SRob Herring ti,wires = <4>; 509*724ba675SRob Herring ti,x-plate-resistance = <200>; 510*724ba675SRob Herring ti,coordinate-readouts = <5>; 511*724ba675SRob Herring ti,wire-config = <0x00 0x11 0x22 0x33>; 512*724ba675SRob Herring }; 513*724ba675SRob Herring 514*724ba675SRob Herring adc { 515*724ba675SRob Herring ti,adc-channels = <4 5 6 7>; 516*724ba675SRob Herring }; 517*724ba675SRob Herring}; 518*724ba675SRob Herring 519*724ba675SRob Herring/* UARTs */ 520*724ba675SRob Herring&uart0 { 521*724ba675SRob Herring /* Serial Console */ 522*724ba675SRob Herring status = "okay"; 523*724ba675SRob Herring pinctrl-names = "default"; 524*724ba675SRob Herring pinctrl-0 = <&uart0_pins>; 525*724ba675SRob Herring}; 526*724ba675SRob Herring 527*724ba675SRob Herring&uart1 { 528*724ba675SRob Herring /* Broken out to J6 header */ 529*724ba675SRob Herring status = "okay"; 530*724ba675SRob Herring pinctrl-names = "default"; 531*724ba675SRob Herring pinctrl-0 = <&uart1_pins>; 532*724ba675SRob Herring}; 533*724ba675SRob Herring 534*724ba675SRob Herring&am33xx_pinmux { 535*724ba675SRob Herring uart0_pins: uart0-pins { 536*724ba675SRob Herring pinctrl-single,pins = < 537*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_UART0_RXD, PIN_INPUT_PULLUP, MUX_MODE0) 538*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_UART0_TXD, PIN_OUTPUT_PULLDOWN, MUX_MODE0) 539*724ba675SRob Herring >; 540*724ba675SRob Herring }; 541*724ba675SRob Herring uart1_pins: uart1-pins { 542*724ba675SRob Herring pinctrl-single,pins = < 543*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_UART1_CTSN, PIN_INPUT_PULLUP, MUX_MODE0) 544*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_UART1_RTSN, PIN_OUTPUT_PULLDOWN, MUX_MODE0) 545*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_UART1_RXD, PIN_INPUT_PULLUP, MUX_MODE0) 546*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_UART1_TXD, PIN_OUTPUT_PULLDOWN, MUX_MODE0) 547*724ba675SRob Herring >; 548*724ba675SRob Herring }; 549*724ba675SRob Herring}; 550*724ba675SRob Herring 551*724ba675SRob Herring/* USB */ 552*724ba675SRob Herring&usb { 553*724ba675SRob Herring pinctrl-names = "default"; 554*724ba675SRob Herring pinctrl-0 = <&usb_pins>; 555*724ba675SRob Herring}; 556*724ba675SRob Herring 557*724ba675SRob Herring&usb0 { 558*724ba675SRob Herring dr_mode = "host"; 559*724ba675SRob Herring}; 560*724ba675SRob Herring 561*724ba675SRob Herring&usb1 { 562*724ba675SRob Herring dr_mode = "host"; 563*724ba675SRob Herring}; 564*724ba675SRob Herring 565*724ba675SRob Herring&am33xx_pinmux { 566*724ba675SRob Herring usb_pins: usb-pins { 567*724ba675SRob Herring pinctrl-single,pins = < 568*724ba675SRob Herring /* USB0 Over-Current (active low) */ 569*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_A9, PIN_INPUT, MUX_MODE7) /* gpmc_a9.gpio1_25 */ 570*724ba675SRob Herring /* USB1 Over-Current (active low) */ 571*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_A10, PIN_INPUT, MUX_MODE7) /* gpmc_a10.gpio1_26 */ 572*724ba675SRob Herring >; 573*724ba675SRob Herring }; 574*724ba675SRob Herring}; 575*724ba675SRob Herring 576*724ba675SRob Herring/* User IO */ 577*724ba675SRob Herring&leds { 578*724ba675SRob Herring pinctrl-names = "default"; 579*724ba675SRob Herring pinctrl-0 = <&user_leds_pins>; 580*724ba675SRob Herring 581*724ba675SRob Herring led0 { 582*724ba675SRob Herring label = "pepper:user0:blue"; 583*724ba675SRob Herring gpios = <&gpio1 20 GPIO_ACTIVE_HIGH>; 584*724ba675SRob Herring linux,default-trigger = "none"; 585*724ba675SRob Herring default-state = "off"; 586*724ba675SRob Herring }; 587*724ba675SRob Herring 588*724ba675SRob Herring led1 { 589*724ba675SRob Herring label = "pepper:user1:red"; 590*724ba675SRob Herring gpios = <&gpio1 21 GPIO_ACTIVE_HIGH>; 591*724ba675SRob Herring linux,default-trigger = "none"; 592*724ba675SRob Herring default-state = "off"; 593*724ba675SRob Herring }; 594*724ba675SRob Herring}; 595*724ba675SRob Herring 596*724ba675SRob Herring&buttons { 597*724ba675SRob Herring pinctrl-names = "default"; 598*724ba675SRob Herring pinctrl-0 = <&user_buttons_pins>; 599*724ba675SRob Herring 600*724ba675SRob Herring button-0 { 601*724ba675SRob Herring label = "home"; 602*724ba675SRob Herring linux,code = <KEY_HOME>; 603*724ba675SRob Herring gpios = <&gpio1 22 GPIO_ACTIVE_LOW>; 604*724ba675SRob Herring wakeup-source; 605*724ba675SRob Herring }; 606*724ba675SRob Herring 607*724ba675SRob Herring button-1 { 608*724ba675SRob Herring label = "menu"; 609*724ba675SRob Herring linux,code = <KEY_MENU>; 610*724ba675SRob Herring gpios = <&gpio1 23 GPIO_ACTIVE_LOW>; 611*724ba675SRob Herring wakeup-source; 612*724ba675SRob Herring }; 613*724ba675SRob Herring 614*724ba675SRob Herring button-2 { 615*724ba675SRob Herring label = "power"; 616*724ba675SRob Herring linux,code = <KEY_POWER>; 617*724ba675SRob Herring gpios = <&gpio0 7 GPIO_ACTIVE_LOW>; 618*724ba675SRob Herring wakeup-source; 619*724ba675SRob Herring }; 620*724ba675SRob Herring}; 621*724ba675SRob Herring 622*724ba675SRob Herring&am33xx_pinmux { 623*724ba675SRob Herring user_leds_pins: user-leds-pins { 624*724ba675SRob Herring pinctrl-single,pins = < 625*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_A4, PIN_OUTPUT, MUX_MODE7) /* gpmc_a4.gpio1_20 */ 626*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_A5, PIN_OUTPUT, MUX_MODE7) /* gpmc_a5.gpio1_21 */ 627*724ba675SRob Herring >; 628*724ba675SRob Herring }; 629*724ba675SRob Herring 630*724ba675SRob Herring user_buttons_pins: user-buttons-pins { 631*724ba675SRob Herring pinctrl-single,pins = < 632*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_A6, PIN_INPUT_PULLUP, MUX_MODE7) /* gpmc_a6.gpio1_22 */ 633*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_GPMC_A7, PIN_INPUT_PULLUP, MUX_MODE7) /* gpmc_a7.gpio1_21 */ 634*724ba675SRob Herring AM33XX_PADCONF(AM335X_PIN_ECAP0_IN_PWM0_OUT, PIN_INPUT_PULLUP, MUX_MODE7) /* gpmc_a8.gpio0_7 */ 635*724ba675SRob Herring >; 636*724ba675SRob Herring }; 637*724ba675SRob Herring}; 638