1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0+ 2*4882a593Smuzhiyun/* 3*4882a593Smuzhiyun * dts file for Xilinx ZynqMP ZCU102 RevA 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * (C) Copyright 2015 - 2019, Xilinx, Inc. 6*4882a593Smuzhiyun * 7*4882a593Smuzhiyun * Michal Simek <michal.simek@xilinx.com> 8*4882a593Smuzhiyun */ 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun/dts-v1/; 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun#include "zynqmp.dtsi" 13*4882a593Smuzhiyun#include "zynqmp-clk-ccf.dtsi" 14*4882a593Smuzhiyun#include <dt-bindings/input/input.h> 15*4882a593Smuzhiyun#include <dt-bindings/gpio/gpio.h> 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun/ { 18*4882a593Smuzhiyun model = "ZynqMP ZCU102 RevA"; 19*4882a593Smuzhiyun compatible = "xlnx,zynqmp-zcu102-revA", "xlnx,zynqmp-zcu102", "xlnx,zynqmp"; 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun aliases { 22*4882a593Smuzhiyun ethernet0 = &gem3; 23*4882a593Smuzhiyun i2c0 = &i2c0; 24*4882a593Smuzhiyun i2c1 = &i2c1; 25*4882a593Smuzhiyun mmc0 = &sdhci1; 26*4882a593Smuzhiyun rtc0 = &rtc; 27*4882a593Smuzhiyun serial0 = &uart0; 28*4882a593Smuzhiyun serial1 = &uart1; 29*4882a593Smuzhiyun serial2 = &dcc; 30*4882a593Smuzhiyun }; 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun chosen { 33*4882a593Smuzhiyun bootargs = "earlycon"; 34*4882a593Smuzhiyun stdout-path = "serial0:115200n8"; 35*4882a593Smuzhiyun }; 36*4882a593Smuzhiyun 37*4882a593Smuzhiyun memory@0 { 38*4882a593Smuzhiyun device_type = "memory"; 39*4882a593Smuzhiyun reg = <0x0 0x0 0x0 0x80000000>, <0x8 0x00000000 0x0 0x80000000>; 40*4882a593Smuzhiyun }; 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun gpio-keys { 43*4882a593Smuzhiyun compatible = "gpio-keys"; 44*4882a593Smuzhiyun autorepeat; 45*4882a593Smuzhiyun sw19 { 46*4882a593Smuzhiyun label = "sw19"; 47*4882a593Smuzhiyun gpios = <&gpio 22 GPIO_ACTIVE_HIGH>; 48*4882a593Smuzhiyun linux,code = <KEY_DOWN>; 49*4882a593Smuzhiyun wakeup-source; 50*4882a593Smuzhiyun autorepeat; 51*4882a593Smuzhiyun }; 52*4882a593Smuzhiyun }; 53*4882a593Smuzhiyun 54*4882a593Smuzhiyun leds { 55*4882a593Smuzhiyun compatible = "gpio-leds"; 56*4882a593Smuzhiyun heartbeat-led { 57*4882a593Smuzhiyun label = "heartbeat"; 58*4882a593Smuzhiyun gpios = <&gpio 23 GPIO_ACTIVE_HIGH>; 59*4882a593Smuzhiyun linux,default-trigger = "heartbeat"; 60*4882a593Smuzhiyun }; 61*4882a593Smuzhiyun }; 62*4882a593Smuzhiyun 63*4882a593Smuzhiyun ina226-u76 { 64*4882a593Smuzhiyun compatible = "iio-hwmon"; 65*4882a593Smuzhiyun io-channels = <&u76 0>, <&u76 1>, <&u76 2>, <&u76 3>; 66*4882a593Smuzhiyun }; 67*4882a593Smuzhiyun ina226-u77 { 68*4882a593Smuzhiyun compatible = "iio-hwmon"; 69*4882a593Smuzhiyun io-channels = <&u77 0>, <&u77 1>, <&u77 2>, <&u77 3>; 70*4882a593Smuzhiyun }; 71*4882a593Smuzhiyun ina226-u78 { 72*4882a593Smuzhiyun compatible = "iio-hwmon"; 73*4882a593Smuzhiyun io-channels = <&u78 0>, <&u78 1>, <&u78 2>, <&u78 3>; 74*4882a593Smuzhiyun }; 75*4882a593Smuzhiyun ina226-u87 { 76*4882a593Smuzhiyun compatible = "iio-hwmon"; 77*4882a593Smuzhiyun io-channels = <&u87 0>, <&u87 1>, <&u87 2>, <&u87 3>; 78*4882a593Smuzhiyun }; 79*4882a593Smuzhiyun ina226-u85 { 80*4882a593Smuzhiyun compatible = "iio-hwmon"; 81*4882a593Smuzhiyun io-channels = <&u85 0>, <&u85 1>, <&u85 2>, <&u85 3>; 82*4882a593Smuzhiyun }; 83*4882a593Smuzhiyun ina226-u86 { 84*4882a593Smuzhiyun compatible = "iio-hwmon"; 85*4882a593Smuzhiyun io-channels = <&u86 0>, <&u86 1>, <&u86 2>, <&u86 3>; 86*4882a593Smuzhiyun }; 87*4882a593Smuzhiyun ina226-u93 { 88*4882a593Smuzhiyun compatible = "iio-hwmon"; 89*4882a593Smuzhiyun io-channels = <&u93 0>, <&u93 1>, <&u93 2>, <&u93 3>; 90*4882a593Smuzhiyun }; 91*4882a593Smuzhiyun ina226-u88 { 92*4882a593Smuzhiyun compatible = "iio-hwmon"; 93*4882a593Smuzhiyun io-channels = <&u88 0>, <&u88 1>, <&u88 2>, <&u88 3>; 94*4882a593Smuzhiyun }; 95*4882a593Smuzhiyun ina226-u15 { 96*4882a593Smuzhiyun compatible = "iio-hwmon"; 97*4882a593Smuzhiyun io-channels = <&u15 0>, <&u15 1>, <&u15 2>, <&u15 3>; 98*4882a593Smuzhiyun }; 99*4882a593Smuzhiyun ina226-u92 { 100*4882a593Smuzhiyun compatible = "iio-hwmon"; 101*4882a593Smuzhiyun io-channels = <&u92 0>, <&u92 1>, <&u92 2>, <&u92 3>; 102*4882a593Smuzhiyun }; 103*4882a593Smuzhiyun ina226-u79 { 104*4882a593Smuzhiyun compatible = "iio-hwmon"; 105*4882a593Smuzhiyun io-channels = <&u79 0>, <&u79 1>, <&u79 2>, <&u79 3>; 106*4882a593Smuzhiyun }; 107*4882a593Smuzhiyun ina226-u81 { 108*4882a593Smuzhiyun compatible = "iio-hwmon"; 109*4882a593Smuzhiyun io-channels = <&u81 0>, <&u81 1>, <&u81 2>, <&u81 3>; 110*4882a593Smuzhiyun }; 111*4882a593Smuzhiyun ina226-u80 { 112*4882a593Smuzhiyun compatible = "iio-hwmon"; 113*4882a593Smuzhiyun io-channels = <&u80 0>, <&u80 1>, <&u80 2>, <&u80 3>; 114*4882a593Smuzhiyun }; 115*4882a593Smuzhiyun ina226-u84 { 116*4882a593Smuzhiyun compatible = "iio-hwmon"; 117*4882a593Smuzhiyun io-channels = <&u84 0>, <&u84 1>, <&u84 2>, <&u84 3>; 118*4882a593Smuzhiyun }; 119*4882a593Smuzhiyun ina226-u16 { 120*4882a593Smuzhiyun compatible = "iio-hwmon"; 121*4882a593Smuzhiyun io-channels = <&u16 0>, <&u16 1>, <&u16 2>, <&u16 3>; 122*4882a593Smuzhiyun }; 123*4882a593Smuzhiyun ina226-u65 { 124*4882a593Smuzhiyun compatible = "iio-hwmon"; 125*4882a593Smuzhiyun io-channels = <&u65 0>, <&u65 1>, <&u65 2>, <&u65 3>; 126*4882a593Smuzhiyun }; 127*4882a593Smuzhiyun ina226-u74 { 128*4882a593Smuzhiyun compatible = "iio-hwmon"; 129*4882a593Smuzhiyun io-channels = <&u74 0>, <&u74 1>, <&u74 2>, <&u74 3>; 130*4882a593Smuzhiyun }; 131*4882a593Smuzhiyun ina226-u75 { 132*4882a593Smuzhiyun compatible = "iio-hwmon"; 133*4882a593Smuzhiyun io-channels = <&u75 0>, <&u75 1>, <&u75 2>, <&u75 3>; 134*4882a593Smuzhiyun }; 135*4882a593Smuzhiyun}; 136*4882a593Smuzhiyun 137*4882a593Smuzhiyun&can1 { 138*4882a593Smuzhiyun status = "okay"; 139*4882a593Smuzhiyun}; 140*4882a593Smuzhiyun 141*4882a593Smuzhiyun&dcc { 142*4882a593Smuzhiyun status = "okay"; 143*4882a593Smuzhiyun}; 144*4882a593Smuzhiyun 145*4882a593Smuzhiyun&fpd_dma_chan1 { 146*4882a593Smuzhiyun status = "okay"; 147*4882a593Smuzhiyun}; 148*4882a593Smuzhiyun 149*4882a593Smuzhiyun&fpd_dma_chan2 { 150*4882a593Smuzhiyun status = "okay"; 151*4882a593Smuzhiyun}; 152*4882a593Smuzhiyun 153*4882a593Smuzhiyun&fpd_dma_chan3 { 154*4882a593Smuzhiyun status = "okay"; 155*4882a593Smuzhiyun}; 156*4882a593Smuzhiyun 157*4882a593Smuzhiyun&fpd_dma_chan4 { 158*4882a593Smuzhiyun status = "okay"; 159*4882a593Smuzhiyun}; 160*4882a593Smuzhiyun 161*4882a593Smuzhiyun&fpd_dma_chan5 { 162*4882a593Smuzhiyun status = "okay"; 163*4882a593Smuzhiyun}; 164*4882a593Smuzhiyun 165*4882a593Smuzhiyun&fpd_dma_chan6 { 166*4882a593Smuzhiyun status = "okay"; 167*4882a593Smuzhiyun}; 168*4882a593Smuzhiyun 169*4882a593Smuzhiyun&fpd_dma_chan7 { 170*4882a593Smuzhiyun status = "okay"; 171*4882a593Smuzhiyun}; 172*4882a593Smuzhiyun 173*4882a593Smuzhiyun&fpd_dma_chan8 { 174*4882a593Smuzhiyun status = "okay"; 175*4882a593Smuzhiyun}; 176*4882a593Smuzhiyun 177*4882a593Smuzhiyun&gem3 { 178*4882a593Smuzhiyun status = "okay"; 179*4882a593Smuzhiyun phy-handle = <&phy0>; 180*4882a593Smuzhiyun phy-mode = "rgmii-id"; 181*4882a593Smuzhiyun phy0: ethernet-phy@21 { 182*4882a593Smuzhiyun reg = <21>; 183*4882a593Smuzhiyun ti,rx-internal-delay = <0x8>; 184*4882a593Smuzhiyun ti,tx-internal-delay = <0xa>; 185*4882a593Smuzhiyun ti,fifo-depth = <0x1>; 186*4882a593Smuzhiyun ti,dp83867-rxctrl-strap-quirk; 187*4882a593Smuzhiyun }; 188*4882a593Smuzhiyun}; 189*4882a593Smuzhiyun 190*4882a593Smuzhiyun&gpio { 191*4882a593Smuzhiyun status = "okay"; 192*4882a593Smuzhiyun}; 193*4882a593Smuzhiyun 194*4882a593Smuzhiyun&i2c0 { 195*4882a593Smuzhiyun status = "okay"; 196*4882a593Smuzhiyun clock-frequency = <400000>; 197*4882a593Smuzhiyun 198*4882a593Smuzhiyun tca6416_u97: gpio@20 { 199*4882a593Smuzhiyun compatible = "ti,tca6416"; 200*4882a593Smuzhiyun reg = <0x20>; 201*4882a593Smuzhiyun gpio-controller; /* IRQ not connected */ 202*4882a593Smuzhiyun #gpio-cells = <2>; 203*4882a593Smuzhiyun gpio-line-names = "PS_GTR_LAN_SEL0", "PS_GTR_LAN_SEL1", "PS_GTR_LAN_SEL2", "PS_GTR_LAN_SEL3", 204*4882a593Smuzhiyun "PCI_CLK_DIR_SEL", "IIC_MUX_RESET_B", "GEM3_EXP_RESET_B", 205*4882a593Smuzhiyun "", "", "", "", "", "", "", "", ""; 206*4882a593Smuzhiyun gtr-sel0-hog { 207*4882a593Smuzhiyun gpio-hog; 208*4882a593Smuzhiyun gpios = <0 0>; 209*4882a593Smuzhiyun output-low; /* PCIE = 0, DP = 1 */ 210*4882a593Smuzhiyun line-name = "sel0"; 211*4882a593Smuzhiyun }; 212*4882a593Smuzhiyun gtr-sel1-hog { 213*4882a593Smuzhiyun gpio-hog; 214*4882a593Smuzhiyun gpios = <1 0>; 215*4882a593Smuzhiyun output-high; /* PCIE = 0, DP = 1 */ 216*4882a593Smuzhiyun line-name = "sel1"; 217*4882a593Smuzhiyun }; 218*4882a593Smuzhiyun gtr-sel2-hog { 219*4882a593Smuzhiyun gpio-hog; 220*4882a593Smuzhiyun gpios = <2 0>; 221*4882a593Smuzhiyun output-high; /* PCIE = 0, USB0 = 1 */ 222*4882a593Smuzhiyun line-name = "sel2"; 223*4882a593Smuzhiyun }; 224*4882a593Smuzhiyun gtr-sel3-hog { 225*4882a593Smuzhiyun gpio-hog; 226*4882a593Smuzhiyun gpios = <3 0>; 227*4882a593Smuzhiyun output-high; /* PCIE = 0, SATA = 1 */ 228*4882a593Smuzhiyun line-name = "sel3"; 229*4882a593Smuzhiyun }; 230*4882a593Smuzhiyun }; 231*4882a593Smuzhiyun 232*4882a593Smuzhiyun tca6416_u61: gpio@21 { 233*4882a593Smuzhiyun compatible = "ti,tca6416"; 234*4882a593Smuzhiyun reg = <0x21>; 235*4882a593Smuzhiyun gpio-controller; /* IRQ not connected */ 236*4882a593Smuzhiyun #gpio-cells = <2>; 237*4882a593Smuzhiyun gpio-line-names = "VCCPSPLL_EN", "MGTRAVCC_EN", "MGTRAVTT_EN", "VCCPSDDRPLL_EN", "MIO26_PMU_INPUT_LS", 238*4882a593Smuzhiyun "PL_PMBUS_ALERT", "PS_PMBUS_ALERT", "MAXIM_PMBUS_ALERT", "PL_DDR4_VTERM_EN", 239*4882a593Smuzhiyun "PL_DDR4_VPP_2V5_EN", "PS_DIMM_VDDQ_TO_PSVCCO_ON", "PS_DIMM_SUSPEND_EN", 240*4882a593Smuzhiyun "PS_DDR4_VTERM_EN", "PS_DDR4_VPP_2V5_EN", "", ""; 241*4882a593Smuzhiyun }; 242*4882a593Smuzhiyun 243*4882a593Smuzhiyun i2c-mux@75 { /* u60 */ 244*4882a593Smuzhiyun compatible = "nxp,pca9544"; 245*4882a593Smuzhiyun #address-cells = <1>; 246*4882a593Smuzhiyun #size-cells = <0>; 247*4882a593Smuzhiyun reg = <0x75>; 248*4882a593Smuzhiyun i2c@0 { 249*4882a593Smuzhiyun #address-cells = <1>; 250*4882a593Smuzhiyun #size-cells = <0>; 251*4882a593Smuzhiyun reg = <0>; 252*4882a593Smuzhiyun /* PS_PMBUS */ 253*4882a593Smuzhiyun u76: ina226@40 { /* u76 */ 254*4882a593Smuzhiyun compatible = "ti,ina226"; 255*4882a593Smuzhiyun #io-channel-cells = <1>; 256*4882a593Smuzhiyun label = "ina226-u76"; 257*4882a593Smuzhiyun reg = <0x40>; 258*4882a593Smuzhiyun shunt-resistor = <5000>; 259*4882a593Smuzhiyun }; 260*4882a593Smuzhiyun u77: ina226@41 { /* u77 */ 261*4882a593Smuzhiyun compatible = "ti,ina226"; 262*4882a593Smuzhiyun #io-channel-cells = <1>; 263*4882a593Smuzhiyun label = "ina226-u77"; 264*4882a593Smuzhiyun reg = <0x41>; 265*4882a593Smuzhiyun shunt-resistor = <5000>; 266*4882a593Smuzhiyun }; 267*4882a593Smuzhiyun u78: ina226@42 { /* u78 */ 268*4882a593Smuzhiyun compatible = "ti,ina226"; 269*4882a593Smuzhiyun #io-channel-cells = <1>; 270*4882a593Smuzhiyun label = "ina226-u78"; 271*4882a593Smuzhiyun reg = <0x42>; 272*4882a593Smuzhiyun shunt-resistor = <5000>; 273*4882a593Smuzhiyun }; 274*4882a593Smuzhiyun u87: ina226@43 { /* u87 */ 275*4882a593Smuzhiyun compatible = "ti,ina226"; 276*4882a593Smuzhiyun #io-channel-cells = <1>; 277*4882a593Smuzhiyun label = "ina226-u87"; 278*4882a593Smuzhiyun reg = <0x43>; 279*4882a593Smuzhiyun shunt-resistor = <5000>; 280*4882a593Smuzhiyun }; 281*4882a593Smuzhiyun u85: ina226@44 { /* u85 */ 282*4882a593Smuzhiyun compatible = "ti,ina226"; 283*4882a593Smuzhiyun #io-channel-cells = <1>; 284*4882a593Smuzhiyun label = "ina226-u85"; 285*4882a593Smuzhiyun reg = <0x44>; 286*4882a593Smuzhiyun shunt-resistor = <5000>; 287*4882a593Smuzhiyun }; 288*4882a593Smuzhiyun u86: ina226@45 { /* u86 */ 289*4882a593Smuzhiyun compatible = "ti,ina226"; 290*4882a593Smuzhiyun #io-channel-cells = <1>; 291*4882a593Smuzhiyun label = "ina226-u86"; 292*4882a593Smuzhiyun reg = <0x45>; 293*4882a593Smuzhiyun shunt-resistor = <5000>; 294*4882a593Smuzhiyun }; 295*4882a593Smuzhiyun u93: ina226@46 { /* u93 */ 296*4882a593Smuzhiyun compatible = "ti,ina226"; 297*4882a593Smuzhiyun #io-channel-cells = <1>; 298*4882a593Smuzhiyun label = "ina226-u93"; 299*4882a593Smuzhiyun reg = <0x46>; 300*4882a593Smuzhiyun shunt-resistor = <5000>; 301*4882a593Smuzhiyun }; 302*4882a593Smuzhiyun u88: ina226@47 { /* u88 */ 303*4882a593Smuzhiyun compatible = "ti,ina226"; 304*4882a593Smuzhiyun #io-channel-cells = <1>; 305*4882a593Smuzhiyun label = "ina226-u88"; 306*4882a593Smuzhiyun reg = <0x47>; 307*4882a593Smuzhiyun shunt-resistor = <5000>; 308*4882a593Smuzhiyun }; 309*4882a593Smuzhiyun u15: ina226@4a { /* u15 */ 310*4882a593Smuzhiyun compatible = "ti,ina226"; 311*4882a593Smuzhiyun #io-channel-cells = <1>; 312*4882a593Smuzhiyun label = "ina226-u15"; 313*4882a593Smuzhiyun reg = <0x4a>; 314*4882a593Smuzhiyun shunt-resistor = <5000>; 315*4882a593Smuzhiyun }; 316*4882a593Smuzhiyun u92: ina226@4b { /* u92 */ 317*4882a593Smuzhiyun compatible = "ti,ina226"; 318*4882a593Smuzhiyun #io-channel-cells = <1>; 319*4882a593Smuzhiyun label = "ina226-u92"; 320*4882a593Smuzhiyun reg = <0x4b>; 321*4882a593Smuzhiyun shunt-resistor = <5000>; 322*4882a593Smuzhiyun }; 323*4882a593Smuzhiyun }; 324*4882a593Smuzhiyun i2c@1 { 325*4882a593Smuzhiyun #address-cells = <1>; 326*4882a593Smuzhiyun #size-cells = <0>; 327*4882a593Smuzhiyun reg = <1>; 328*4882a593Smuzhiyun /* PL_PMBUS */ 329*4882a593Smuzhiyun u79: ina226@40 { /* u79 */ 330*4882a593Smuzhiyun compatible = "ti,ina226"; 331*4882a593Smuzhiyun #io-channel-cells = <1>; 332*4882a593Smuzhiyun label = "ina226-u79"; 333*4882a593Smuzhiyun reg = <0x40>; 334*4882a593Smuzhiyun shunt-resistor = <2000>; 335*4882a593Smuzhiyun }; 336*4882a593Smuzhiyun u81: ina226@41 { /* u81 */ 337*4882a593Smuzhiyun compatible = "ti,ina226"; 338*4882a593Smuzhiyun #io-channel-cells = <1>; 339*4882a593Smuzhiyun label = "ina226-u81"; 340*4882a593Smuzhiyun reg = <0x41>; 341*4882a593Smuzhiyun shunt-resistor = <5000>; 342*4882a593Smuzhiyun }; 343*4882a593Smuzhiyun u80: ina226@42 { /* u80 */ 344*4882a593Smuzhiyun compatible = "ti,ina226"; 345*4882a593Smuzhiyun #io-channel-cells = <1>; 346*4882a593Smuzhiyun label = "ina226-u80"; 347*4882a593Smuzhiyun reg = <0x42>; 348*4882a593Smuzhiyun shunt-resistor = <5000>; 349*4882a593Smuzhiyun }; 350*4882a593Smuzhiyun u84: ina226@43 { /* u84 */ 351*4882a593Smuzhiyun compatible = "ti,ina226"; 352*4882a593Smuzhiyun #io-channel-cells = <1>; 353*4882a593Smuzhiyun label = "ina226-u84"; 354*4882a593Smuzhiyun reg = <0x43>; 355*4882a593Smuzhiyun shunt-resistor = <5000>; 356*4882a593Smuzhiyun }; 357*4882a593Smuzhiyun u16: ina226@44 { /* u16 */ 358*4882a593Smuzhiyun compatible = "ti,ina226"; 359*4882a593Smuzhiyun #io-channel-cells = <1>; 360*4882a593Smuzhiyun label = "ina226-u16"; 361*4882a593Smuzhiyun reg = <0x44>; 362*4882a593Smuzhiyun shunt-resistor = <5000>; 363*4882a593Smuzhiyun }; 364*4882a593Smuzhiyun u65: ina226@45 { /* u65 */ 365*4882a593Smuzhiyun compatible = "ti,ina226"; 366*4882a593Smuzhiyun #io-channel-cells = <1>; 367*4882a593Smuzhiyun label = "ina226-u65"; 368*4882a593Smuzhiyun reg = <0x45>; 369*4882a593Smuzhiyun shunt-resistor = <5000>; 370*4882a593Smuzhiyun }; 371*4882a593Smuzhiyun u74: ina226@46 { /* u74 */ 372*4882a593Smuzhiyun compatible = "ti,ina226"; 373*4882a593Smuzhiyun #io-channel-cells = <1>; 374*4882a593Smuzhiyun label = "ina226-u74"; 375*4882a593Smuzhiyun reg = <0x46>; 376*4882a593Smuzhiyun shunt-resistor = <5000>; 377*4882a593Smuzhiyun }; 378*4882a593Smuzhiyun u75: ina226@47 { /* u75 */ 379*4882a593Smuzhiyun compatible = "ti,ina226"; 380*4882a593Smuzhiyun #io-channel-cells = <1>; 381*4882a593Smuzhiyun label = "ina226-u75"; 382*4882a593Smuzhiyun reg = <0x47>; 383*4882a593Smuzhiyun shunt-resistor = <5000>; 384*4882a593Smuzhiyun }; 385*4882a593Smuzhiyun }; 386*4882a593Smuzhiyun i2c@2 { 387*4882a593Smuzhiyun #address-cells = <1>; 388*4882a593Smuzhiyun #size-cells = <0>; 389*4882a593Smuzhiyun reg = <2>; 390*4882a593Smuzhiyun /* MAXIM_PMBUS - 00 */ 391*4882a593Smuzhiyun max15301@a { /* u46 */ 392*4882a593Smuzhiyun compatible = "maxim,max15301"; 393*4882a593Smuzhiyun reg = <0xa>; 394*4882a593Smuzhiyun }; 395*4882a593Smuzhiyun max15303@b { /* u4 */ 396*4882a593Smuzhiyun compatible = "maxim,max15303"; 397*4882a593Smuzhiyun reg = <0xb>; 398*4882a593Smuzhiyun }; 399*4882a593Smuzhiyun max15303@10 { /* u13 */ 400*4882a593Smuzhiyun compatible = "maxim,max15303"; 401*4882a593Smuzhiyun reg = <0x10>; 402*4882a593Smuzhiyun }; 403*4882a593Smuzhiyun max15301@13 { /* u47 */ 404*4882a593Smuzhiyun compatible = "maxim,max15301"; 405*4882a593Smuzhiyun reg = <0x13>; 406*4882a593Smuzhiyun }; 407*4882a593Smuzhiyun max15303@14 { /* u7 */ 408*4882a593Smuzhiyun compatible = "maxim,max15303"; 409*4882a593Smuzhiyun reg = <0x14>; 410*4882a593Smuzhiyun }; 411*4882a593Smuzhiyun max15303@15 { /* u6 */ 412*4882a593Smuzhiyun compatible = "maxim,max15303"; 413*4882a593Smuzhiyun reg = <0x15>; 414*4882a593Smuzhiyun }; 415*4882a593Smuzhiyun max15303@16 { /* u10 */ 416*4882a593Smuzhiyun compatible = "maxim,max15303"; 417*4882a593Smuzhiyun reg = <0x16>; 418*4882a593Smuzhiyun }; 419*4882a593Smuzhiyun max15303@17 { /* u9 */ 420*4882a593Smuzhiyun compatible = "maxim,max15303"; 421*4882a593Smuzhiyun reg = <0x17>; 422*4882a593Smuzhiyun }; 423*4882a593Smuzhiyun max15301@18 { /* u63 */ 424*4882a593Smuzhiyun compatible = "maxim,max15301"; 425*4882a593Smuzhiyun reg = <0x18>; 426*4882a593Smuzhiyun }; 427*4882a593Smuzhiyun max15303@1a { /* u49 */ 428*4882a593Smuzhiyun compatible = "maxim,max15303"; 429*4882a593Smuzhiyun reg = <0x1a>; 430*4882a593Smuzhiyun }; 431*4882a593Smuzhiyun max15303@1d { /* u18 */ 432*4882a593Smuzhiyun compatible = "maxim,max15303"; 433*4882a593Smuzhiyun reg = <0x1d>; 434*4882a593Smuzhiyun }; 435*4882a593Smuzhiyun max15303@20 { /* u8 */ 436*4882a593Smuzhiyun compatible = "maxim,max15303"; 437*4882a593Smuzhiyun status = "disabled"; /* unreachable */ 438*4882a593Smuzhiyun reg = <0x20>; 439*4882a593Smuzhiyun }; 440*4882a593Smuzhiyun 441*4882a593Smuzhiyun max20751@72 { /* u95 */ 442*4882a593Smuzhiyun compatible = "maxim,max20751"; 443*4882a593Smuzhiyun reg = <0x72>; 444*4882a593Smuzhiyun }; 445*4882a593Smuzhiyun max20751@73 { /* u96 */ 446*4882a593Smuzhiyun compatible = "maxim,max20751"; 447*4882a593Smuzhiyun reg = <0x73>; 448*4882a593Smuzhiyun }; 449*4882a593Smuzhiyun }; 450*4882a593Smuzhiyun /* Bus 3 is not connected */ 451*4882a593Smuzhiyun }; 452*4882a593Smuzhiyun}; 453*4882a593Smuzhiyun 454*4882a593Smuzhiyun&i2c1 { 455*4882a593Smuzhiyun status = "okay"; 456*4882a593Smuzhiyun clock-frequency = <400000>; 457*4882a593Smuzhiyun 458*4882a593Smuzhiyun /* PL i2c via PCA9306 - u45 */ 459*4882a593Smuzhiyun i2c-mux@74 { /* u34 */ 460*4882a593Smuzhiyun compatible = "nxp,pca9548"; 461*4882a593Smuzhiyun #address-cells = <1>; 462*4882a593Smuzhiyun #size-cells = <0>; 463*4882a593Smuzhiyun reg = <0x74>; 464*4882a593Smuzhiyun i2c@0 { 465*4882a593Smuzhiyun #address-cells = <1>; 466*4882a593Smuzhiyun #size-cells = <0>; 467*4882a593Smuzhiyun reg = <0>; 468*4882a593Smuzhiyun /* 469*4882a593Smuzhiyun * IIC_EEPROM 1kB memory which uses 256B blocks 470*4882a593Smuzhiyun * where every block has different address. 471*4882a593Smuzhiyun * 0 - 256B address 0x54 472*4882a593Smuzhiyun * 256B - 512B address 0x55 473*4882a593Smuzhiyun * 512B - 768B address 0x56 474*4882a593Smuzhiyun * 768B - 1024B address 0x57 475*4882a593Smuzhiyun */ 476*4882a593Smuzhiyun eeprom: eeprom@54 { /* u23 */ 477*4882a593Smuzhiyun compatible = "atmel,24c08"; 478*4882a593Smuzhiyun reg = <0x54>; 479*4882a593Smuzhiyun }; 480*4882a593Smuzhiyun }; 481*4882a593Smuzhiyun i2c@1 { 482*4882a593Smuzhiyun #address-cells = <1>; 483*4882a593Smuzhiyun #size-cells = <0>; 484*4882a593Smuzhiyun reg = <1>; 485*4882a593Smuzhiyun si5341: clock-generator@36 { /* SI5341 - u69 */ 486*4882a593Smuzhiyun reg = <0x36>; 487*4882a593Smuzhiyun }; 488*4882a593Smuzhiyun 489*4882a593Smuzhiyun }; 490*4882a593Smuzhiyun i2c@2 { 491*4882a593Smuzhiyun #address-cells = <1>; 492*4882a593Smuzhiyun #size-cells = <0>; 493*4882a593Smuzhiyun reg = <2>; 494*4882a593Smuzhiyun si570_1: clock-generator@5d { /* USER SI570 - u42 */ 495*4882a593Smuzhiyun #clock-cells = <0>; 496*4882a593Smuzhiyun compatible = "silabs,si570"; 497*4882a593Smuzhiyun reg = <0x5d>; 498*4882a593Smuzhiyun temperature-stability = <50>; 499*4882a593Smuzhiyun factory-fout = <300000000>; 500*4882a593Smuzhiyun clock-frequency = <300000000>; 501*4882a593Smuzhiyun clock-output-names = "si570_user"; 502*4882a593Smuzhiyun }; 503*4882a593Smuzhiyun }; 504*4882a593Smuzhiyun i2c@3 { 505*4882a593Smuzhiyun #address-cells = <1>; 506*4882a593Smuzhiyun #size-cells = <0>; 507*4882a593Smuzhiyun reg = <3>; 508*4882a593Smuzhiyun si570_2: clock-generator@5d { /* USER MGT SI570 - u56 */ 509*4882a593Smuzhiyun #clock-cells = <0>; 510*4882a593Smuzhiyun compatible = "silabs,si570"; 511*4882a593Smuzhiyun reg = <0x5d>; 512*4882a593Smuzhiyun temperature-stability = <50>; /* copy from zc702 */ 513*4882a593Smuzhiyun factory-fout = <156250000>; 514*4882a593Smuzhiyun clock-frequency = <148500000>; 515*4882a593Smuzhiyun clock-output-names = "si570_mgt"; 516*4882a593Smuzhiyun }; 517*4882a593Smuzhiyun }; 518*4882a593Smuzhiyun i2c@4 { 519*4882a593Smuzhiyun #address-cells = <1>; 520*4882a593Smuzhiyun #size-cells = <0>; 521*4882a593Smuzhiyun reg = <4>; 522*4882a593Smuzhiyun si5328: clock-generator@69 {/* SI5328 - u20 */ 523*4882a593Smuzhiyun reg = <0x69>; 524*4882a593Smuzhiyun /* 525*4882a593Smuzhiyun * Chip has interrupt present connected to PL 526*4882a593Smuzhiyun * interrupt-parent = <&>; 527*4882a593Smuzhiyun * interrupts = <>; 528*4882a593Smuzhiyun */ 529*4882a593Smuzhiyun }; 530*4882a593Smuzhiyun }; 531*4882a593Smuzhiyun /* 5 - 7 unconnected */ 532*4882a593Smuzhiyun }; 533*4882a593Smuzhiyun 534*4882a593Smuzhiyun i2c-mux@75 { 535*4882a593Smuzhiyun compatible = "nxp,pca9548"; /* u135 */ 536*4882a593Smuzhiyun #address-cells = <1>; 537*4882a593Smuzhiyun #size-cells = <0>; 538*4882a593Smuzhiyun reg = <0x75>; 539*4882a593Smuzhiyun 540*4882a593Smuzhiyun i2c@0 { 541*4882a593Smuzhiyun #address-cells = <1>; 542*4882a593Smuzhiyun #size-cells = <0>; 543*4882a593Smuzhiyun reg = <0>; 544*4882a593Smuzhiyun /* HPC0_IIC */ 545*4882a593Smuzhiyun }; 546*4882a593Smuzhiyun i2c@1 { 547*4882a593Smuzhiyun #address-cells = <1>; 548*4882a593Smuzhiyun #size-cells = <0>; 549*4882a593Smuzhiyun reg = <1>; 550*4882a593Smuzhiyun /* HPC1_IIC */ 551*4882a593Smuzhiyun }; 552*4882a593Smuzhiyun i2c@2 { 553*4882a593Smuzhiyun #address-cells = <1>; 554*4882a593Smuzhiyun #size-cells = <0>; 555*4882a593Smuzhiyun reg = <2>; 556*4882a593Smuzhiyun /* SYSMON */ 557*4882a593Smuzhiyun }; 558*4882a593Smuzhiyun i2c@3 { 559*4882a593Smuzhiyun #address-cells = <1>; 560*4882a593Smuzhiyun #size-cells = <0>; 561*4882a593Smuzhiyun reg = <3>; 562*4882a593Smuzhiyun /* DDR4 SODIMM */ 563*4882a593Smuzhiyun }; 564*4882a593Smuzhiyun i2c@4 { 565*4882a593Smuzhiyun #address-cells = <1>; 566*4882a593Smuzhiyun #size-cells = <0>; 567*4882a593Smuzhiyun reg = <4>; 568*4882a593Smuzhiyun /* SEP 3 */ 569*4882a593Smuzhiyun }; 570*4882a593Smuzhiyun i2c@5 { 571*4882a593Smuzhiyun #address-cells = <1>; 572*4882a593Smuzhiyun #size-cells = <0>; 573*4882a593Smuzhiyun reg = <5>; 574*4882a593Smuzhiyun /* SEP 2 */ 575*4882a593Smuzhiyun }; 576*4882a593Smuzhiyun i2c@6 { 577*4882a593Smuzhiyun #address-cells = <1>; 578*4882a593Smuzhiyun #size-cells = <0>; 579*4882a593Smuzhiyun reg = <6>; 580*4882a593Smuzhiyun /* SEP 1 */ 581*4882a593Smuzhiyun }; 582*4882a593Smuzhiyun i2c@7 { 583*4882a593Smuzhiyun #address-cells = <1>; 584*4882a593Smuzhiyun #size-cells = <0>; 585*4882a593Smuzhiyun reg = <7>; 586*4882a593Smuzhiyun /* SEP 0 */ 587*4882a593Smuzhiyun }; 588*4882a593Smuzhiyun }; 589*4882a593Smuzhiyun}; 590*4882a593Smuzhiyun 591*4882a593Smuzhiyun&pcie { 592*4882a593Smuzhiyun status = "okay"; 593*4882a593Smuzhiyun}; 594*4882a593Smuzhiyun 595*4882a593Smuzhiyun&rtc { 596*4882a593Smuzhiyun status = "okay"; 597*4882a593Smuzhiyun}; 598*4882a593Smuzhiyun 599*4882a593Smuzhiyun&sata { 600*4882a593Smuzhiyun status = "okay"; 601*4882a593Smuzhiyun /* SATA OOB timing settings */ 602*4882a593Smuzhiyun ceva,p0-cominit-params = /bits/ 8 <0x18 0x40 0x18 0x28>; 603*4882a593Smuzhiyun ceva,p0-comwake-params = /bits/ 8 <0x06 0x14 0x08 0x0E>; 604*4882a593Smuzhiyun ceva,p0-burst-params = /bits/ 8 <0x13 0x08 0x4A 0x06>; 605*4882a593Smuzhiyun ceva,p0-retry-params = /bits/ 16 <0x96A4 0x3FFC>; 606*4882a593Smuzhiyun ceva,p1-cominit-params = /bits/ 8 <0x18 0x40 0x18 0x28>; 607*4882a593Smuzhiyun ceva,p1-comwake-params = /bits/ 8 <0x06 0x14 0x08 0x0E>; 608*4882a593Smuzhiyun ceva,p1-burst-params = /bits/ 8 <0x13 0x08 0x4A 0x06>; 609*4882a593Smuzhiyun ceva,p1-retry-params = /bits/ 16 <0x96A4 0x3FFC>; 610*4882a593Smuzhiyun}; 611*4882a593Smuzhiyun 612*4882a593Smuzhiyun/* SD1 with level shifter */ 613*4882a593Smuzhiyun&sdhci1 { 614*4882a593Smuzhiyun status = "okay"; 615*4882a593Smuzhiyun no-1-8-v; 616*4882a593Smuzhiyun}; 617*4882a593Smuzhiyun 618*4882a593Smuzhiyun&uart0 { 619*4882a593Smuzhiyun status = "okay"; 620*4882a593Smuzhiyun}; 621*4882a593Smuzhiyun 622*4882a593Smuzhiyun&uart1 { 623*4882a593Smuzhiyun status = "okay"; 624*4882a593Smuzhiyun}; 625*4882a593Smuzhiyun 626*4882a593Smuzhiyun/* ULPI SMSC USB3320 */ 627*4882a593Smuzhiyun&usb0 { 628*4882a593Smuzhiyun status = "okay"; 629*4882a593Smuzhiyun dr_mode = "host"; 630*4882a593Smuzhiyun}; 631*4882a593Smuzhiyun 632*4882a593Smuzhiyun&watchdog0 { 633*4882a593Smuzhiyun status = "okay"; 634*4882a593Smuzhiyun}; 635