1*724ba675SRob Herring// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2*724ba675SRob Herring/* 3*724ba675SRob Herring * Device tree file for Firefly Rockchip RK3288 Core board 4*724ba675SRob Herring * Copyright (c) 2016 Randy Li <ayaka@soulik.info> 5*724ba675SRob Herring */ 6*724ba675SRob Herring 7*724ba675SRob Herring#include <dt-bindings/input/input.h> 8*724ba675SRob Herring#include "rk3288.dtsi" 9*724ba675SRob Herring 10*724ba675SRob Herring/ { 11*724ba675SRob Herring memory@0 { 12*724ba675SRob Herring device_type = "memory"; 13*724ba675SRob Herring reg = <0x0 0x0 0x0 0x80000000>; 14*724ba675SRob Herring }; 15*724ba675SRob Herring 16*724ba675SRob Herring ext_gmac: external-gmac-clock { 17*724ba675SRob Herring compatible = "fixed-clock"; 18*724ba675SRob Herring #clock-cells = <0>; 19*724ba675SRob Herring clock-frequency = <125000000>; 20*724ba675SRob Herring clock-output-names = "ext_gmac"; 21*724ba675SRob Herring }; 22*724ba675SRob Herring 23*724ba675SRob Herring 24*724ba675SRob Herring vcc_flash: flash-regulator { 25*724ba675SRob Herring compatible = "regulator-fixed"; 26*724ba675SRob Herring regulator-name = "vcc_flash"; 27*724ba675SRob Herring regulator-min-microvolt = <1800000>; 28*724ba675SRob Herring regulator-max-microvolt = <1800000>; 29*724ba675SRob Herring vin-supply = <&vcc_io>; 30*724ba675SRob Herring }; 31*724ba675SRob Herring}; 32*724ba675SRob Herring 33*724ba675SRob Herring&cpu0 { 34*724ba675SRob Herring cpu0-supply = <&vdd_cpu>; 35*724ba675SRob Herring}; 36*724ba675SRob Herring 37*724ba675SRob Herring&emmc { 38*724ba675SRob Herring bus-width = <8>; 39*724ba675SRob Herring cap-mmc-highspeed; 40*724ba675SRob Herring disable-wp; 41*724ba675SRob Herring mmc-ddr-1_8v; 42*724ba675SRob Herring mmc-hs200-1_8v; 43*724ba675SRob Herring non-removable; 44*724ba675SRob Herring pinctrl-names = "default"; 45*724ba675SRob Herring pinctrl-0 = <&emmc_clk>, <&emmc_cmd>, <&emmc_pwr>, <&emmc_bus8>; 46*724ba675SRob Herring vmmc-supply = <&vcc_io>; 47*724ba675SRob Herring vqmmc-supply = <&vcc_flash>; 48*724ba675SRob Herring status = "okay"; 49*724ba675SRob Herring}; 50*724ba675SRob Herring 51*724ba675SRob Herring&gmac { 52*724ba675SRob Herring assigned-clocks = <&cru SCLK_MAC>; 53*724ba675SRob Herring assigned-clock-parents = <&ext_gmac>; 54*724ba675SRob Herring clock_in_out = "input"; 55*724ba675SRob Herring pinctrl-names = "default"; 56*724ba675SRob Herring pinctrl-0 = <&rgmii_pins>, <&phy_rst>, <&phy_pmeb>, <&phy_int>; 57*724ba675SRob Herring phy-supply = <&vcc_lan>; 58*724ba675SRob Herring phy-mode = "rgmii"; 59*724ba675SRob Herring snps,reset-active-low; 60*724ba675SRob Herring snps,reset-delays-us = <0 10000 1000000>; 61*724ba675SRob Herring snps,reset-gpio = <&gpio4 RK_PB0 GPIO_ACTIVE_LOW>; 62*724ba675SRob Herring tx_delay = <0x30>; 63*724ba675SRob Herring rx_delay = <0x10>; 64*724ba675SRob Herring status = "okay"; 65*724ba675SRob Herring}; 66*724ba675SRob Herring 67*724ba675SRob Herring&i2c0 { 68*724ba675SRob Herring clock-frequency = <400000>; 69*724ba675SRob Herring status = "okay"; 70*724ba675SRob Herring 71*724ba675SRob Herring vdd_cpu: syr827@40 { 72*724ba675SRob Herring compatible = "silergy,syr827"; 73*724ba675SRob Herring fcs,suspend-voltage-selector = <1>; 74*724ba675SRob Herring reg = <0x40>; 75*724ba675SRob Herring regulator-name = "vdd_cpu"; 76*724ba675SRob Herring regulator-min-microvolt = <850000>; 77*724ba675SRob Herring regulator-max-microvolt = <1350000>; 78*724ba675SRob Herring regulator-always-on; 79*724ba675SRob Herring regulator-boot-on; 80*724ba675SRob Herring regulator-enable-ramp-delay = <300>; 81*724ba675SRob Herring regulator-ramp-delay = <8000>; 82*724ba675SRob Herring vin-supply = <&vcc_sys>; 83*724ba675SRob Herring }; 84*724ba675SRob Herring 85*724ba675SRob Herring vdd_gpu: syr828@41 { 86*724ba675SRob Herring compatible = "silergy,syr828"; 87*724ba675SRob Herring fcs,suspend-voltage-selector = <1>; 88*724ba675SRob Herring reg = <0x41>; 89*724ba675SRob Herring regulator-name = "vdd_gpu"; 90*724ba675SRob Herring regulator-min-microvolt = <850000>; 91*724ba675SRob Herring regulator-max-microvolt = <1350000>; 92*724ba675SRob Herring regulator-always-on; 93*724ba675SRob Herring vin-supply = <&vcc_sys>; 94*724ba675SRob Herring }; 95*724ba675SRob Herring 96*724ba675SRob Herring act8846: act8846@5a { 97*724ba675SRob Herring compatible = "active-semi,act8846"; 98*724ba675SRob Herring reg = <0x5a>; 99*724ba675SRob Herring pinctrl-names = "default"; 100*724ba675SRob Herring pinctrl-0 = <&pmic_vsel>, <&pwr_hold>; 101*724ba675SRob Herring system-power-controller; 102*724ba675SRob Herring 103*724ba675SRob Herring vp1-supply = <&vcc_sys>; 104*724ba675SRob Herring vp2-supply = <&vcc_sys>; 105*724ba675SRob Herring vp3-supply = <&vcc_sys>; 106*724ba675SRob Herring vp4-supply = <&vcc_sys>; 107*724ba675SRob Herring inl1-supply = <&vcc_sys>; 108*724ba675SRob Herring inl2-supply = <&vcc_sys>; 109*724ba675SRob Herring inl3-supply = <&vcc_20>; 110*724ba675SRob Herring 111*724ba675SRob Herring regulators { 112*724ba675SRob Herring vcc_ddr: REG1 { 113*724ba675SRob Herring regulator-name = "vcc_ddr"; 114*724ba675SRob Herring regulator-min-microvolt = <1200000>; 115*724ba675SRob Herring regulator-max-microvolt = <1200000>; 116*724ba675SRob Herring regulator-always-on; 117*724ba675SRob Herring }; 118*724ba675SRob Herring 119*724ba675SRob Herring vcc_io: REG2 { 120*724ba675SRob Herring regulator-name = "vcc_io"; 121*724ba675SRob Herring regulator-min-microvolt = <3300000>; 122*724ba675SRob Herring regulator-max-microvolt = <3300000>; 123*724ba675SRob Herring regulator-always-on; 124*724ba675SRob Herring }; 125*724ba675SRob Herring 126*724ba675SRob Herring vdd_log: REG3 { 127*724ba675SRob Herring regulator-name = "vdd_log"; 128*724ba675SRob Herring regulator-min-microvolt = <1100000>; 129*724ba675SRob Herring regulator-max-microvolt = <1100000>; 130*724ba675SRob Herring regulator-always-on; 131*724ba675SRob Herring }; 132*724ba675SRob Herring 133*724ba675SRob Herring vcc_20: REG4 { 134*724ba675SRob Herring regulator-name = "vcc_20"; 135*724ba675SRob Herring regulator-min-microvolt = <2000000>; 136*724ba675SRob Herring regulator-max-microvolt = <2000000>; 137*724ba675SRob Herring regulator-always-on; 138*724ba675SRob Herring }; 139*724ba675SRob Herring 140*724ba675SRob Herring vccio_sd: REG5 { 141*724ba675SRob Herring regulator-name = "vccio_sd"; 142*724ba675SRob Herring regulator-min-microvolt = <3300000>; 143*724ba675SRob Herring regulator-max-microvolt = <3300000>; 144*724ba675SRob Herring }; 145*724ba675SRob Herring 146*724ba675SRob Herring vdd10_lcd: REG6 { 147*724ba675SRob Herring regulator-name = "vdd10_lcd"; 148*724ba675SRob Herring regulator-min-microvolt = <1000000>; 149*724ba675SRob Herring regulator-max-microvolt = <1000000>; 150*724ba675SRob Herring regulator-always-on; 151*724ba675SRob Herring }; 152*724ba675SRob Herring 153*724ba675SRob Herring vcca_18: REG7 { 154*724ba675SRob Herring regulator-name = "vcca_18"; 155*724ba675SRob Herring regulator-min-microvolt = <1800000>; 156*724ba675SRob Herring regulator-max-microvolt = <1800000>; 157*724ba675SRob Herring regulator-always-on; 158*724ba675SRob Herring }; 159*724ba675SRob Herring 160*724ba675SRob Herring vcca_33: REG8 { 161*724ba675SRob Herring regulator-name = "vcca_33"; 162*724ba675SRob Herring regulator-min-microvolt = <3300000>; 163*724ba675SRob Herring regulator-max-microvolt = <3300000>; 164*724ba675SRob Herring regulator-always-on; 165*724ba675SRob Herring }; 166*724ba675SRob Herring 167*724ba675SRob Herring vcc_lan: REG9 { 168*724ba675SRob Herring regulator-name = "vcca_lan"; 169*724ba675SRob Herring regulator-min-microvolt = <3300000>; 170*724ba675SRob Herring regulator-max-microvolt = <3300000>; 171*724ba675SRob Herring }; 172*724ba675SRob Herring 173*724ba675SRob Herring vdd_10: REG10 { 174*724ba675SRob Herring regulator-name = "vdd_10"; 175*724ba675SRob Herring regulator-min-microvolt = <1000000>; 176*724ba675SRob Herring regulator-max-microvolt = <1000000>; 177*724ba675SRob Herring regulator-always-on; 178*724ba675SRob Herring }; 179*724ba675SRob Herring 180*724ba675SRob Herring vccio_wl: vcc_18: REG11 { 181*724ba675SRob Herring regulator-name = "vcc_18"; 182*724ba675SRob Herring regulator-min-microvolt = <1800000>; 183*724ba675SRob Herring regulator-max-microvolt = <1800000>; 184*724ba675SRob Herring }; 185*724ba675SRob Herring 186*724ba675SRob Herring vcc18_lcd: REG12 { 187*724ba675SRob Herring regulator-name = "vcc18_lcd"; 188*724ba675SRob Herring regulator-min-microvolt = <1800000>; 189*724ba675SRob Herring regulator-max-microvolt = <1800000>; 190*724ba675SRob Herring regulator-always-on; 191*724ba675SRob Herring }; 192*724ba675SRob Herring }; 193*724ba675SRob Herring }; 194*724ba675SRob Herring}; 195*724ba675SRob Herring 196*724ba675SRob Herring&io_domains { 197*724ba675SRob Herring status = "okay"; 198*724ba675SRob Herring 199*724ba675SRob Herring audio-supply = <&vccio_wl>; 200*724ba675SRob Herring bb-supply = <&vcc_io>; 201*724ba675SRob Herring dvp-supply = <&dovdd_1v8>; 202*724ba675SRob Herring flash0-supply = <&vcc_flash>; 203*724ba675SRob Herring flash1-supply = <&vcc_lan>; 204*724ba675SRob Herring gpio30-supply = <&vcc_io>; 205*724ba675SRob Herring gpio1830-supply = <&vcc_io>; 206*724ba675SRob Herring lcdc-supply = <&vcc_io>; 207*724ba675SRob Herring sdcard-supply = <&vccio_sd>; 208*724ba675SRob Herring wifi-supply = <&vccio_wl>; 209*724ba675SRob Herring}; 210*724ba675SRob Herring 211*724ba675SRob Herring&pinctrl { 212*724ba675SRob Herring pcfg_output_high: pcfg-output-high { 213*724ba675SRob Herring output-high; 214*724ba675SRob Herring }; 215*724ba675SRob Herring 216*724ba675SRob Herring pcfg_output_low: pcfg-output-low { 217*724ba675SRob Herring output-low; 218*724ba675SRob Herring }; 219*724ba675SRob Herring 220*724ba675SRob Herring pcfg_pull_up_drv_12ma: pcfg-pull-up-drv-12ma { 221*724ba675SRob Herring bias-pull-up; 222*724ba675SRob Herring drive-strength = <12>; 223*724ba675SRob Herring }; 224*724ba675SRob Herring 225*724ba675SRob Herring act8846 { 226*724ba675SRob Herring pwr_hold: pwr-hold { 227*724ba675SRob Herring rockchip,pins = <0 RK_PA1 RK_FUNC_GPIO &pcfg_output_high>; 228*724ba675SRob Herring }; 229*724ba675SRob Herring 230*724ba675SRob Herring pmic_vsel: pmic-vsel { 231*724ba675SRob Herring rockchip,pins = <7 RK_PB6 RK_FUNC_GPIO &pcfg_output_low>; 232*724ba675SRob Herring }; 233*724ba675SRob Herring }; 234*724ba675SRob Herring 235*724ba675SRob Herring gmac { 236*724ba675SRob Herring phy_int: phy-int { 237*724ba675SRob Herring rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_up>; 238*724ba675SRob Herring }; 239*724ba675SRob Herring 240*724ba675SRob Herring phy_pmeb: phy-pmeb { 241*724ba675SRob Herring rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>; 242*724ba675SRob Herring }; 243*724ba675SRob Herring 244*724ba675SRob Herring phy_rst: phy-rst { 245*724ba675SRob Herring rockchip,pins = <4 RK_PB0 RK_FUNC_GPIO &pcfg_output_high>; 246*724ba675SRob Herring }; 247*724ba675SRob Herring }; 248*724ba675SRob Herring}; 249*724ba675SRob Herring 250*724ba675SRob Herring&tsadc { 251*724ba675SRob Herring rockchip,hw-tshut-mode = <0>; 252*724ba675SRob Herring rockchip,hw-tshut-polarity = <0>; 253*724ba675SRob Herring status = "okay"; 254*724ba675SRob Herring}; 255*724ba675SRob Herring 256*724ba675SRob Herring&vopb { 257*724ba675SRob Herring status = "okay"; 258*724ba675SRob Herring}; 259*724ba675SRob Herring 260*724ba675SRob Herring&vopb_mmu { 261*724ba675SRob Herring status = "okay"; 262*724ba675SRob Herring}; 263*724ba675SRob Herring 264*724ba675SRob Herring&vopl { 265*724ba675SRob Herring status = "okay"; 266*724ba675SRob Herring}; 267*724ba675SRob Herring 268*724ba675SRob Herring&vopl_mmu { 269*724ba675SRob Herring status = "okay"; 270*724ba675SRob Herring}; 271*724ba675SRob Herring 272*724ba675SRob Herring&wdt { 273*724ba675SRob Herring status = "okay"; 274*724ba675SRob Herring}; 275