1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0 2*724ba675SRob Herring/* 3*724ba675SRob Herring * Copyright (C) 2011 - 2014 Xilinx 4*724ba675SRob Herring * Copyright (C) 2012 National Instruments Corp. 5*724ba675SRob Herring */ 6*724ba675SRob Herring/dts-v1/; 7*724ba675SRob Herring#include "zynq-7000.dtsi" 8*724ba675SRob Herring#include <dt-bindings/gpio/gpio.h> 9*724ba675SRob Herring 10*724ba675SRob Herring/ { 11*724ba675SRob Herring model = "Xilinx ZC702 board"; 12*724ba675SRob Herring compatible = "xlnx,zynq-zc702", "xlnx,zynq-7000"; 13*724ba675SRob Herring 14*724ba675SRob Herring aliases { 15*724ba675SRob Herring ethernet0 = &gem0; 16*724ba675SRob Herring i2c0 = &i2c0; 17*724ba675SRob Herring serial0 = &uart1; 18*724ba675SRob Herring mmc0 = &sdhci0; 19*724ba675SRob Herring }; 20*724ba675SRob Herring 21*724ba675SRob Herring memory@0 { 22*724ba675SRob Herring device_type = "memory"; 23*724ba675SRob Herring reg = <0x0 0x40000000>; 24*724ba675SRob Herring }; 25*724ba675SRob Herring 26*724ba675SRob Herring chosen { 27*724ba675SRob Herring bootargs = ""; 28*724ba675SRob Herring stdout-path = "serial0:115200n8"; 29*724ba675SRob Herring }; 30*724ba675SRob Herring 31*724ba675SRob Herring gpio-keys { 32*724ba675SRob Herring compatible = "gpio-keys"; 33*724ba675SRob Herring autorepeat; 34*724ba675SRob Herring switch-14 { 35*724ba675SRob Herring label = "sw14"; 36*724ba675SRob Herring gpios = <&gpio0 12 0>; 37*724ba675SRob Herring linux,code = <108>; /* down */ 38*724ba675SRob Herring wakeup-source; 39*724ba675SRob Herring autorepeat; 40*724ba675SRob Herring }; 41*724ba675SRob Herring switch-13 { 42*724ba675SRob Herring label = "sw13"; 43*724ba675SRob Herring gpios = <&gpio0 14 0>; 44*724ba675SRob Herring linux,code = <103>; /* up */ 45*724ba675SRob Herring wakeup-source; 46*724ba675SRob Herring autorepeat; 47*724ba675SRob Herring }; 48*724ba675SRob Herring }; 49*724ba675SRob Herring 50*724ba675SRob Herring leds { 51*724ba675SRob Herring compatible = "gpio-leds"; 52*724ba675SRob Herring 53*724ba675SRob Herring led-ds23 { 54*724ba675SRob Herring label = "ds23"; 55*724ba675SRob Herring gpios = <&gpio0 10 0>; 56*724ba675SRob Herring linux,default-trigger = "heartbeat"; 57*724ba675SRob Herring }; 58*724ba675SRob Herring }; 59*724ba675SRob Herring 60*724ba675SRob Herring usb_phy0: phy0 { 61*724ba675SRob Herring compatible = "usb-nop-xceiv"; 62*724ba675SRob Herring #phy-cells = <0>; 63*724ba675SRob Herring }; 64*724ba675SRob Herring}; 65*724ba675SRob Herring 66*724ba675SRob Herring&amba { 67*724ba675SRob Herring ocm: sram@fffc0000 { 68*724ba675SRob Herring compatible = "mmio-sram"; 69*724ba675SRob Herring reg = <0xfffc0000 0x10000>; 70*724ba675SRob Herring #address-cells = <1>; 71*724ba675SRob Herring #size-cells = <1>; 72*724ba675SRob Herring ranges = <0 0xfffc0000 0x10000>; 73*724ba675SRob Herring ocm-sram@0 { 74*724ba675SRob Herring reg = <0x0 0x10000>; 75*724ba675SRob Herring }; 76*724ba675SRob Herring }; 77*724ba675SRob Herring}; 78*724ba675SRob Herring 79*724ba675SRob Herring&can0 { 80*724ba675SRob Herring status = "okay"; 81*724ba675SRob Herring pinctrl-names = "default"; 82*724ba675SRob Herring pinctrl-0 = <&pinctrl_can0_default>; 83*724ba675SRob Herring}; 84*724ba675SRob Herring 85*724ba675SRob Herring&clkc { 86*724ba675SRob Herring ps-clk-frequency = <33333333>; 87*724ba675SRob Herring}; 88*724ba675SRob Herring 89*724ba675SRob Herring&gem0 { 90*724ba675SRob Herring status = "okay"; 91*724ba675SRob Herring phy-mode = "rgmii-id"; 92*724ba675SRob Herring phy-handle = <ðernet_phy>; 93*724ba675SRob Herring pinctrl-names = "default"; 94*724ba675SRob Herring pinctrl-0 = <&pinctrl_gem0_default>; 95*724ba675SRob Herring 96*724ba675SRob Herring ethernet_phy: ethernet-phy@7 { 97*724ba675SRob Herring reg = <7>; 98*724ba675SRob Herring device_type = "ethernet-phy"; 99*724ba675SRob Herring }; 100*724ba675SRob Herring}; 101*724ba675SRob Herring 102*724ba675SRob Herring&gpio0 { 103*724ba675SRob Herring pinctrl-names = "default"; 104*724ba675SRob Herring pinctrl-0 = <&pinctrl_gpio0_default>; 105*724ba675SRob Herring}; 106*724ba675SRob Herring 107*724ba675SRob Herring&i2c0 { 108*724ba675SRob Herring status = "okay"; 109*724ba675SRob Herring clock-frequency = <400000>; 110*724ba675SRob Herring pinctrl-names = "default", "gpio"; 111*724ba675SRob Herring pinctrl-0 = <&pinctrl_i2c0_default>; 112*724ba675SRob Herring pinctrl-1 = <&pinctrl_i2c0_gpio>; 113*724ba675SRob Herring scl-gpios = <&gpio0 50 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 114*724ba675SRob Herring sda-gpios = <&gpio0 51 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 115*724ba675SRob Herring 116*724ba675SRob Herring i2c-mux@74 { 117*724ba675SRob Herring compatible = "nxp,pca9548"; 118*724ba675SRob Herring #address-cells = <1>; 119*724ba675SRob Herring #size-cells = <0>; 120*724ba675SRob Herring reg = <0x74>; 121*724ba675SRob Herring 122*724ba675SRob Herring i2c@0 { 123*724ba675SRob Herring #address-cells = <1>; 124*724ba675SRob Herring #size-cells = <0>; 125*724ba675SRob Herring reg = <0>; 126*724ba675SRob Herring si570: clock-generator@5d { 127*724ba675SRob Herring #clock-cells = <0>; 128*724ba675SRob Herring compatible = "silabs,si570"; 129*724ba675SRob Herring temperature-stability = <50>; 130*724ba675SRob Herring reg = <0x5d>; 131*724ba675SRob Herring factory-fout = <156250000>; 132*724ba675SRob Herring clock-frequency = <148500000>; 133*724ba675SRob Herring }; 134*724ba675SRob Herring }; 135*724ba675SRob Herring 136*724ba675SRob Herring i2c@1 { 137*724ba675SRob Herring #address-cells = <1>; 138*724ba675SRob Herring #size-cells = <0>; 139*724ba675SRob Herring reg = <1>; 140*724ba675SRob Herring adv7511: hdmi-tx@39 { 141*724ba675SRob Herring compatible = "adi,adv7511"; 142*724ba675SRob Herring reg = <0x39>; 143*724ba675SRob Herring adi,input-depth = <8>; 144*724ba675SRob Herring adi,input-colorspace = "yuv422"; 145*724ba675SRob Herring adi,input-clock = "1x"; 146*724ba675SRob Herring adi,input-style = <3>; 147*724ba675SRob Herring adi,input-justification = "right"; 148*724ba675SRob Herring }; 149*724ba675SRob Herring }; 150*724ba675SRob Herring 151*724ba675SRob Herring i2c@2 { 152*724ba675SRob Herring #address-cells = <1>; 153*724ba675SRob Herring #size-cells = <0>; 154*724ba675SRob Herring reg = <2>; 155*724ba675SRob Herring eeprom@54 { 156*724ba675SRob Herring compatible = "atmel,24c08"; 157*724ba675SRob Herring reg = <0x54>; 158*724ba675SRob Herring }; 159*724ba675SRob Herring }; 160*724ba675SRob Herring 161*724ba675SRob Herring i2c@3 { 162*724ba675SRob Herring #address-cells = <1>; 163*724ba675SRob Herring #size-cells = <0>; 164*724ba675SRob Herring reg = <3>; 165*724ba675SRob Herring gpio@21 { 166*724ba675SRob Herring compatible = "ti,tca6416"; 167*724ba675SRob Herring reg = <0x21>; 168*724ba675SRob Herring gpio-controller; 169*724ba675SRob Herring #gpio-cells = <2>; 170*724ba675SRob Herring }; 171*724ba675SRob Herring }; 172*724ba675SRob Herring 173*724ba675SRob Herring i2c@4 { 174*724ba675SRob Herring #address-cells = <1>; 175*724ba675SRob Herring #size-cells = <0>; 176*724ba675SRob Herring reg = <4>; 177*724ba675SRob Herring rtc@51 { 178*724ba675SRob Herring compatible = "nxp,pcf8563"; 179*724ba675SRob Herring reg = <0x51>; 180*724ba675SRob Herring }; 181*724ba675SRob Herring }; 182*724ba675SRob Herring 183*724ba675SRob Herring i2c@7 { 184*724ba675SRob Herring #address-cells = <1>; 185*724ba675SRob Herring #size-cells = <0>; 186*724ba675SRob Herring reg = <7>; 187*724ba675SRob Herring hwmon@34 { 188*724ba675SRob Herring compatible = "ti,ucd9248"; 189*724ba675SRob Herring reg = <0x34>; 190*724ba675SRob Herring }; 191*724ba675SRob Herring hwmon@35 { 192*724ba675SRob Herring compatible = "ti,ucd9248"; 193*724ba675SRob Herring reg = <0x35>; 194*724ba675SRob Herring }; 195*724ba675SRob Herring hwmon@36 { 196*724ba675SRob Herring compatible = "ti,ucd9248"; 197*724ba675SRob Herring reg = <0x36>; 198*724ba675SRob Herring }; 199*724ba675SRob Herring }; 200*724ba675SRob Herring }; 201*724ba675SRob Herring}; 202*724ba675SRob Herring 203*724ba675SRob Herring&pinctrl0 { 204*724ba675SRob Herring pinctrl_can0_default: can0-default { 205*724ba675SRob Herring mux { 206*724ba675SRob Herring function = "can0"; 207*724ba675SRob Herring groups = "can0_9_grp"; 208*724ba675SRob Herring }; 209*724ba675SRob Herring 210*724ba675SRob Herring conf { 211*724ba675SRob Herring groups = "can0_9_grp"; 212*724ba675SRob Herring slew-rate = <0>; 213*724ba675SRob Herring io-standard = <1>; 214*724ba675SRob Herring }; 215*724ba675SRob Herring 216*724ba675SRob Herring conf-rx { 217*724ba675SRob Herring pins = "MIO46"; 218*724ba675SRob Herring bias-high-impedance; 219*724ba675SRob Herring }; 220*724ba675SRob Herring 221*724ba675SRob Herring conf-tx { 222*724ba675SRob Herring pins = "MIO47"; 223*724ba675SRob Herring bias-disable; 224*724ba675SRob Herring }; 225*724ba675SRob Herring }; 226*724ba675SRob Herring 227*724ba675SRob Herring pinctrl_gem0_default: gem0-default { 228*724ba675SRob Herring mux { 229*724ba675SRob Herring function = "ethernet0"; 230*724ba675SRob Herring groups = "ethernet0_0_grp"; 231*724ba675SRob Herring }; 232*724ba675SRob Herring 233*724ba675SRob Herring conf { 234*724ba675SRob Herring groups = "ethernet0_0_grp"; 235*724ba675SRob Herring slew-rate = <0>; 236*724ba675SRob Herring io-standard = <4>; 237*724ba675SRob Herring }; 238*724ba675SRob Herring 239*724ba675SRob Herring conf-rx { 240*724ba675SRob Herring pins = "MIO22", "MIO23", "MIO24", "MIO25", "MIO26", "MIO27"; 241*724ba675SRob Herring bias-high-impedance; 242*724ba675SRob Herring low-power-disable; 243*724ba675SRob Herring }; 244*724ba675SRob Herring 245*724ba675SRob Herring conf-tx { 246*724ba675SRob Herring pins = "MIO16", "MIO17", "MIO18", "MIO19", "MIO20", "MIO21"; 247*724ba675SRob Herring bias-disable; 248*724ba675SRob Herring low-power-enable; 249*724ba675SRob Herring }; 250*724ba675SRob Herring 251*724ba675SRob Herring mux-mdio { 252*724ba675SRob Herring function = "mdio0"; 253*724ba675SRob Herring groups = "mdio0_0_grp"; 254*724ba675SRob Herring }; 255*724ba675SRob Herring 256*724ba675SRob Herring conf-mdio { 257*724ba675SRob Herring groups = "mdio0_0_grp"; 258*724ba675SRob Herring slew-rate = <0>; 259*724ba675SRob Herring io-standard = <1>; 260*724ba675SRob Herring bias-disable; 261*724ba675SRob Herring }; 262*724ba675SRob Herring }; 263*724ba675SRob Herring 264*724ba675SRob Herring pinctrl_gpio0_default: gpio0-default { 265*724ba675SRob Herring mux { 266*724ba675SRob Herring function = "gpio0"; 267*724ba675SRob Herring groups = "gpio0_7_grp", "gpio0_8_grp", "gpio0_9_grp", 268*724ba675SRob Herring "gpio0_10_grp", "gpio0_11_grp", "gpio0_12_grp", 269*724ba675SRob Herring "gpio0_13_grp", "gpio0_14_grp"; 270*724ba675SRob Herring }; 271*724ba675SRob Herring 272*724ba675SRob Herring conf { 273*724ba675SRob Herring groups = "gpio0_7_grp", "gpio0_8_grp", "gpio0_9_grp", 274*724ba675SRob Herring "gpio0_10_grp", "gpio0_11_grp", "gpio0_12_grp", 275*724ba675SRob Herring "gpio0_13_grp", "gpio0_14_grp"; 276*724ba675SRob Herring slew-rate = <0>; 277*724ba675SRob Herring io-standard = <1>; 278*724ba675SRob Herring }; 279*724ba675SRob Herring 280*724ba675SRob Herring conf-pull-up { 281*724ba675SRob Herring pins = "MIO9", "MIO10", "MIO11", "MIO12", "MIO13", "MIO14"; 282*724ba675SRob Herring bias-pull-up; 283*724ba675SRob Herring }; 284*724ba675SRob Herring 285*724ba675SRob Herring conf-pull-none { 286*724ba675SRob Herring pins = "MIO7", "MIO8"; 287*724ba675SRob Herring bias-disable; 288*724ba675SRob Herring }; 289*724ba675SRob Herring }; 290*724ba675SRob Herring 291*724ba675SRob Herring pinctrl_i2c0_default: i2c0-default { 292*724ba675SRob Herring mux { 293*724ba675SRob Herring groups = "i2c0_10_grp"; 294*724ba675SRob Herring function = "i2c0"; 295*724ba675SRob Herring }; 296*724ba675SRob Herring 297*724ba675SRob Herring conf { 298*724ba675SRob Herring groups = "i2c0_10_grp"; 299*724ba675SRob Herring bias-pull-up; 300*724ba675SRob Herring slew-rate = <0>; 301*724ba675SRob Herring io-standard = <1>; 302*724ba675SRob Herring }; 303*724ba675SRob Herring }; 304*724ba675SRob Herring 305*724ba675SRob Herring pinctrl_i2c0_gpio: i2c0-gpio { 306*724ba675SRob Herring mux { 307*724ba675SRob Herring groups = "gpio0_50_grp", "gpio0_51_grp"; 308*724ba675SRob Herring function = "gpio0"; 309*724ba675SRob Herring }; 310*724ba675SRob Herring 311*724ba675SRob Herring conf { 312*724ba675SRob Herring groups = "gpio0_50_grp", "gpio0_51_grp"; 313*724ba675SRob Herring slew-rate = <0>; 314*724ba675SRob Herring io-standard = <1>; 315*724ba675SRob Herring }; 316*724ba675SRob Herring }; 317*724ba675SRob Herring 318*724ba675SRob Herring pinctrl_sdhci0_default: sdhci0-default { 319*724ba675SRob Herring mux { 320*724ba675SRob Herring groups = "sdio0_2_grp"; 321*724ba675SRob Herring function = "sdio0"; 322*724ba675SRob Herring }; 323*724ba675SRob Herring 324*724ba675SRob Herring conf { 325*724ba675SRob Herring groups = "sdio0_2_grp"; 326*724ba675SRob Herring slew-rate = <0>; 327*724ba675SRob Herring io-standard = <1>; 328*724ba675SRob Herring bias-disable; 329*724ba675SRob Herring }; 330*724ba675SRob Herring 331*724ba675SRob Herring mux-cd { 332*724ba675SRob Herring groups = "gpio0_0_grp"; 333*724ba675SRob Herring function = "sdio0_cd"; 334*724ba675SRob Herring }; 335*724ba675SRob Herring 336*724ba675SRob Herring conf-cd { 337*724ba675SRob Herring groups = "gpio0_0_grp"; 338*724ba675SRob Herring bias-high-impedance; 339*724ba675SRob Herring bias-pull-up; 340*724ba675SRob Herring slew-rate = <0>; 341*724ba675SRob Herring io-standard = <1>; 342*724ba675SRob Herring }; 343*724ba675SRob Herring 344*724ba675SRob Herring mux-wp { 345*724ba675SRob Herring groups = "gpio0_15_grp"; 346*724ba675SRob Herring function = "sdio0_wp"; 347*724ba675SRob Herring }; 348*724ba675SRob Herring 349*724ba675SRob Herring conf-wp { 350*724ba675SRob Herring groups = "gpio0_15_grp"; 351*724ba675SRob Herring bias-high-impedance; 352*724ba675SRob Herring bias-pull-up; 353*724ba675SRob Herring slew-rate = <0>; 354*724ba675SRob Herring io-standard = <1>; 355*724ba675SRob Herring }; 356*724ba675SRob Herring }; 357*724ba675SRob Herring 358*724ba675SRob Herring pinctrl_uart1_default: uart1-default { 359*724ba675SRob Herring mux { 360*724ba675SRob Herring groups = "uart1_10_grp"; 361*724ba675SRob Herring function = "uart1"; 362*724ba675SRob Herring }; 363*724ba675SRob Herring 364*724ba675SRob Herring conf { 365*724ba675SRob Herring groups = "uart1_10_grp"; 366*724ba675SRob Herring slew-rate = <0>; 367*724ba675SRob Herring io-standard = <1>; 368*724ba675SRob Herring }; 369*724ba675SRob Herring 370*724ba675SRob Herring conf-rx { 371*724ba675SRob Herring pins = "MIO49"; 372*724ba675SRob Herring bias-high-impedance; 373*724ba675SRob Herring }; 374*724ba675SRob Herring 375*724ba675SRob Herring conf-tx { 376*724ba675SRob Herring pins = "MIO48"; 377*724ba675SRob Herring bias-disable; 378*724ba675SRob Herring }; 379*724ba675SRob Herring }; 380*724ba675SRob Herring 381*724ba675SRob Herring pinctrl_usb0_default: usb0-default { 382*724ba675SRob Herring mux { 383*724ba675SRob Herring groups = "usb0_0_grp"; 384*724ba675SRob Herring function = "usb0"; 385*724ba675SRob Herring }; 386*724ba675SRob Herring 387*724ba675SRob Herring conf { 388*724ba675SRob Herring groups = "usb0_0_grp"; 389*724ba675SRob Herring slew-rate = <0>; 390*724ba675SRob Herring io-standard = <1>; 391*724ba675SRob Herring }; 392*724ba675SRob Herring 393*724ba675SRob Herring conf-rx { 394*724ba675SRob Herring pins = "MIO29", "MIO31", "MIO36"; 395*724ba675SRob Herring bias-high-impedance; 396*724ba675SRob Herring }; 397*724ba675SRob Herring 398*724ba675SRob Herring conf-tx { 399*724ba675SRob Herring pins = "MIO28", "MIO30", "MIO32", "MIO33", "MIO34", 400*724ba675SRob Herring "MIO35", "MIO37", "MIO38", "MIO39"; 401*724ba675SRob Herring bias-disable; 402*724ba675SRob Herring }; 403*724ba675SRob Herring }; 404*724ba675SRob Herring}; 405*724ba675SRob Herring 406*724ba675SRob Herring&sdhci0 { 407*724ba675SRob Herring status = "okay"; 408*724ba675SRob Herring pinctrl-names = "default"; 409*724ba675SRob Herring pinctrl-0 = <&pinctrl_sdhci0_default>; 410*724ba675SRob Herring}; 411*724ba675SRob Herring 412*724ba675SRob Herring&uart1 { 413*724ba675SRob Herring status = "okay"; 414*724ba675SRob Herring pinctrl-names = "default"; 415*724ba675SRob Herring pinctrl-0 = <&pinctrl_uart1_default>; 416*724ba675SRob Herring}; 417*724ba675SRob Herring 418*724ba675SRob Herring&usb0 { 419*724ba675SRob Herring status = "okay"; 420*724ba675SRob Herring dr_mode = "host"; 421*724ba675SRob Herring usb-phy = <&usb_phy0>; 422*724ba675SRob Herring pinctrl-names = "default"; 423*724ba675SRob Herring pinctrl-0 = <&pinctrl_usb0_default>; 424*724ba675SRob Herring}; 425