1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Copyright (c) 2023 Edgeble AI Technologies Pvt. Ltd. 4 */ 5 6#include <dt-bindings/gpio/gpio.h> 7#include <dt-bindings/leds/common.h> 8 9/ { 10 aliases { 11 mmc0 = &sdhci; 12 }; 13 14 gpio-leds { 15 compatible = "gpio-leds"; 16 17 led_user: led-0 { 18 color = <LED_COLOR_ID_GREEN>; 19 function = LED_FUNCTION_HEARTBEAT; 20 gpios = <&gpio0 RK_PC2 GPIO_ACTIVE_HIGH>; 21 linux,default-trigger = "heartbeat"; 22 pinctrl-names = "default"; 23 pinctrl-0 = <&led_user_en>; 24 }; 25 }; 26 27 vcc12v_dcin: vcc12v-dcin-regulator { 28 compatible = "regulator-fixed"; 29 regulator-name = "vcc12v_dcin"; 30 regulator-always-on; 31 regulator-boot-on; 32 regulator-min-microvolt = <12000000>; 33 regulator-max-microvolt = <12000000>; 34 }; 35 36 vcc5v0_sys: vcc5v0-sys-regulator { 37 compatible = "regulator-fixed"; 38 regulator-name = "vcc5v0_sys"; 39 regulator-always-on; 40 regulator-boot-on; 41 regulator-min-microvolt = <5000000>; 42 regulator-max-microvolt = <5000000>; 43 vin-supply = <&vcc12v_dcin>; 44 }; 45 46 vcc_1v1_nldo_s3: vcc-1v1-nldo-s3-regulator { 47 compatible = "regulator-fixed"; 48 regulator-name = "vcc_1v1_nldo_s3"; 49 regulator-always-on; 50 regulator-boot-on; 51 regulator-min-microvolt = <1100000>; 52 regulator-max-microvolt = <1100000>; 53 vin-supply = <&vcc5v0_sys>; 54 }; 55}; 56 57&cpu_b0 { 58 cpu-supply = <&vdd_cpu_big0_s0>; 59}; 60 61&cpu_b1 { 62 cpu-supply = <&vdd_cpu_big0_s0>; 63}; 64 65&cpu_b2 { 66 cpu-supply = <&vdd_cpu_big1_s0>; 67}; 68 69&cpu_b3 { 70 cpu-supply = <&vdd_cpu_big1_s0>; 71}; 72 73&cpu_l0 { 74 cpu-supply = <&vdd_cpu_lit_s0>; 75}; 76 77&cpu_l1 { 78 cpu-supply = <&vdd_cpu_lit_s0>; 79}; 80 81&cpu_l2 { 82 cpu-supply = <&vdd_cpu_lit_s0>; 83}; 84 85&cpu_l3 { 86 cpu-supply = <&vdd_cpu_lit_s0>; 87}; 88 89&i2c0 { 90 pinctrl-names = "default"; 91 pinctrl-0 = <&i2c0m2_xfer>; 92 status = "okay"; 93 94 vdd_cpu_big0_s0: regulator@42 { 95 compatible = "rockchip,rk8602"; 96 reg = <0x42>; 97 fcs,suspend-voltage-selector = <1>; 98 regulator-name = "vdd_cpu_big0_s0"; 99 regulator-always-on; 100 regulator-boot-on; 101 regulator-min-microvolt = <550000>; 102 regulator-max-microvolt = <1050000>; 103 regulator-ramp-delay = <2300>; 104 vin-supply = <&vcc5v0_sys>; 105 106 regulator-state-mem { 107 regulator-off-in-suspend; 108 }; 109 }; 110 111 vdd_cpu_big1_s0: regulator@43 { 112 compatible = "rockchip,rk8603", "rockchip,rk8602"; 113 reg = <0x43>; 114 fcs,suspend-voltage-selector = <1>; 115 regulator-name = "vdd_cpu_big1_s0"; 116 regulator-always-on; 117 regulator-boot-on; 118 regulator-min-microvolt = <550000>; 119 regulator-max-microvolt = <1050000>; 120 regulator-ramp-delay = <2300>; 121 vin-supply = <&vcc5v0_sys>; 122 123 regulator-state-mem { 124 regulator-off-in-suspend; 125 }; 126 }; 127}; 128 129&pinctrl { 130 leds { 131 led_user_en: led_user_en { 132 rockchip,pins = <0 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>; 133 }; 134 }; 135}; 136 137&sdhci { 138 bus-width = <8>; 139 no-sdio; 140 no-sd; 141 non-removable; 142 mmc-hs400-1_8v; 143 mmc-hs400-enhanced-strobe; 144 status = "okay"; 145}; 146 147&spi2 { 148 status = "okay"; 149 assigned-clocks = <&cru CLK_SPI2>; 150 assigned-clock-rates = <200000000>; 151 num-cs = <1>; 152 pinctrl-names = "default"; 153 pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>; 154 155 pmic@0 { 156 compatible = "rockchip,rk806"; 157 spi-max-frequency = <1000000>; 158 reg = <0x0>; 159 interrupt-parent = <&gpio0>; 160 interrupts = <RK_PA7 IRQ_TYPE_LEVEL_LOW>; 161 pinctrl-names = "default"; 162 pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>, 163 <&rk806_dvs2_null>, <&rk806_dvs3_null>; 164 165 vcc1-supply = <&vcc5v0_sys>; 166 vcc2-supply = <&vcc5v0_sys>; 167 vcc3-supply = <&vcc5v0_sys>; 168 vcc4-supply = <&vcc5v0_sys>; 169 vcc5-supply = <&vcc5v0_sys>; 170 vcc6-supply = <&vcc5v0_sys>; 171 vcc7-supply = <&vcc5v0_sys>; 172 vcc8-supply = <&vcc5v0_sys>; 173 vcc9-supply = <&vcc5v0_sys>; 174 vcc10-supply = <&vcc5v0_sys>; 175 vcc11-supply = <&vcc_2v0_pldo_s3>; 176 vcc12-supply = <&vcc5v0_sys>; 177 vcc13-supply = <&vcc_1v1_nldo_s3>; 178 vcc14-supply = <&vcc_1v1_nldo_s3>; 179 vcca-supply = <&vcc5v0_sys>; 180 181 gpio-controller; 182 #gpio-cells = <2>; 183 184 rk806_dvs1_null: dvs1-null-pins { 185 pins = "gpio_pwrctrl2"; 186 function = "pin_fun0"; 187 }; 188 189 rk806_dvs2_null: dvs2-null-pins { 190 pins = "gpio_pwrctrl2"; 191 function = "pin_fun0"; 192 }; 193 194 rk806_dvs3_null: dvs3-null-pins { 195 pins = "gpio_pwrctrl3"; 196 function = "pin_fun0"; 197 }; 198 199 regulators { 200 vdd_gpu_s0: vdd_gpu_mem_s0: dcdc-reg1 { 201 regulator-name = "vdd_gpu_s0"; 202 regulator-boot-on; 203 regulator-min-microvolt = <550000>; 204 regulator-max-microvolt = <950000>; 205 regulator-ramp-delay = <12500>; 206 regulator-enable-ramp-delay = <400>; 207 208 regulator-state-mem { 209 regulator-off-in-suspend; 210 }; 211 }; 212 213 vdd_cpu_lit_s0: vdd_cpu_lit_mem_s0: dcdc-reg2 { 214 regulator-name = "vdd_cpu_lit_s0"; 215 regulator-always-on; 216 regulator-boot-on; 217 regulator-min-microvolt = <550000>; 218 regulator-max-microvolt = <950000>; 219 regulator-ramp-delay = <12500>; 220 221 regulator-state-mem { 222 regulator-off-in-suspend; 223 }; 224 }; 225 226 vdd_log_s0: dcdc-reg3 { 227 regulator-name = "vdd_log_s0"; 228 regulator-always-on; 229 regulator-boot-on; 230 regulator-min-microvolt = <675000>; 231 regulator-max-microvolt = <750000>; 232 regulator-ramp-delay = <12500>; 233 234 regulator-state-mem { 235 regulator-off-in-suspend; 236 regulator-suspend-microvolt = <750000>; 237 }; 238 }; 239 240 vdd_vdenc_s0: vdd_vdenc_mem_s0: dcdc-reg4 { 241 regulator-name = "vdd_vdenc_s0"; 242 regulator-always-on; 243 regulator-boot-on; 244 regulator-min-microvolt = <550000>; 245 regulator-max-microvolt = <950000>; 246 regulator-ramp-delay = <12500>; 247 248 regulator-state-mem { 249 regulator-off-in-suspend; 250 }; 251 }; 252 253 vdd_ddr_s0: dcdc-reg5 { 254 regulator-name = "vdd_ddr_s0"; 255 regulator-always-on; 256 regulator-boot-on; 257 regulator-min-microvolt = <675000>; 258 regulator-max-microvolt = <900000>; 259 regulator-ramp-delay = <12500>; 260 261 regulator-state-mem { 262 regulator-off-in-suspend; 263 regulator-suspend-microvolt = <850000>; 264 }; 265 }; 266 267 vdd2_ddr_s3: dcdc-reg6 { 268 regulator-name = "vdd2_ddr_s3"; 269 regulator-always-on; 270 regulator-boot-on; 271 272 regulator-state-mem { 273 regulator-on-in-suspend; 274 }; 275 }; 276 277 vcc_2v0_pldo_s3: dcdc-reg7 { 278 regulator-name = "vdd_2v0_pldo_s3"; 279 regulator-always-on; 280 regulator-boot-on; 281 regulator-min-microvolt = <2000000>; 282 regulator-max-microvolt = <2000000>; 283 regulator-ramp-delay = <12500>; 284 285 regulator-state-mem { 286 regulator-on-in-suspend; 287 regulator-suspend-microvolt = <2000000>; 288 }; 289 }; 290 291 vcc_3v3_s3: dcdc-reg8 { 292 regulator-name = "vcc_3v3_s3"; 293 regulator-always-on; 294 regulator-boot-on; 295 regulator-min-microvolt = <3300000>; 296 regulator-max-microvolt = <3300000>; 297 298 regulator-state-mem { 299 regulator-on-in-suspend; 300 regulator-suspend-microvolt = <3300000>; 301 }; 302 }; 303 304 vddq_ddr_s0: dcdc-reg9 { 305 regulator-name = "vddq_ddr_s0"; 306 regulator-always-on; 307 regulator-boot-on; 308 309 regulator-state-mem { 310 regulator-off-in-suspend; 311 }; 312 }; 313 314 vcc_1v8_s3: dcdc-reg10 { 315 regulator-name = "vcc_1v8_s3"; 316 regulator-always-on; 317 regulator-boot-on; 318 regulator-min-microvolt = <1800000>; 319 regulator-max-microvolt = <1800000>; 320 321 regulator-state-mem { 322 regulator-on-in-suspend; 323 regulator-suspend-microvolt = <1800000>; 324 }; 325 }; 326 327 avcc_1v8_s0: pldo-reg1 { 328 regulator-name = "avcc_1v8_s0"; 329 regulator-always-on; 330 regulator-boot-on; 331 regulator-min-microvolt = <1800000>; 332 regulator-max-microvolt = <1800000>; 333 334 regulator-state-mem { 335 regulator-off-in-suspend; 336 }; 337 }; 338 339 vcc_1v8_s0: pldo-reg2 { 340 regulator-name = "vcc_1v8_s0"; 341 regulator-always-on; 342 regulator-boot-on; 343 regulator-min-microvolt = <1800000>; 344 regulator-max-microvolt = <1800000>; 345 346 regulator-state-mem { 347 regulator-off-in-suspend; 348 regulator-suspend-microvolt = <1800000>; 349 }; 350 }; 351 352 avdd_1v2_s0: pldo-reg3 { 353 regulator-name = "avdd_1v2_s0"; 354 regulator-always-on; 355 regulator-boot-on; 356 regulator-min-microvolt = <1200000>; 357 regulator-max-microvolt = <1200000>; 358 359 regulator-state-mem { 360 regulator-off-in-suspend; 361 }; 362 }; 363 364 vcc_3v3_s0: pldo-reg4 { 365 regulator-name = "vcc_3v3_s0"; 366 regulator-always-on; 367 regulator-boot-on; 368 regulator-min-microvolt = <3300000>; 369 regulator-max-microvolt = <3300000>; 370 regulator-ramp-delay = <12500>; 371 372 regulator-state-mem { 373 regulator-off-in-suspend; 374 }; 375 }; 376 377 vccio_sd_s0: pldo-reg5 { 378 regulator-name = "vccio_sd_s0"; 379 regulator-always-on; 380 regulator-boot-on; 381 regulator-min-microvolt = <1800000>; 382 regulator-max-microvolt = <3300000>; 383 regulator-ramp-delay = <12500>; 384 385 regulator-state-mem { 386 regulator-off-in-suspend; 387 }; 388 }; 389 390 pldo6_s3: pldo-reg6 { 391 regulator-name = "pldo6_s3"; 392 regulator-always-on; 393 regulator-boot-on; 394 regulator-min-microvolt = <1800000>; 395 regulator-max-microvolt = <1800000>; 396 397 regulator-state-mem { 398 regulator-on-in-suspend; 399 regulator-suspend-microvolt = <1800000>; 400 }; 401 }; 402 403 vdd_0v75_s3: nldo-reg1 { 404 regulator-name = "vdd_0v75_s3"; 405 regulator-always-on; 406 regulator-boot-on; 407 regulator-min-microvolt = <750000>; 408 regulator-max-microvolt = <750000>; 409 410 regulator-state-mem { 411 regulator-on-in-suspend; 412 regulator-suspend-microvolt = <750000>; 413 }; 414 }; 415 416 vdd_ddr_pll_s0: nldo-reg2 { 417 regulator-name = "vdd_ddr_pll_s0"; 418 regulator-always-on; 419 regulator-boot-on; 420 regulator-min-microvolt = <850000>; 421 regulator-max-microvolt = <850000>; 422 423 regulator-state-mem { 424 regulator-off-in-suspend; 425 regulator-suspend-microvolt = <850000>; 426 }; 427 }; 428 429 avdd_0v75_s0: nldo-reg3 { 430 regulator-name = "avdd_0v75_s0"; 431 regulator-always-on; 432 regulator-boot-on; 433 regulator-min-microvolt = <750000>; 434 regulator-max-microvolt = <750000>; 435 436 regulator-state-mem { 437 regulator-off-in-suspend; 438 }; 439 }; 440 441 vdd_0v85_s0: nldo-reg4 { 442 regulator-name = "vdd_0v85_s0"; 443 regulator-always-on; 444 regulator-boot-on; 445 regulator-min-microvolt = <850000>; 446 regulator-max-microvolt = <850000>; 447 448 regulator-state-mem { 449 regulator-off-in-suspend; 450 }; 451 }; 452 453 vdd_0v75_s0: nldo-reg5 { 454 regulator-name = "vdd_0v75_s0"; 455 regulator-always-on; 456 regulator-boot-on; 457 regulator-min-microvolt = <750000>; 458 regulator-max-microvolt = <750000>; 459 460 regulator-state-mem { 461 regulator-off-in-suspend; 462 }; 463 }; 464 }; 465 }; 466}; 467