1/* 2 * Copyright (C) 2017 Texas Instruments Incorporated - http://www.ti.com/ 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License version 2 as 6 * published by the Free Software Foundation. 7 */ 8/dts-v1/; 9 10#include "dra76x.dtsi" 11#include "dra7-evm-common.dtsi" 12#include <dt-bindings/net/ti-dp83867.h> 13 14/ { 15 model = "TI DRA762 EVM"; 16 compatible = "ti,dra76-evm", "ti,dra762", "ti,dra7"; 17 18 memory@0 { 19 device_type = "memory"; 20 reg = <0x0 0x80000000 0x0 0x80000000>; 21 }; 22 23 vsys_12v0: fixedregulator-vsys12v0 { 24 /* main supply */ 25 compatible = "regulator-fixed"; 26 regulator-name = "vsys_12v0"; 27 regulator-min-microvolt = <12000000>; 28 regulator-max-microvolt = <12000000>; 29 regulator-always-on; 30 regulator-boot-on; 31 }; 32 33 vsys_5v0: fixedregulator-vsys5v0 { 34 /* Output of Cntlr B of TPS43351-Q1 on dra76-evm */ 35 compatible = "regulator-fixed"; 36 regulator-name = "vsys_5v0"; 37 regulator-min-microvolt = <5000000>; 38 regulator-max-microvolt = <5000000>; 39 vin-supply = <&vsys_12v0>; 40 regulator-always-on; 41 regulator-boot-on; 42 }; 43 44 vsys_3v3: fixedregulator-vsys3v3 { 45 /* Output of Cntlr A of TPS43351-Q1 on dra76-evm */ 46 compatible = "regulator-fixed"; 47 regulator-name = "vsys_3v3"; 48 regulator-min-microvolt = <3300000>; 49 regulator-max-microvolt = <3300000>; 50 vin-supply = <&vsys_12v0>; 51 regulator-always-on; 52 regulator-boot-on; 53 }; 54 55 vio_3v3: fixedregulator-vio_3v3 { 56 compatible = "regulator-fixed"; 57 regulator-name = "vio_3v3"; 58 regulator-min-microvolt = <3300000>; 59 regulator-max-microvolt = <3300000>; 60 vin-supply = <&vsys_3v3>; 61 regulator-always-on; 62 regulator-boot-on; 63 }; 64 65 vio_3v3_sd: fixedregulator-sd { 66 compatible = "regulator-fixed"; 67 regulator-name = "vio_3v3_sd"; 68 regulator-min-microvolt = <3300000>; 69 regulator-max-microvolt = <3300000>; 70 vin-supply = <&vio_3v3>; 71 enable-active-high; 72 gpio = <&gpio4 21 GPIO_ACTIVE_HIGH>; 73 }; 74 75 vio_1v8: fixedregulator-vio_1v8 { 76 compatible = "regulator-fixed"; 77 regulator-name = "vio_1v8"; 78 regulator-min-microvolt = <1800000>; 79 regulator-max-microvolt = <1800000>; 80 vin-supply = <&smps5_reg>; 81 }; 82 83 vtt_fixed: fixedregulator-vtt { 84 compatible = "regulator-fixed"; 85 regulator-name = "vtt_fixed"; 86 regulator-min-microvolt = <1350000>; 87 regulator-max-microvolt = <1350000>; 88 vin-supply = <&vsys_3v3>; 89 regulator-always-on; 90 regulator-boot-on; 91 }; 92 93 aic_dvdd: fixedregulator-aic_dvdd { 94 /* TPS77018DBVT */ 95 compatible = "regulator-fixed"; 96 regulator-name = "aic_dvdd"; 97 vin-supply = <&vio_3v3>; 98 regulator-min-microvolt = <1800000>; 99 regulator-max-microvolt = <1800000>; 100 }; 101}; 102 103&dra7_pmx_core { 104 mmc1_pins_default: mmc1_pins_default { 105 pinctrl-single,pins = < 106 DRA7XX_CORE_IOPAD(0x376c, PIN_INPUT | MUX_MODE14) /* mmc1sdcd.gpio219 */ 107 DRA7XX_CORE_IOPAD(0x3754, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_clk.clk */ 108 DRA7XX_CORE_IOPAD(0x3758, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_cmd.cmd */ 109 DRA7XX_CORE_IOPAD(0x375c, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat0.dat0 */ 110 DRA7XX_CORE_IOPAD(0x3760, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat1.dat1 */ 111 DRA7XX_CORE_IOPAD(0x3764, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat2.dat2 */ 112 DRA7XX_CORE_IOPAD(0x3768, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat3.dat3 */ 113 >; 114 }; 115 116 mmc1_pins_sdr12: pinmux_mmc1_sdr12_pins { 117 pinctrl-single,pins = < 118 DRA7XX_CORE_IOPAD(0x3754, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_clk.clk */ 119 DRA7XX_CORE_IOPAD(0x3758, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_cmd.cmd */ 120 DRA7XX_CORE_IOPAD(0x375c, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat0.dat0 */ 121 DRA7XX_CORE_IOPAD(0x3760, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat1.dat1 */ 122 DRA7XX_CORE_IOPAD(0x3764, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat2.dat2 */ 123 DRA7XX_CORE_IOPAD(0x3768, PIN_INPUT_PULLUP | MUX_MODE0) /* mmc1_dat3.dat3 */ 124 >; 125 }; 126 127 mmc2_pins_default: mmc2_pins_default { 128 pinctrl-single,pins = < 129 DRA7XX_CORE_IOPAD(0x349c, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a23.mmc2_clk */ 130 DRA7XX_CORE_IOPAD(0x34b0, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_cs1.mmc2_cmd */ 131 DRA7XX_CORE_IOPAD(0x34a0, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a24.mmc2_dat0 */ 132 DRA7XX_CORE_IOPAD(0x34a4, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a25.mmc2_dat1 */ 133 DRA7XX_CORE_IOPAD(0x34a8, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a26.mmc2_dat2 */ 134 DRA7XX_CORE_IOPAD(0x34ac, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a27.mmc2_dat3 */ 135 DRA7XX_CORE_IOPAD(0x348c, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a19.mmc2_dat4 */ 136 DRA7XX_CORE_IOPAD(0x3490, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a20.mmc2_dat5 */ 137 DRA7XX_CORE_IOPAD(0x3494, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a21.mmc2_dat6 */ 138 DRA7XX_CORE_IOPAD(0x3498, PIN_INPUT_PULLUP | MUX_MODE1) /* gpmc_a22.mmc2_dat7 */ 139 >; 140 }; 141}; 142 143&i2c1 { 144 status = "okay"; 145 clock-frequency = <400000>; 146 147 tps65917: tps65917@58 { 148 compatible = "ti,tps65917"; 149 reg = <0x58>; 150 ti,system-power-controller; 151 interrupt-controller; 152 #interrupt-cells = <2>; 153 154 tps65917_pmic { 155 compatible = "ti,tps65917-pmic"; 156 157 smps12-in-supply = <&vsys_3v3>; 158 smps3-in-supply = <&vsys_3v3>; 159 smps4-in-supply = <&vsys_3v3>; 160 smps5-in-supply = <&vsys_3v3>; 161 ldo1-in-supply = <&vsys_3v3>; 162 ldo2-in-supply = <&vsys_3v3>; 163 ldo3-in-supply = <&vsys_5v0>; 164 ldo4-in-supply = <&vsys_5v0>; 165 ldo5-in-supply = <&vsys_3v3>; 166 167 tps65917_regulators: regulators { 168 smps12_reg: smps12 { 169 /* VDD_DSPEVE */ 170 regulator-name = "smps12"; 171 regulator-min-microvolt = <850000>; 172 regulator-max-microvolt = <1250000>; 173 regulator-always-on; 174 regulator-boot-on; 175 }; 176 177 smps3_reg: smps3 { 178 /* VDD_CORE */ 179 regulator-name = "smps3"; 180 regulator-min-microvolt = <850000>; 181 regulator-max-microvolt = <1250000>; 182 regulator-boot-on; 183 regulator-always-on; 184 }; 185 186 smps4_reg: smps4 { 187 /* VDD_IVA */ 188 regulator-name = "smps4"; 189 regulator-min-microvolt = <850000>; 190 regulator-max-microvolt = <1250000>; 191 regulator-always-on; 192 regulator-boot-on; 193 }; 194 195 smps5_reg: smps5 { 196 /* VDDS1V8 */ 197 regulator-name = "smps5"; 198 regulator-min-microvolt = <1800000>; 199 regulator-max-microvolt = <1800000>; 200 regulator-boot-on; 201 regulator-always-on; 202 }; 203 204 ldo1_reg: ldo1 { 205 /* LDO1_OUT --> VDA_PHY1_1V8 */ 206 regulator-name = "ldo1"; 207 regulator-min-microvolt = <1800000>; 208 regulator-max-microvolt = <1800000>; 209 regulator-always-on; 210 regulator-boot-on; 211 regulator-allow-bypass; 212 }; 213 214 ldo2_reg: ldo2 { 215 /* LDO2_OUT --> VDA_PHY2_1V8 */ 216 regulator-name = "ldo2"; 217 regulator-min-microvolt = <1800000>; 218 regulator-max-microvolt = <1800000>; 219 regulator-allow-bypass; 220 regulator-always-on; 221 }; 222 223 ldo3_reg: ldo3 { 224 /* VDA_USB_3V3 */ 225 regulator-name = "ldo3"; 226 regulator-min-microvolt = <3300000>; 227 regulator-max-microvolt = <3300000>; 228 regulator-boot-on; 229 regulator-always-on; 230 }; 231 232 ldo5_reg: ldo5 { 233 /* VDDA_1V8_PLL */ 234 regulator-name = "ldo5"; 235 regulator-min-microvolt = <1800000>; 236 regulator-max-microvolt = <1800000>; 237 regulator-always-on; 238 regulator-boot-on; 239 }; 240 241 ldo4_reg: ldo4 { 242 /* VDD_SDIO_DV */ 243 regulator-name = "ldo4"; 244 regulator-min-microvolt = <1800000>; 245 regulator-max-microvolt = <3300000>; 246 regulator-boot-on; 247 regulator-always-on; 248 }; 249 }; 250 }; 251 252 tps65917_power_button { 253 compatible = "ti,palmas-pwrbutton"; 254 interrupt-parent = <&tps65917>; 255 interrupts = <1 IRQ_TYPE_NONE>; 256 wakeup-source; 257 ti,palmas-long-press-seconds = <6>; 258 }; 259 }; 260 261 lp87565: lp87565@60 { 262 compatible = "ti,lp87565-q1"; 263 reg = <0x60>; 264 265 buck10-in-supply =<&vsys_3v3>; 266 buck23-in-supply =<&vsys_3v3>; 267 268 regulators: regulators { 269 buck10_reg: buck10 { 270 /*VDD_MPU*/ 271 regulator-name = "buck10"; 272 regulator-min-microvolt = <850000>; 273 regulator-max-microvolt = <1250000>; 274 regulator-always-on; 275 regulator-boot-on; 276 }; 277 278 buck23_reg: buck23 { 279 /* VDD_GPU*/ 280 regulator-name = "buck23"; 281 regulator-min-microvolt = <850000>; 282 regulator-max-microvolt = <1250000>; 283 regulator-boot-on; 284 regulator-always-on; 285 }; 286 }; 287 }; 288 289 pcf_lcd: pcf8757@20 { 290 compatible = "ti,pcf8575", "nxp,pcf8575"; 291 reg = <0x20>; 292 gpio-controller; 293 #gpio-cells = <2>; 294 interrupt-controller; 295 #interrupt-cells = <2>; 296 interrupt-parent = <&gpio1>; 297 interrupts = <3 IRQ_TYPE_EDGE_FALLING>; 298 }; 299 300 pcf_gpio_21: pcf8757@21 { 301 compatible = "ti,pcf8575", "nxp,pcf8575"; 302 reg = <0x21>; 303 gpio-controller; 304 #gpio-cells = <2>; 305 interrupt-parent = <&gpio1>; 306 interrupts = <3 IRQ_TYPE_EDGE_FALLING>; 307 interrupt-controller; 308 #interrupt-cells = <2>; 309 }; 310 311 pcf_hdmi: pcf8575@26 { 312 compatible = "ti,pcf8575", "nxp,pcf8575"; 313 reg = <0x26>; 314 gpio-controller; 315 #gpio-cells = <2>; 316 p1 { 317 /* vin6_sel_s0: high: VIN6, low: audio */ 318 gpio-hog; 319 gpios = <1 GPIO_ACTIVE_HIGH>; 320 output-low; 321 line-name = "vin6_sel_s0"; 322 }; 323 }; 324 325 tlv320aic3106: tlv320aic3106@19 { 326 #sound-dai-cells = <0>; 327 compatible = "ti,tlv320aic3106"; 328 reg = <0x19>; 329 adc-settle-ms = <40>; 330 ai3x-micbias-vg = <1>; /* 2.0V */ 331 status = "okay"; 332 333 /* Regulators */ 334 AVDD-supply = <&vio_3v3>; 335 IOVDD-supply = <&vio_3v3>; 336 DRVDD-supply = <&vio_3v3>; 337 DVDD-supply = <&aic_dvdd>; 338 }; 339}; 340 341&cpu0 { 342 vdd-supply = <&buck10_reg>; 343}; 344 345&mmc1 { 346 status = "okay"; 347 vmmc-supply = <&vio_3v3_sd>; 348 vmmc_aux-supply = <&ldo4_reg>; 349 bus-width = <4>; 350 /* 351 * SDCD signal is not being used here - using the fact that GPIO mode 352 * is always hardwired. 353 */ 354 cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; 355 pinctrl-names = "default"; 356 pinctrl-0 = <&mmc1_pins_default>; 357}; 358 359&mmc2 { 360 status = "okay"; 361 vmmc-supply = <&vio_1v8>; 362 bus-width = <8>; 363 pinctrl-names = "default"; 364 pinctrl-0 = <&mmc2_pins_default>; 365}; 366 367/* No RTC on this device */ 368&rtc { 369 status = "disabled"; 370}; 371 372&mac { 373 status = "okay"; 374 375 dual_emac; 376}; 377 378&cpsw_emac0 { 379 phy_id = <&davinci_mdio>, <2>; 380 phy-mode = "rgmii-id"; 381 dual_emac_res_vlan = <1>; 382}; 383 384&cpsw_emac1 { 385 phy_id = <&davinci_mdio>, <3>; 386 phy-mode = "rgmii-id"; 387 dual_emac_res_vlan = <2>; 388}; 389 390&davinci_mdio { 391 dp83867_0: ethernet-phy@2 { 392 reg = <2>; 393 ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>; 394 ti,tx-internal-delay = <DP83867_RGMIIDCTL_250_PS>; 395 ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_8_B_NIB>; 396 ti,min-output-impedance; 397 ti,dp83867-rxctrl-strap-quirk; 398 }; 399 400 dp83867_1: ethernet-phy@3 { 401 reg = <3>; 402 ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>; 403 ti,tx-internal-delay = <DP83867_RGMIIDCTL_250_PS>; 404 ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_8_B_NIB>; 405 ti,min-output-impedance; 406 ti,dp83867-rxctrl-strap-quirk; 407 }; 408}; 409 410&usb2_phy1 { 411 phy-supply = <&ldo3_reg>; 412}; 413 414&usb2_phy2 { 415 phy-supply = <&ldo3_reg>; 416}; 417 418&qspi { 419 spi-max-frequency = <96000000>; 420 m25p80@0 { 421 spi-max-frequency = <96000000>; 422 }; 423}; 424