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