1*724ba675SRob Herring// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2*724ba675SRob Herring/* 3*724ba675SRob Herring * Copyright (c) 2013 Heiko Stuebner <heiko@sntech.de> 4*724ba675SRob Herring */ 5*724ba675SRob Herring 6*724ba675SRob Herring/dts-v1/; 7*724ba675SRob Herring#include <dt-bindings/input/input.h> 8*724ba675SRob Herring#include "rk3188.dtsi" 9*724ba675SRob Herring 10*724ba675SRob Herring/ { 11*724ba675SRob Herring model = "Radxa Rock"; 12*724ba675SRob Herring compatible = "radxa,rock", "rockchip,rk3188"; 13*724ba675SRob Herring 14*724ba675SRob Herring aliases { 15*724ba675SRob Herring mmc0 = &mmc0; 16*724ba675SRob Herring }; 17*724ba675SRob Herring 18*724ba675SRob Herring memory@60000000 { 19*724ba675SRob Herring device_type = "memory"; 20*724ba675SRob Herring reg = <0x60000000 0x80000000>; 21*724ba675SRob Herring }; 22*724ba675SRob Herring 23*724ba675SRob Herring gpio-keys { 24*724ba675SRob Herring compatible = "gpio-keys"; 25*724ba675SRob Herring autorepeat; 26*724ba675SRob Herring 27*724ba675SRob Herring key-power { 28*724ba675SRob Herring gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>; 29*724ba675SRob Herring linux,code = <KEY_POWER>; 30*724ba675SRob Herring label = "GPIO Key Power"; 31*724ba675SRob Herring linux,input-type = <1>; 32*724ba675SRob Herring wakeup-source; 33*724ba675SRob Herring debounce-interval = <100>; 34*724ba675SRob Herring }; 35*724ba675SRob Herring }; 36*724ba675SRob Herring 37*724ba675SRob Herring gpio-leds { 38*724ba675SRob Herring compatible = "gpio-leds"; 39*724ba675SRob Herring 40*724ba675SRob Herring green_led: led-0 { 41*724ba675SRob Herring label = "rock:green:user1"; 42*724ba675SRob Herring gpios = <&gpio0 RK_PB4 GPIO_ACTIVE_LOW>; 43*724ba675SRob Herring default-state = "off"; 44*724ba675SRob Herring }; 45*724ba675SRob Herring 46*724ba675SRob Herring blue_led: led-1 { 47*724ba675SRob Herring label = "rock:blue:user2"; 48*724ba675SRob Herring gpios = <&gpio0 RK_PB6 GPIO_ACTIVE_LOW>; 49*724ba675SRob Herring default-state = "off"; 50*724ba675SRob Herring }; 51*724ba675SRob Herring 52*724ba675SRob Herring sleep_led: led-2 { 53*724ba675SRob Herring label = "rock:red:power"; 54*724ba675SRob Herring gpios = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>; 55*724ba675SRob Herring default-state = "off"; 56*724ba675SRob Herring }; 57*724ba675SRob Herring }; 58*724ba675SRob Herring 59*724ba675SRob Herring sound { 60*724ba675SRob Herring compatible = "simple-audio-card"; 61*724ba675SRob Herring simple-audio-card,name = "SPDIF"; 62*724ba675SRob Herring 63*724ba675SRob Herring simple-audio-card,dai-link@1 { /* S/PDIF - S/PDIF */ 64*724ba675SRob Herring cpu { sound-dai = <&spdif>; }; 65*724ba675SRob Herring codec { sound-dai = <&spdif_out>; }; 66*724ba675SRob Herring }; 67*724ba675SRob Herring }; 68*724ba675SRob Herring 69*724ba675SRob Herring spdif_out: spdif-out { 70*724ba675SRob Herring compatible = "linux,spdif-dit"; 71*724ba675SRob Herring #sound-dai-cells = <0>; 72*724ba675SRob Herring }; 73*724ba675SRob Herring 74*724ba675SRob Herring ir_recv: ir-receiver { 75*724ba675SRob Herring compatible = "gpio-ir-receiver"; 76*724ba675SRob Herring gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>; 77*724ba675SRob Herring pinctrl-names = "default"; 78*724ba675SRob Herring pinctrl-0 = <&ir_recv_pin>; 79*724ba675SRob Herring }; 80*724ba675SRob Herring 81*724ba675SRob Herring vcc_otg: usb-otg-regulator { 82*724ba675SRob Herring compatible = "regulator-fixed"; 83*724ba675SRob Herring enable-active-high; 84*724ba675SRob Herring gpio = <&gpio2 RK_PD7 GPIO_ACTIVE_HIGH>; 85*724ba675SRob Herring pinctrl-names = "default"; 86*724ba675SRob Herring pinctrl-0 = <&otg_vbus_drv>; 87*724ba675SRob Herring regulator-name = "otg-vbus"; 88*724ba675SRob Herring regulator-min-microvolt = <5000000>; 89*724ba675SRob Herring regulator-max-microvolt = <5000000>; 90*724ba675SRob Herring regulator-always-on; 91*724ba675SRob Herring regulator-boot-on; 92*724ba675SRob Herring }; 93*724ba675SRob Herring 94*724ba675SRob Herring vcc_sd0: sdmmc-regulator { 95*724ba675SRob Herring compatible = "regulator-fixed"; 96*724ba675SRob Herring regulator-name = "sdmmc-supply"; 97*724ba675SRob Herring regulator-min-microvolt = <3300000>; 98*724ba675SRob Herring regulator-max-microvolt = <3300000>; 99*724ba675SRob Herring gpio = <&gpio3 RK_PA1 GPIO_ACTIVE_LOW>; 100*724ba675SRob Herring pinctrl-names = "default"; 101*724ba675SRob Herring pinctrl-0 = <&sdmmc_pwr>; 102*724ba675SRob Herring startup-delay-us = <100000>; 103*724ba675SRob Herring vin-supply = <&vcc_io>; 104*724ba675SRob Herring }; 105*724ba675SRob Herring 106*724ba675SRob Herring vcc_host: usb-host-regulator { 107*724ba675SRob Herring compatible = "regulator-fixed"; 108*724ba675SRob Herring enable-active-high; 109*724ba675SRob Herring gpio = <&gpio0 RK_PA3 GPIO_ACTIVE_HIGH>; 110*724ba675SRob Herring pinctrl-names = "default"; 111*724ba675SRob Herring pinctrl-0 = <&host_vbus_drv>; 112*724ba675SRob Herring regulator-name = "host-pwr"; 113*724ba675SRob Herring regulator-min-microvolt = <5000000>; 114*724ba675SRob Herring regulator-max-microvolt = <5000000>; 115*724ba675SRob Herring regulator-always-on; 116*724ba675SRob Herring regulator-boot-on; 117*724ba675SRob Herring }; 118*724ba675SRob Herring 119*724ba675SRob Herring vsys: vsys-regulator { 120*724ba675SRob Herring compatible = "regulator-fixed"; 121*724ba675SRob Herring regulator-name = "vsys"; 122*724ba675SRob Herring regulator-min-microvolt = <5000000>; 123*724ba675SRob Herring regulator-max-microvolt = <5000000>; 124*724ba675SRob Herring regulator-boot-on; 125*724ba675SRob Herring }; 126*724ba675SRob Herring}; 127*724ba675SRob Herring 128*724ba675SRob Herring&emac { 129*724ba675SRob Herring phy = <&phy0>; 130*724ba675SRob Herring phy-supply = <&vcc_rmii>; 131*724ba675SRob Herring pinctrl-names = "default"; 132*724ba675SRob Herring pinctrl-0 = <&emac_xfer>, <&emac_mdio>, <&phy_int>; 133*724ba675SRob Herring status = "okay"; 134*724ba675SRob Herring 135*724ba675SRob Herring mdio { 136*724ba675SRob Herring #address-cells = <1>; 137*724ba675SRob Herring #size-cells = <0>; 138*724ba675SRob Herring 139*724ba675SRob Herring phy0: ethernet-phy@0 { 140*724ba675SRob Herring reg = <0>; 141*724ba675SRob Herring interrupt-parent = <&gpio3>; 142*724ba675SRob Herring interrupts = <RK_PD2 IRQ_TYPE_LEVEL_LOW>; 143*724ba675SRob Herring }; 144*724ba675SRob Herring }; 145*724ba675SRob Herring}; 146*724ba675SRob Herring 147*724ba675SRob Herring&cpu0 { 148*724ba675SRob Herring cpu-supply = <&vdd_arm>; 149*724ba675SRob Herring}; 150*724ba675SRob Herring 151*724ba675SRob Herring&cpu1 { 152*724ba675SRob Herring cpu-supply = <&vdd_arm>; 153*724ba675SRob Herring}; 154*724ba675SRob Herring 155*724ba675SRob Herring&cpu2 { 156*724ba675SRob Herring cpu-supply = <&vdd_arm>; 157*724ba675SRob Herring}; 158*724ba675SRob Herring 159*724ba675SRob Herring&cpu3 { 160*724ba675SRob Herring cpu-supply = <&vdd_arm>; 161*724ba675SRob Herring}; 162*724ba675SRob Herring 163*724ba675SRob Herring&gpu { 164*724ba675SRob Herring status = "okay"; 165*724ba675SRob Herring}; 166*724ba675SRob Herring 167*724ba675SRob Herring&i2c1 { 168*724ba675SRob Herring status = "okay"; 169*724ba675SRob Herring clock-frequency = <400000>; 170*724ba675SRob Herring 171*724ba675SRob Herring rtc@51 { 172*724ba675SRob Herring compatible = "haoyu,hym8563"; 173*724ba675SRob Herring reg = <0x51>; 174*724ba675SRob Herring interrupt-parent = <&gpio0>; 175*724ba675SRob Herring interrupts = <RK_PB5 IRQ_TYPE_EDGE_FALLING>; 176*724ba675SRob Herring pinctrl-names = "default"; 177*724ba675SRob Herring pinctrl-0 = <&rtc_int>; 178*724ba675SRob Herring #clock-cells = <0>; 179*724ba675SRob Herring clock-output-names = "xin32k"; 180*724ba675SRob Herring }; 181*724ba675SRob Herring 182*724ba675SRob Herring act8846: act8846@5a { 183*724ba675SRob Herring compatible = "active-semi,act8846"; 184*724ba675SRob Herring reg = <0x5a>; 185*724ba675SRob Herring status = "okay"; 186*724ba675SRob Herring system-power-controller; 187*724ba675SRob Herring 188*724ba675SRob Herring pinctrl-names = "default"; 189*724ba675SRob Herring pinctrl-0 = <&act8846_dvs0_ctl>; 190*724ba675SRob Herring 191*724ba675SRob Herring vp1-supply = <&vsys>; 192*724ba675SRob Herring vp2-supply = <&vsys>; 193*724ba675SRob Herring vp3-supply = <&vsys>; 194*724ba675SRob Herring vp4-supply = <&vsys>; 195*724ba675SRob Herring inl1-supply = <&vcc_io>; 196*724ba675SRob Herring inl2-supply = <&vsys>; 197*724ba675SRob Herring inl3-supply = <&vsys>; 198*724ba675SRob Herring 199*724ba675SRob Herring regulators { 200*724ba675SRob Herring vcc_ddr: REG1 { 201*724ba675SRob Herring regulator-name = "VCC_DDR"; 202*724ba675SRob Herring regulator-min-microvolt = <1200000>; 203*724ba675SRob Herring regulator-max-microvolt = <1200000>; 204*724ba675SRob Herring regulator-always-on; 205*724ba675SRob Herring }; 206*724ba675SRob Herring 207*724ba675SRob Herring vdd_log: REG2 { 208*724ba675SRob Herring regulator-name = "VDD_LOG"; 209*724ba675SRob Herring regulator-min-microvolt = <1000000>; 210*724ba675SRob Herring regulator-max-microvolt = <1000000>; 211*724ba675SRob Herring regulator-always-on; 212*724ba675SRob Herring }; 213*724ba675SRob Herring 214*724ba675SRob Herring vdd_arm: REG3 { 215*724ba675SRob Herring regulator-name = "VDD_ARM"; 216*724ba675SRob Herring regulator-min-microvolt = <875000>; 217*724ba675SRob Herring regulator-max-microvolt = <1350000>; 218*724ba675SRob Herring regulator-always-on; 219*724ba675SRob Herring }; 220*724ba675SRob Herring 221*724ba675SRob Herring vcc_io: REG4 { 222*724ba675SRob Herring regulator-name = "VCC_IO"; 223*724ba675SRob Herring regulator-min-microvolt = <3300000>; 224*724ba675SRob Herring regulator-max-microvolt = <3300000>; 225*724ba675SRob Herring regulator-always-on; 226*724ba675SRob Herring }; 227*724ba675SRob Herring 228*724ba675SRob Herring vdd_10: REG5 { 229*724ba675SRob Herring regulator-name = "VDD_10"; 230*724ba675SRob Herring regulator-min-microvolt = <1000000>; 231*724ba675SRob Herring regulator-max-microvolt = <1000000>; 232*724ba675SRob Herring regulator-always-on; 233*724ba675SRob Herring }; 234*724ba675SRob Herring 235*724ba675SRob Herring vdd_hdmi: REG6 { 236*724ba675SRob Herring regulator-name = "VDD_HDMI"; 237*724ba675SRob Herring regulator-min-microvolt = <2500000>; 238*724ba675SRob Herring regulator-max-microvolt = <2500000>; 239*724ba675SRob Herring regulator-always-on; 240*724ba675SRob Herring }; 241*724ba675SRob Herring 242*724ba675SRob Herring vcc18: REG7 { 243*724ba675SRob Herring regulator-name = "VCC_18"; 244*724ba675SRob Herring regulator-min-microvolt = <1800000>; 245*724ba675SRob Herring regulator-max-microvolt = <1800000>; 246*724ba675SRob Herring regulator-always-on; 247*724ba675SRob Herring }; 248*724ba675SRob Herring 249*724ba675SRob Herring vcca_33: REG8 { 250*724ba675SRob Herring regulator-name = "VCCA_33"; 251*724ba675SRob Herring regulator-min-microvolt = <3300000>; 252*724ba675SRob Herring regulator-max-microvolt = <3300000>; 253*724ba675SRob Herring regulator-always-on; 254*724ba675SRob Herring }; 255*724ba675SRob Herring 256*724ba675SRob Herring vcc_rmii: REG9 { 257*724ba675SRob Herring regulator-name = "VCC_RMII"; 258*724ba675SRob Herring regulator-min-microvolt = <3300000>; 259*724ba675SRob Herring regulator-max-microvolt = <3300000>; 260*724ba675SRob Herring }; 261*724ba675SRob Herring 262*724ba675SRob Herring vccio_wl: REG10 { 263*724ba675SRob Herring regulator-name = "VCCIO_WL"; 264*724ba675SRob Herring regulator-min-microvolt = <3300000>; 265*724ba675SRob Herring regulator-max-microvolt = <3300000>; 266*724ba675SRob Herring regulator-always-on; 267*724ba675SRob Herring }; 268*724ba675SRob Herring 269*724ba675SRob Herring vcc_18: REG11 { 270*724ba675SRob Herring regulator-name = "VCC18_IO"; 271*724ba675SRob Herring regulator-min-microvolt = <1800000>; 272*724ba675SRob Herring regulator-max-microvolt = <1800000>; 273*724ba675SRob Herring regulator-always-on; 274*724ba675SRob Herring }; 275*724ba675SRob Herring 276*724ba675SRob Herring vcc28: REG12 { 277*724ba675SRob Herring regulator-name = "VCC_28"; 278*724ba675SRob Herring regulator-min-microvolt = <2800000>; 279*724ba675SRob Herring regulator-max-microvolt = <2800000>; 280*724ba675SRob Herring regulator-always-on; 281*724ba675SRob Herring }; 282*724ba675SRob Herring }; 283*724ba675SRob Herring }; 284*724ba675SRob Herring}; 285*724ba675SRob Herring 286*724ba675SRob Herring&mmc0 { 287*724ba675SRob Herring status = "okay"; 288*724ba675SRob Herring pinctrl-names = "default"; 289*724ba675SRob Herring pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>; 290*724ba675SRob Herring vmmc-supply = <&vcc_sd0>; 291*724ba675SRob Herring 292*724ba675SRob Herring bus-width = <4>; 293*724ba675SRob Herring cap-mmc-highspeed; 294*724ba675SRob Herring cap-sd-highspeed; 295*724ba675SRob Herring disable-wp; 296*724ba675SRob Herring}; 297*724ba675SRob Herring 298*724ba675SRob Herring&pwm1 { 299*724ba675SRob Herring status = "okay"; 300*724ba675SRob Herring}; 301*724ba675SRob Herring 302*724ba675SRob Herring&pwm2 { 303*724ba675SRob Herring status = "okay"; 304*724ba675SRob Herring}; 305*724ba675SRob Herring 306*724ba675SRob Herring&pwm3 { 307*724ba675SRob Herring status = "okay"; 308*724ba675SRob Herring}; 309*724ba675SRob Herring 310*724ba675SRob Herring&pinctrl { 311*724ba675SRob Herring pcfg_output_low: pcfg-output-low { 312*724ba675SRob Herring output-low; 313*724ba675SRob Herring }; 314*724ba675SRob Herring 315*724ba675SRob Herring act8846 { 316*724ba675SRob Herring act8846_dvs0_ctl: act8846-dvs0-ctl { 317*724ba675SRob Herring rockchip,pins = <3 RK_PD3 RK_FUNC_GPIO &pcfg_output_low>; 318*724ba675SRob Herring }; 319*724ba675SRob Herring }; 320*724ba675SRob Herring 321*724ba675SRob Herring hym8563 { 322*724ba675SRob Herring rtc_int: rtc-int { 323*724ba675SRob Herring rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up>; 324*724ba675SRob Herring }; 325*724ba675SRob Herring }; 326*724ba675SRob Herring 327*724ba675SRob Herring lan8720a { 328*724ba675SRob Herring phy_int: phy-int { 329*724ba675SRob Herring rockchip,pins = <3 RK_PD2 RK_FUNC_GPIO &pcfg_pull_up>; 330*724ba675SRob Herring }; 331*724ba675SRob Herring }; 332*724ba675SRob Herring 333*724ba675SRob Herring ir-receiver { 334*724ba675SRob Herring ir_recv_pin: ir-recv-pin { 335*724ba675SRob Herring rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>; 336*724ba675SRob Herring }; 337*724ba675SRob Herring }; 338*724ba675SRob Herring 339*724ba675SRob Herring sd0 { 340*724ba675SRob Herring sdmmc_pwr: sdmmc-pwr { 341*724ba675SRob Herring rockchip,pins = <3 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>; 342*724ba675SRob Herring }; 343*724ba675SRob Herring }; 344*724ba675SRob Herring 345*724ba675SRob Herring usb { 346*724ba675SRob Herring host_vbus_drv: host-vbus-drv { 347*724ba675SRob Herring rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>; 348*724ba675SRob Herring }; 349*724ba675SRob Herring otg_vbus_drv: otg-vbus-drv { 350*724ba675SRob Herring rockchip,pins = <2 RK_PD7 RK_FUNC_GPIO &pcfg_pull_none>; 351*724ba675SRob Herring }; 352*724ba675SRob Herring }; 353*724ba675SRob Herring}; 354*724ba675SRob Herring 355*724ba675SRob Herring&spdif { 356*724ba675SRob Herring status = "okay"; 357*724ba675SRob Herring}; 358*724ba675SRob Herring 359*724ba675SRob Herring&uart0 { 360*724ba675SRob Herring status = "okay"; 361*724ba675SRob Herring}; 362*724ba675SRob Herring 363*724ba675SRob Herring&uart1 { 364*724ba675SRob Herring status = "okay"; 365*724ba675SRob Herring}; 366*724ba675SRob Herring 367*724ba675SRob Herring&uart2 { 368*724ba675SRob Herring status = "okay"; 369*724ba675SRob Herring}; 370*724ba675SRob Herring 371*724ba675SRob Herring&uart3 { 372*724ba675SRob Herring status = "okay"; 373*724ba675SRob Herring}; 374*724ba675SRob Herring 375*724ba675SRob Herring&usbphy { 376*724ba675SRob Herring status = "okay"; 377*724ba675SRob Herring}; 378*724ba675SRob Herring 379*724ba675SRob Herring&usb_host { 380*724ba675SRob Herring status = "okay"; 381*724ba675SRob Herring}; 382*724ba675SRob Herring 383*724ba675SRob Herring&usb_otg { 384*724ba675SRob Herring status = "okay"; 385*724ba675SRob Herring}; 386*724ba675SRob Herring 387*724ba675SRob Herring&wdt { 388*724ba675SRob Herring status = "okay"; 389*724ba675SRob Herring}; 390