1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0-only 2*4882a593Smuzhiyun/* 3*4882a593Smuzhiyun * Copyright (C) 2014-2016 Texas Instruments Incorporated - https://www.ti.com/ 4*4882a593Smuzhiyun */ 5*4882a593Smuzhiyun/dts-v1/; 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun#include "am5728.dtsi" 8*4882a593Smuzhiyun#include "am57xx-commercial-grade.dtsi" 9*4882a593Smuzhiyun#include "dra74x-mmc-iodelay.dtsi" 10*4882a593Smuzhiyun#include "dra74-ipu-dsp-common.dtsi" 11*4882a593Smuzhiyun#include <dt-bindings/gpio/gpio.h> 12*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/irq.h> 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun/ { 15*4882a593Smuzhiyun compatible = "ti,am572x-beagle-x15", "ti,am5728", "ti,dra742", "ti,dra74", "ti,dra7"; 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun aliases { 18*4882a593Smuzhiyun rtc0 = &mcp_rtc; 19*4882a593Smuzhiyun rtc1 = &tps659038_rtc; 20*4882a593Smuzhiyun rtc2 = &rtc; 21*4882a593Smuzhiyun display0 = &hdmi0; 22*4882a593Smuzhiyun }; 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun chosen { 25*4882a593Smuzhiyun stdout-path = &uart3; 26*4882a593Smuzhiyun }; 27*4882a593Smuzhiyun 28*4882a593Smuzhiyun memory@0 { 29*4882a593Smuzhiyun device_type = "memory"; 30*4882a593Smuzhiyun reg = <0x0 0x80000000 0x0 0x80000000>; 31*4882a593Smuzhiyun }; 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun main_12v0: fixedregulator-main_12v0 { 34*4882a593Smuzhiyun /* main supply */ 35*4882a593Smuzhiyun compatible = "regulator-fixed"; 36*4882a593Smuzhiyun regulator-name = "main_12v0"; 37*4882a593Smuzhiyun regulator-min-microvolt = <12000000>; 38*4882a593Smuzhiyun regulator-max-microvolt = <12000000>; 39*4882a593Smuzhiyun regulator-always-on; 40*4882a593Smuzhiyun regulator-boot-on; 41*4882a593Smuzhiyun }; 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun evm_5v0: fixedregulator-evm_5v0 { 44*4882a593Smuzhiyun /* Output of TPS54531D */ 45*4882a593Smuzhiyun compatible = "regulator-fixed"; 46*4882a593Smuzhiyun regulator-name = "evm_5v0"; 47*4882a593Smuzhiyun regulator-min-microvolt = <5000000>; 48*4882a593Smuzhiyun regulator-max-microvolt = <5000000>; 49*4882a593Smuzhiyun vin-supply = <&main_12v0>; 50*4882a593Smuzhiyun regulator-always-on; 51*4882a593Smuzhiyun regulator-boot-on; 52*4882a593Smuzhiyun }; 53*4882a593Smuzhiyun 54*4882a593Smuzhiyun reserved-memory { 55*4882a593Smuzhiyun #address-cells = <2>; 56*4882a593Smuzhiyun #size-cells = <2>; 57*4882a593Smuzhiyun ranges; 58*4882a593Smuzhiyun 59*4882a593Smuzhiyun ipu2_memory_region: ipu2-memory@95800000 { 60*4882a593Smuzhiyun compatible = "shared-dma-pool"; 61*4882a593Smuzhiyun reg = <0x0 0x95800000 0x0 0x3800000>; 62*4882a593Smuzhiyun reusable; 63*4882a593Smuzhiyun status = "okay"; 64*4882a593Smuzhiyun }; 65*4882a593Smuzhiyun 66*4882a593Smuzhiyun dsp1_memory_region: dsp1-memory@99000000 { 67*4882a593Smuzhiyun compatible = "shared-dma-pool"; 68*4882a593Smuzhiyun reg = <0x0 0x99000000 0x0 0x4000000>; 69*4882a593Smuzhiyun reusable; 70*4882a593Smuzhiyun status = "okay"; 71*4882a593Smuzhiyun }; 72*4882a593Smuzhiyun 73*4882a593Smuzhiyun ipu1_memory_region: ipu1-memory@9d000000 { 74*4882a593Smuzhiyun compatible = "shared-dma-pool"; 75*4882a593Smuzhiyun reg = <0x0 0x9d000000 0x0 0x2000000>; 76*4882a593Smuzhiyun reusable; 77*4882a593Smuzhiyun status = "okay"; 78*4882a593Smuzhiyun }; 79*4882a593Smuzhiyun 80*4882a593Smuzhiyun dsp2_memory_region: dsp2-memory@9f000000 { 81*4882a593Smuzhiyun compatible = "shared-dma-pool"; 82*4882a593Smuzhiyun reg = <0x0 0x9f000000 0x0 0x800000>; 83*4882a593Smuzhiyun reusable; 84*4882a593Smuzhiyun status = "okay"; 85*4882a593Smuzhiyun }; 86*4882a593Smuzhiyun }; 87*4882a593Smuzhiyun 88*4882a593Smuzhiyun vdd_3v3: fixedregulator-vdd_3v3 { 89*4882a593Smuzhiyun compatible = "regulator-fixed"; 90*4882a593Smuzhiyun regulator-name = "vdd_3v3"; 91*4882a593Smuzhiyun vin-supply = <®en1>; 92*4882a593Smuzhiyun regulator-min-microvolt = <3300000>; 93*4882a593Smuzhiyun regulator-max-microvolt = <3300000>; 94*4882a593Smuzhiyun }; 95*4882a593Smuzhiyun 96*4882a593Smuzhiyun aic_dvdd: fixedregulator-aic_dvdd { 97*4882a593Smuzhiyun compatible = "regulator-fixed"; 98*4882a593Smuzhiyun regulator-name = "aic_dvdd_fixed"; 99*4882a593Smuzhiyun vin-supply = <&vdd_3v3>; 100*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 101*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 102*4882a593Smuzhiyun }; 103*4882a593Smuzhiyun 104*4882a593Smuzhiyun vtt_fixed: fixedregulator-vtt { 105*4882a593Smuzhiyun /* TPS51200 */ 106*4882a593Smuzhiyun compatible = "regulator-fixed"; 107*4882a593Smuzhiyun regulator-name = "vtt_fixed"; 108*4882a593Smuzhiyun vin-supply = <&smps3_reg>; 109*4882a593Smuzhiyun regulator-min-microvolt = <3300000>; 110*4882a593Smuzhiyun regulator-max-microvolt = <3300000>; 111*4882a593Smuzhiyun regulator-always-on; 112*4882a593Smuzhiyun regulator-boot-on; 113*4882a593Smuzhiyun enable-active-high; 114*4882a593Smuzhiyun gpio = <&gpio7 11 GPIO_ACTIVE_HIGH>; 115*4882a593Smuzhiyun }; 116*4882a593Smuzhiyun 117*4882a593Smuzhiyun leds { 118*4882a593Smuzhiyun compatible = "gpio-leds"; 119*4882a593Smuzhiyun 120*4882a593Smuzhiyun led0 { 121*4882a593Smuzhiyun label = "beagle-x15:usr0"; 122*4882a593Smuzhiyun gpios = <&gpio7 9 GPIO_ACTIVE_HIGH>; 123*4882a593Smuzhiyun linux,default-trigger = "heartbeat"; 124*4882a593Smuzhiyun default-state = "off"; 125*4882a593Smuzhiyun }; 126*4882a593Smuzhiyun 127*4882a593Smuzhiyun led1 { 128*4882a593Smuzhiyun label = "beagle-x15:usr1"; 129*4882a593Smuzhiyun gpios = <&gpio7 8 GPIO_ACTIVE_HIGH>; 130*4882a593Smuzhiyun linux,default-trigger = "cpu0"; 131*4882a593Smuzhiyun default-state = "off"; 132*4882a593Smuzhiyun }; 133*4882a593Smuzhiyun 134*4882a593Smuzhiyun led2 { 135*4882a593Smuzhiyun label = "beagle-x15:usr2"; 136*4882a593Smuzhiyun gpios = <&gpio7 14 GPIO_ACTIVE_HIGH>; 137*4882a593Smuzhiyun linux,default-trigger = "mmc0"; 138*4882a593Smuzhiyun default-state = "off"; 139*4882a593Smuzhiyun }; 140*4882a593Smuzhiyun 141*4882a593Smuzhiyun led3 { 142*4882a593Smuzhiyun label = "beagle-x15:usr3"; 143*4882a593Smuzhiyun gpios = <&gpio7 15 GPIO_ACTIVE_HIGH>; 144*4882a593Smuzhiyun linux,default-trigger = "disk-activity"; 145*4882a593Smuzhiyun default-state = "off"; 146*4882a593Smuzhiyun }; 147*4882a593Smuzhiyun }; 148*4882a593Smuzhiyun 149*4882a593Smuzhiyun gpio_fan: gpio_fan { 150*4882a593Smuzhiyun /* Based on 5v 500mA AFB02505HHB */ 151*4882a593Smuzhiyun compatible = "gpio-fan"; 152*4882a593Smuzhiyun gpios = <&tps659038_gpio 2 GPIO_ACTIVE_HIGH>; 153*4882a593Smuzhiyun gpio-fan,speed-map = <0 0>, 154*4882a593Smuzhiyun <13000 1>; 155*4882a593Smuzhiyun #cooling-cells = <2>; 156*4882a593Smuzhiyun }; 157*4882a593Smuzhiyun 158*4882a593Smuzhiyun hdmi0: connector { 159*4882a593Smuzhiyun compatible = "hdmi-connector"; 160*4882a593Smuzhiyun label = "hdmi"; 161*4882a593Smuzhiyun 162*4882a593Smuzhiyun type = "a"; 163*4882a593Smuzhiyun 164*4882a593Smuzhiyun port { 165*4882a593Smuzhiyun hdmi_connector_in: endpoint { 166*4882a593Smuzhiyun remote-endpoint = <&tpd12s015_out>; 167*4882a593Smuzhiyun }; 168*4882a593Smuzhiyun }; 169*4882a593Smuzhiyun }; 170*4882a593Smuzhiyun 171*4882a593Smuzhiyun tpd12s015: encoder { 172*4882a593Smuzhiyun compatible = "ti,tpd12s015"; 173*4882a593Smuzhiyun 174*4882a593Smuzhiyun ports { 175*4882a593Smuzhiyun #address-cells = <1>; 176*4882a593Smuzhiyun #size-cells = <0>; 177*4882a593Smuzhiyun 178*4882a593Smuzhiyun port@0 { 179*4882a593Smuzhiyun reg = <0>; 180*4882a593Smuzhiyun 181*4882a593Smuzhiyun tpd12s015_in: endpoint { 182*4882a593Smuzhiyun remote-endpoint = <&hdmi_out>; 183*4882a593Smuzhiyun }; 184*4882a593Smuzhiyun }; 185*4882a593Smuzhiyun 186*4882a593Smuzhiyun port@1 { 187*4882a593Smuzhiyun reg = <1>; 188*4882a593Smuzhiyun 189*4882a593Smuzhiyun tpd12s015_out: endpoint { 190*4882a593Smuzhiyun remote-endpoint = <&hdmi_connector_in>; 191*4882a593Smuzhiyun }; 192*4882a593Smuzhiyun }; 193*4882a593Smuzhiyun }; 194*4882a593Smuzhiyun }; 195*4882a593Smuzhiyun 196*4882a593Smuzhiyun sound0: sound0 { 197*4882a593Smuzhiyun compatible = "simple-audio-card"; 198*4882a593Smuzhiyun simple-audio-card,name = "BeagleBoard-X15"; 199*4882a593Smuzhiyun simple-audio-card,widgets = 200*4882a593Smuzhiyun "Line", "Line Out", 201*4882a593Smuzhiyun "Line", "Line In"; 202*4882a593Smuzhiyun simple-audio-card,routing = 203*4882a593Smuzhiyun "Line Out", "LLOUT", 204*4882a593Smuzhiyun "Line Out", "RLOUT", 205*4882a593Smuzhiyun "MIC2L", "Line In", 206*4882a593Smuzhiyun "MIC2R", "Line In"; 207*4882a593Smuzhiyun simple-audio-card,format = "dsp_b"; 208*4882a593Smuzhiyun simple-audio-card,bitclock-master = <&sound0_master>; 209*4882a593Smuzhiyun simple-audio-card,frame-master = <&sound0_master>; 210*4882a593Smuzhiyun simple-audio-card,bitclock-inversion; 211*4882a593Smuzhiyun 212*4882a593Smuzhiyun simple-audio-card,cpu { 213*4882a593Smuzhiyun sound-dai = <&mcasp3>; 214*4882a593Smuzhiyun }; 215*4882a593Smuzhiyun 216*4882a593Smuzhiyun sound0_master: simple-audio-card,codec { 217*4882a593Smuzhiyun sound-dai = <&tlv320aic3104>; 218*4882a593Smuzhiyun clocks = <&clkout2_clk>; 219*4882a593Smuzhiyun }; 220*4882a593Smuzhiyun }; 221*4882a593Smuzhiyun}; 222*4882a593Smuzhiyun 223*4882a593Smuzhiyun&i2c1 { 224*4882a593Smuzhiyun status = "okay"; 225*4882a593Smuzhiyun clock-frequency = <400000>; 226*4882a593Smuzhiyun 227*4882a593Smuzhiyun tps659038: tps659038@58 { 228*4882a593Smuzhiyun compatible = "ti,tps659038"; 229*4882a593Smuzhiyun reg = <0x58>; 230*4882a593Smuzhiyun interrupt-parent = <&gpio1>; 231*4882a593Smuzhiyun interrupts = <0 IRQ_TYPE_LEVEL_LOW>; 232*4882a593Smuzhiyun 233*4882a593Smuzhiyun #interrupt-cells = <2>; 234*4882a593Smuzhiyun interrupt-controller; 235*4882a593Smuzhiyun 236*4882a593Smuzhiyun ti,system-power-controller; 237*4882a593Smuzhiyun ti,palmas-override-powerhold; 238*4882a593Smuzhiyun 239*4882a593Smuzhiyun tps659038_pmic { 240*4882a593Smuzhiyun compatible = "ti,tps659038-pmic"; 241*4882a593Smuzhiyun 242*4882a593Smuzhiyun regulators { 243*4882a593Smuzhiyun smps12_reg: smps12 { 244*4882a593Smuzhiyun /* VDD_MPU */ 245*4882a593Smuzhiyun regulator-name = "smps12"; 246*4882a593Smuzhiyun regulator-min-microvolt = < 850000>; 247*4882a593Smuzhiyun regulator-max-microvolt = <1250000>; 248*4882a593Smuzhiyun regulator-always-on; 249*4882a593Smuzhiyun regulator-boot-on; 250*4882a593Smuzhiyun }; 251*4882a593Smuzhiyun 252*4882a593Smuzhiyun smps3_reg: smps3 { 253*4882a593Smuzhiyun /* VDD_DDR */ 254*4882a593Smuzhiyun regulator-name = "smps3"; 255*4882a593Smuzhiyun regulator-min-microvolt = <1350000>; 256*4882a593Smuzhiyun regulator-max-microvolt = <1350000>; 257*4882a593Smuzhiyun regulator-always-on; 258*4882a593Smuzhiyun regulator-boot-on; 259*4882a593Smuzhiyun }; 260*4882a593Smuzhiyun 261*4882a593Smuzhiyun smps45_reg: smps45 { 262*4882a593Smuzhiyun /* VDD_DSPEVE, VDD_IVA, VDD_GPU */ 263*4882a593Smuzhiyun regulator-name = "smps45"; 264*4882a593Smuzhiyun regulator-min-microvolt = < 850000>; 265*4882a593Smuzhiyun regulator-max-microvolt = <1250000>; 266*4882a593Smuzhiyun regulator-always-on; 267*4882a593Smuzhiyun regulator-boot-on; 268*4882a593Smuzhiyun }; 269*4882a593Smuzhiyun 270*4882a593Smuzhiyun smps6_reg: smps6 { 271*4882a593Smuzhiyun /* VDD_CORE */ 272*4882a593Smuzhiyun regulator-name = "smps6"; 273*4882a593Smuzhiyun regulator-min-microvolt = <850000>; 274*4882a593Smuzhiyun regulator-max-microvolt = <1150000>; 275*4882a593Smuzhiyun regulator-always-on; 276*4882a593Smuzhiyun regulator-boot-on; 277*4882a593Smuzhiyun }; 278*4882a593Smuzhiyun 279*4882a593Smuzhiyun /* SMPS7 unused */ 280*4882a593Smuzhiyun 281*4882a593Smuzhiyun smps8_reg: smps8 { 282*4882a593Smuzhiyun /* VDD_1V8 */ 283*4882a593Smuzhiyun regulator-name = "smps8"; 284*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 285*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 286*4882a593Smuzhiyun regulator-always-on; 287*4882a593Smuzhiyun regulator-boot-on; 288*4882a593Smuzhiyun }; 289*4882a593Smuzhiyun 290*4882a593Smuzhiyun /* SMPS9 unused */ 291*4882a593Smuzhiyun 292*4882a593Smuzhiyun ldo1_reg: ldo1 { 293*4882a593Smuzhiyun /* VDD_SD / VDDSHV8 */ 294*4882a593Smuzhiyun regulator-name = "ldo1"; 295*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 296*4882a593Smuzhiyun regulator-max-microvolt = <3300000>; 297*4882a593Smuzhiyun regulator-boot-on; 298*4882a593Smuzhiyun regulator-always-on; 299*4882a593Smuzhiyun }; 300*4882a593Smuzhiyun 301*4882a593Smuzhiyun ldo2_reg: ldo2 { 302*4882a593Smuzhiyun /* VDD_SHV5 */ 303*4882a593Smuzhiyun regulator-name = "ldo2"; 304*4882a593Smuzhiyun regulator-min-microvolt = <3300000>; 305*4882a593Smuzhiyun regulator-max-microvolt = <3300000>; 306*4882a593Smuzhiyun regulator-always-on; 307*4882a593Smuzhiyun regulator-boot-on; 308*4882a593Smuzhiyun }; 309*4882a593Smuzhiyun 310*4882a593Smuzhiyun ldo3_reg: ldo3 { 311*4882a593Smuzhiyun /* VDDA_1V8_PHYA */ 312*4882a593Smuzhiyun regulator-name = "ldo3"; 313*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 314*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 315*4882a593Smuzhiyun regulator-always-on; 316*4882a593Smuzhiyun regulator-boot-on; 317*4882a593Smuzhiyun }; 318*4882a593Smuzhiyun 319*4882a593Smuzhiyun ldo4_reg: ldo4 { 320*4882a593Smuzhiyun /* VDDA_1V8_PHYB */ 321*4882a593Smuzhiyun regulator-name = "ldo4"; 322*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 323*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 324*4882a593Smuzhiyun regulator-always-on; 325*4882a593Smuzhiyun regulator-boot-on; 326*4882a593Smuzhiyun }; 327*4882a593Smuzhiyun 328*4882a593Smuzhiyun ldo9_reg: ldo9 { 329*4882a593Smuzhiyun /* VDD_RTC */ 330*4882a593Smuzhiyun regulator-name = "ldo9"; 331*4882a593Smuzhiyun regulator-min-microvolt = <1050000>; 332*4882a593Smuzhiyun regulator-max-microvolt = <1050000>; 333*4882a593Smuzhiyun regulator-always-on; 334*4882a593Smuzhiyun regulator-boot-on; 335*4882a593Smuzhiyun }; 336*4882a593Smuzhiyun 337*4882a593Smuzhiyun ldoln_reg: ldoln { 338*4882a593Smuzhiyun /* VDDA_1V8_PLL */ 339*4882a593Smuzhiyun regulator-name = "ldoln"; 340*4882a593Smuzhiyun regulator-min-microvolt = <1800000>; 341*4882a593Smuzhiyun regulator-max-microvolt = <1800000>; 342*4882a593Smuzhiyun regulator-always-on; 343*4882a593Smuzhiyun regulator-boot-on; 344*4882a593Smuzhiyun }; 345*4882a593Smuzhiyun 346*4882a593Smuzhiyun ldousb_reg: ldousb { 347*4882a593Smuzhiyun /* VDDA_3V_USB: VDDA_USBHS33 */ 348*4882a593Smuzhiyun regulator-name = "ldousb"; 349*4882a593Smuzhiyun regulator-min-microvolt = <3300000>; 350*4882a593Smuzhiyun regulator-max-microvolt = <3300000>; 351*4882a593Smuzhiyun regulator-boot-on; 352*4882a593Smuzhiyun }; 353*4882a593Smuzhiyun 354*4882a593Smuzhiyun regen1: regen1 { 355*4882a593Smuzhiyun /* VDD_3V3_ON */ 356*4882a593Smuzhiyun regulator-name = "regen1"; 357*4882a593Smuzhiyun regulator-boot-on; 358*4882a593Smuzhiyun regulator-always-on; 359*4882a593Smuzhiyun }; 360*4882a593Smuzhiyun }; 361*4882a593Smuzhiyun }; 362*4882a593Smuzhiyun 363*4882a593Smuzhiyun tps659038_rtc: tps659038_rtc { 364*4882a593Smuzhiyun compatible = "ti,palmas-rtc"; 365*4882a593Smuzhiyun interrupt-parent = <&tps659038>; 366*4882a593Smuzhiyun interrupts = <8 IRQ_TYPE_EDGE_FALLING>; 367*4882a593Smuzhiyun wakeup-source; 368*4882a593Smuzhiyun }; 369*4882a593Smuzhiyun 370*4882a593Smuzhiyun tps659038_pwr_button: tps659038_pwr_button { 371*4882a593Smuzhiyun compatible = "ti,palmas-pwrbutton"; 372*4882a593Smuzhiyun interrupt-parent = <&tps659038>; 373*4882a593Smuzhiyun interrupts = <1 IRQ_TYPE_EDGE_FALLING>; 374*4882a593Smuzhiyun wakeup-source; 375*4882a593Smuzhiyun ti,palmas-long-press-seconds = <12>; 376*4882a593Smuzhiyun }; 377*4882a593Smuzhiyun 378*4882a593Smuzhiyun tps659038_gpio: tps659038_gpio { 379*4882a593Smuzhiyun compatible = "ti,palmas-gpio"; 380*4882a593Smuzhiyun gpio-controller; 381*4882a593Smuzhiyun #gpio-cells = <2>; 382*4882a593Smuzhiyun }; 383*4882a593Smuzhiyun 384*4882a593Smuzhiyun extcon_usb2: tps659038_usb { 385*4882a593Smuzhiyun compatible = "ti,palmas-usb-vid"; 386*4882a593Smuzhiyun ti,enable-vbus-detection; 387*4882a593Smuzhiyun vbus-gpio = <&gpio4 21 GPIO_ACTIVE_HIGH>; 388*4882a593Smuzhiyun }; 389*4882a593Smuzhiyun 390*4882a593Smuzhiyun }; 391*4882a593Smuzhiyun 392*4882a593Smuzhiyun tmp102: tmp102@48 { 393*4882a593Smuzhiyun compatible = "ti,tmp102"; 394*4882a593Smuzhiyun reg = <0x48>; 395*4882a593Smuzhiyun interrupt-parent = <&gpio7>; 396*4882a593Smuzhiyun interrupts = <16 IRQ_TYPE_LEVEL_LOW>; 397*4882a593Smuzhiyun #thermal-sensor-cells = <1>; 398*4882a593Smuzhiyun }; 399*4882a593Smuzhiyun 400*4882a593Smuzhiyun tlv320aic3104: tlv320aic3104@18 { 401*4882a593Smuzhiyun #sound-dai-cells = <0>; 402*4882a593Smuzhiyun compatible = "ti,tlv320aic3104"; 403*4882a593Smuzhiyun reg = <0x18>; 404*4882a593Smuzhiyun assigned-clocks = <&clkoutmux2_clk_mux>; 405*4882a593Smuzhiyun assigned-clock-parents = <&sys_clk2_dclk_div>; 406*4882a593Smuzhiyun 407*4882a593Smuzhiyun status = "okay"; 408*4882a593Smuzhiyun adc-settle-ms = <40>; 409*4882a593Smuzhiyun 410*4882a593Smuzhiyun AVDD-supply = <&vdd_3v3>; 411*4882a593Smuzhiyun IOVDD-supply = <&vdd_3v3>; 412*4882a593Smuzhiyun DRVDD-supply = <&vdd_3v3>; 413*4882a593Smuzhiyun DVDD-supply = <&aic_dvdd>; 414*4882a593Smuzhiyun }; 415*4882a593Smuzhiyun 416*4882a593Smuzhiyun eeprom: eeprom@50 { 417*4882a593Smuzhiyun compatible = "atmel,24c32"; 418*4882a593Smuzhiyun reg = <0x50>; 419*4882a593Smuzhiyun }; 420*4882a593Smuzhiyun}; 421*4882a593Smuzhiyun 422*4882a593Smuzhiyun&i2c3 { 423*4882a593Smuzhiyun status = "okay"; 424*4882a593Smuzhiyun clock-frequency = <400000>; 425*4882a593Smuzhiyun 426*4882a593Smuzhiyun mcp_rtc: rtc@6f { 427*4882a593Smuzhiyun compatible = "microchip,mcp7941x"; 428*4882a593Smuzhiyun reg = <0x6f>; 429*4882a593Smuzhiyun interrupts-extended = <&crossbar_mpu GIC_SPI 2 IRQ_TYPE_EDGE_RISING>, 430*4882a593Smuzhiyun <&dra7_pmx_core 0x424>; 431*4882a593Smuzhiyun interrupt-names = "irq", "wakeup"; 432*4882a593Smuzhiyun 433*4882a593Smuzhiyun vcc-supply = <&vdd_3v3>; 434*4882a593Smuzhiyun wakeup-source; 435*4882a593Smuzhiyun }; 436*4882a593Smuzhiyun}; 437*4882a593Smuzhiyun 438*4882a593Smuzhiyun&gpio7_target { 439*4882a593Smuzhiyun ti,no-reset-on-init; 440*4882a593Smuzhiyun ti,no-idle-on-init; 441*4882a593Smuzhiyun}; 442*4882a593Smuzhiyun 443*4882a593Smuzhiyun&cpu0 { 444*4882a593Smuzhiyun vdd-supply = <&smps12_reg>; 445*4882a593Smuzhiyun voltage-tolerance = <1>; 446*4882a593Smuzhiyun}; 447*4882a593Smuzhiyun 448*4882a593Smuzhiyun&uart3 { 449*4882a593Smuzhiyun status = "okay"; 450*4882a593Smuzhiyun interrupts-extended = <&crossbar_mpu GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>, 451*4882a593Smuzhiyun <&dra7_pmx_core 0x3f8>; 452*4882a593Smuzhiyun}; 453*4882a593Smuzhiyun 454*4882a593Smuzhiyun&davinci_mdio_sw { 455*4882a593Smuzhiyun phy0: ethernet-phy@1 { 456*4882a593Smuzhiyun reg = <1>; 457*4882a593Smuzhiyun }; 458*4882a593Smuzhiyun 459*4882a593Smuzhiyun phy1: ethernet-phy@2 { 460*4882a593Smuzhiyun reg = <2>; 461*4882a593Smuzhiyun }; 462*4882a593Smuzhiyun}; 463*4882a593Smuzhiyun 464*4882a593Smuzhiyun&mac_sw { 465*4882a593Smuzhiyun status = "okay"; 466*4882a593Smuzhiyun}; 467*4882a593Smuzhiyun 468*4882a593Smuzhiyun&cpsw_port1 { 469*4882a593Smuzhiyun phy-handle = <&phy0>; 470*4882a593Smuzhiyun phy-mode = "rgmii-rxid"; 471*4882a593Smuzhiyun ti,dual-emac-pvid = <1>; 472*4882a593Smuzhiyun}; 473*4882a593Smuzhiyun 474*4882a593Smuzhiyun&cpsw_port2 { 475*4882a593Smuzhiyun phy-handle = <&phy1>; 476*4882a593Smuzhiyun phy-mode = "rgmii-rxid"; 477*4882a593Smuzhiyun ti,dual-emac-pvid = <2>; 478*4882a593Smuzhiyun}; 479*4882a593Smuzhiyun 480*4882a593Smuzhiyun&mmc1 { 481*4882a593Smuzhiyun status = "okay"; 482*4882a593Smuzhiyun 483*4882a593Smuzhiyun pinctrl-names = "default"; 484*4882a593Smuzhiyun pinctrl-0 = <&mmc1_pins_default>; 485*4882a593Smuzhiyun 486*4882a593Smuzhiyun bus-width = <4>; 487*4882a593Smuzhiyun cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; /* gpio 219 */ 488*4882a593Smuzhiyun no-1-8-v; 489*4882a593Smuzhiyun}; 490*4882a593Smuzhiyun 491*4882a593Smuzhiyun&mmc2 { 492*4882a593Smuzhiyun status = "okay"; 493*4882a593Smuzhiyun 494*4882a593Smuzhiyun pinctrl-names = "default"; 495*4882a593Smuzhiyun pinctrl-0 = <&mmc2_pins_default>; 496*4882a593Smuzhiyun 497*4882a593Smuzhiyun vmmc-supply = <&vdd_3v3>; 498*4882a593Smuzhiyun vqmmc-supply = <&vdd_3v3>; 499*4882a593Smuzhiyun bus-width = <8>; 500*4882a593Smuzhiyun non-removable; 501*4882a593Smuzhiyun no-1-8-v; 502*4882a593Smuzhiyun}; 503*4882a593Smuzhiyun 504*4882a593Smuzhiyun&sata { 505*4882a593Smuzhiyun status = "okay"; 506*4882a593Smuzhiyun}; 507*4882a593Smuzhiyun 508*4882a593Smuzhiyun&usb2_phy1 { 509*4882a593Smuzhiyun phy-supply = <&ldousb_reg>; 510*4882a593Smuzhiyun}; 511*4882a593Smuzhiyun 512*4882a593Smuzhiyun&usb2_phy2 { 513*4882a593Smuzhiyun phy-supply = <&ldousb_reg>; 514*4882a593Smuzhiyun}; 515*4882a593Smuzhiyun 516*4882a593Smuzhiyun&usb1 { 517*4882a593Smuzhiyun dr_mode = "host"; 518*4882a593Smuzhiyun}; 519*4882a593Smuzhiyun 520*4882a593Smuzhiyun&omap_dwc3_2 { 521*4882a593Smuzhiyun extcon = <&extcon_usb2>; 522*4882a593Smuzhiyun}; 523*4882a593Smuzhiyun 524*4882a593Smuzhiyun&usb2 { 525*4882a593Smuzhiyun /* 526*4882a593Smuzhiyun * Stand alone usage is peripheral only. 527*4882a593Smuzhiyun * However, with some resistor modifications 528*4882a593Smuzhiyun * this port can be used via expansion connectors 529*4882a593Smuzhiyun * as "host" or "dual-role". If so, provide 530*4882a593Smuzhiyun * the necessary dr_mode override in the expansion 531*4882a593Smuzhiyun * board's DT. 532*4882a593Smuzhiyun */ 533*4882a593Smuzhiyun dr_mode = "peripheral"; 534*4882a593Smuzhiyun}; 535*4882a593Smuzhiyun 536*4882a593Smuzhiyun&cpu_trips { 537*4882a593Smuzhiyun cpu_alert1: cpu_alert1 { 538*4882a593Smuzhiyun temperature = <50000>; /* millicelsius */ 539*4882a593Smuzhiyun hysteresis = <2000>; /* millicelsius */ 540*4882a593Smuzhiyun type = "active"; 541*4882a593Smuzhiyun }; 542*4882a593Smuzhiyun}; 543*4882a593Smuzhiyun 544*4882a593Smuzhiyun&cpu_cooling_maps { 545*4882a593Smuzhiyun map1 { 546*4882a593Smuzhiyun trip = <&cpu_alert1>; 547*4882a593Smuzhiyun cooling-device = <&gpio_fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 548*4882a593Smuzhiyun }; 549*4882a593Smuzhiyun}; 550*4882a593Smuzhiyun 551*4882a593Smuzhiyun&thermal_zones { 552*4882a593Smuzhiyun board_thermal: board_thermal { 553*4882a593Smuzhiyun polling-delay-passive = <1250>; /* milliseconds */ 554*4882a593Smuzhiyun polling-delay = <1500>; /* milliseconds */ 555*4882a593Smuzhiyun 556*4882a593Smuzhiyun /* sensor ID */ 557*4882a593Smuzhiyun thermal-sensors = <&tmp102 0>; 558*4882a593Smuzhiyun 559*4882a593Smuzhiyun board_trips: trips { 560*4882a593Smuzhiyun board_alert0: board_alert { 561*4882a593Smuzhiyun temperature = <40000>; /* millicelsius */ 562*4882a593Smuzhiyun hysteresis = <2000>; /* millicelsius */ 563*4882a593Smuzhiyun type = "active"; 564*4882a593Smuzhiyun }; 565*4882a593Smuzhiyun 566*4882a593Smuzhiyun board_crit: board_crit { 567*4882a593Smuzhiyun temperature = <105000>; /* millicelsius */ 568*4882a593Smuzhiyun hysteresis = <0>; /* millicelsius */ 569*4882a593Smuzhiyun type = "critical"; 570*4882a593Smuzhiyun }; 571*4882a593Smuzhiyun }; 572*4882a593Smuzhiyun 573*4882a593Smuzhiyun board_cooling_maps: cooling-maps { 574*4882a593Smuzhiyun map0 { 575*4882a593Smuzhiyun trip = <&board_alert0>; 576*4882a593Smuzhiyun cooling-device = 577*4882a593Smuzhiyun <&gpio_fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 578*4882a593Smuzhiyun }; 579*4882a593Smuzhiyun }; 580*4882a593Smuzhiyun }; 581*4882a593Smuzhiyun}; 582*4882a593Smuzhiyun 583*4882a593Smuzhiyun&dss { 584*4882a593Smuzhiyun status = "okay"; 585*4882a593Smuzhiyun 586*4882a593Smuzhiyun vdda_video-supply = <&ldoln_reg>; 587*4882a593Smuzhiyun}; 588*4882a593Smuzhiyun 589*4882a593Smuzhiyun&hdmi { 590*4882a593Smuzhiyun status = "okay"; 591*4882a593Smuzhiyun vdda-supply = <&ldo4_reg>; 592*4882a593Smuzhiyun 593*4882a593Smuzhiyun port { 594*4882a593Smuzhiyun hdmi_out: endpoint { 595*4882a593Smuzhiyun remote-endpoint = <&tpd12s015_in>; 596*4882a593Smuzhiyun }; 597*4882a593Smuzhiyun }; 598*4882a593Smuzhiyun}; 599*4882a593Smuzhiyun 600*4882a593Smuzhiyun&pcie1_rc { 601*4882a593Smuzhiyun status = "okay"; 602*4882a593Smuzhiyun gpios = <&gpio2 8 GPIO_ACTIVE_LOW>; 603*4882a593Smuzhiyun}; 604*4882a593Smuzhiyun 605*4882a593Smuzhiyun&mcasp3 { 606*4882a593Smuzhiyun #sound-dai-cells = <0>; 607*4882a593Smuzhiyun assigned-clocks = <&l4per2_clkctrl DRA7_L4PER2_MCASP3_CLKCTRL 24>; 608*4882a593Smuzhiyun assigned-clock-parents = <&sys_clkin2>; 609*4882a593Smuzhiyun status = "okay"; 610*4882a593Smuzhiyun 611*4882a593Smuzhiyun op-mode = <0>; /* MCASP_IIS_MODE */ 612*4882a593Smuzhiyun tdm-slots = <2>; 613*4882a593Smuzhiyun /* 4 serializers */ 614*4882a593Smuzhiyun serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */ 615*4882a593Smuzhiyun 1 2 0 0 616*4882a593Smuzhiyun >; 617*4882a593Smuzhiyun tx-num-evt = <32>; 618*4882a593Smuzhiyun rx-num-evt = <32>; 619*4882a593Smuzhiyun}; 620*4882a593Smuzhiyun 621*4882a593Smuzhiyun&ipu2 { 622*4882a593Smuzhiyun status = "okay"; 623*4882a593Smuzhiyun memory-region = <&ipu2_memory_region>; 624*4882a593Smuzhiyun}; 625*4882a593Smuzhiyun 626*4882a593Smuzhiyun&ipu1 { 627*4882a593Smuzhiyun status = "okay"; 628*4882a593Smuzhiyun memory-region = <&ipu1_memory_region>; 629*4882a593Smuzhiyun}; 630*4882a593Smuzhiyun 631*4882a593Smuzhiyun&dsp1 { 632*4882a593Smuzhiyun status = "okay"; 633*4882a593Smuzhiyun memory-region = <&dsp1_memory_region>; 634*4882a593Smuzhiyun}; 635*4882a593Smuzhiyun 636*4882a593Smuzhiyun&dsp2 { 637*4882a593Smuzhiyun status = "okay"; 638*4882a593Smuzhiyun memory-region = <&dsp2_memory_region>; 639*4882a593Smuzhiyun}; 640