1*d92a7c33SMichael Trimarchi// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2*d92a7c33SMichael Trimarchi/* 3*d92a7c33SMichael Trimarchi * Copyright (c) 2020 Fuzhou Rockchip Electronics Co., Ltd 4*d92a7c33SMichael Trimarchi * Copyright (c) 2020 Engicam srl 5*d92a7c33SMichael Trimarchi * Copyright (c) 2020 Amarula Solutons 6*d92a7c33SMichael Trimarchi * Copyright (c) 2020 Amarula Solutons(India) 7*d92a7c33SMichael Trimarchi */ 8*d92a7c33SMichael Trimarchi 9*d92a7c33SMichael Trimarchi#include <dt-bindings/gpio/gpio.h> 10*d92a7c33SMichael Trimarchi#include <dt-bindings/pinctrl/rockchip.h> 11*d92a7c33SMichael Trimarchi 12*d92a7c33SMichael Trimarchi/ { 13*d92a7c33SMichael Trimarchi compatible = "engicam,px30-core", "rockchip,px30"; 14*d92a7c33SMichael Trimarchi}; 15*d92a7c33SMichael Trimarchi 16*d92a7c33SMichael Trimarchi&cpu0 { 17*d92a7c33SMichael Trimarchi cpu-supply = <&vdd_arm>; 18*d92a7c33SMichael Trimarchi}; 19*d92a7c33SMichael Trimarchi 20*d92a7c33SMichael Trimarchi&cpu1 { 21*d92a7c33SMichael Trimarchi cpu-supply = <&vdd_arm>; 22*d92a7c33SMichael Trimarchi}; 23*d92a7c33SMichael Trimarchi 24*d92a7c33SMichael Trimarchi&cpu2 { 25*d92a7c33SMichael Trimarchi cpu-supply = <&vdd_arm>; 26*d92a7c33SMichael Trimarchi}; 27*d92a7c33SMichael Trimarchi 28*d92a7c33SMichael Trimarchi&cpu3 { 29*d92a7c33SMichael Trimarchi cpu-supply = <&vdd_arm>; 30*d92a7c33SMichael Trimarchi}; 31*d92a7c33SMichael Trimarchi 32*d92a7c33SMichael Trimarchi&emmc { 33*d92a7c33SMichael Trimarchi cap-mmc-highspeed; 34*d92a7c33SMichael Trimarchi mmc-hs200-1_8v; 35*d92a7c33SMichael Trimarchi non-removable; 36*d92a7c33SMichael Trimarchi status = "okay"; 37*d92a7c33SMichael Trimarchi}; 38*d92a7c33SMichael Trimarchi 39*d92a7c33SMichael Trimarchi&i2c0 { 40*d92a7c33SMichael Trimarchi status = "okay"; 41*d92a7c33SMichael Trimarchi 42*d92a7c33SMichael Trimarchi rk809: pmic@20 { 43*d92a7c33SMichael Trimarchi compatible = "rockchip,rk809"; 44*d92a7c33SMichael Trimarchi reg = <0x20>; 45*d92a7c33SMichael Trimarchi interrupt-parent = <&gpio0>; 46*d92a7c33SMichael Trimarchi interrupts = <RK_PA7 IRQ_TYPE_LEVEL_LOW>; 47*d92a7c33SMichael Trimarchi pinctrl-names = "default"; 48*d92a7c33SMichael Trimarchi pinctrl-0 = <&pmic_int>; 49*d92a7c33SMichael Trimarchi rockchip,system-power-controller; 50*d92a7c33SMichael Trimarchi wakeup-source; 51*d92a7c33SMichael Trimarchi #clock-cells = <1>; 52*d92a7c33SMichael Trimarchi clock-output-names = "rk808-clkout1", "rk808-clkout2"; 53*d92a7c33SMichael Trimarchi 54*d92a7c33SMichael Trimarchi vcc1-supply = <&vcc5v0_sys>; 55*d92a7c33SMichael Trimarchi vcc2-supply = <&vcc5v0_sys>; 56*d92a7c33SMichael Trimarchi vcc3-supply = <&vcc5v0_sys>; 57*d92a7c33SMichael Trimarchi vcc4-supply = <&vcc5v0_sys>; 58*d92a7c33SMichael Trimarchi vcc5-supply = <&vcc3v3_sys>; 59*d92a7c33SMichael Trimarchi vcc6-supply = <&vcc3v3_sys>; 60*d92a7c33SMichael Trimarchi vcc7-supply = <&vcc3v3_sys>; 61*d92a7c33SMichael Trimarchi vcc8-supply = <&vcc3v3_sys>; 62*d92a7c33SMichael Trimarchi vcc9-supply = <&vcc5v0_sys>; 63*d92a7c33SMichael Trimarchi 64*d92a7c33SMichael Trimarchi regulators { 65*d92a7c33SMichael Trimarchi vdd_log: DCDC_REG1 { 66*d92a7c33SMichael Trimarchi regulator-name = "vdd_log"; 67*d92a7c33SMichael Trimarchi regulator-always-on; 68*d92a7c33SMichael Trimarchi regulator-boot-on; 69*d92a7c33SMichael Trimarchi regulator-min-microvolt = <950000>; 70*d92a7c33SMichael Trimarchi regulator-max-microvolt = <1350000>; 71*d92a7c33SMichael Trimarchi regulator-ramp-delay = <6001>; 72*d92a7c33SMichael Trimarchi 73*d92a7c33SMichael Trimarchi regulator-state-mem { 74*d92a7c33SMichael Trimarchi regulator-on-in-suspend; 75*d92a7c33SMichael Trimarchi regulator-suspend-microvolt = <950000>; 76*d92a7c33SMichael Trimarchi }; 77*d92a7c33SMichael Trimarchi }; 78*d92a7c33SMichael Trimarchi 79*d92a7c33SMichael Trimarchi vdd_arm: DCDC_REG2 { 80*d92a7c33SMichael Trimarchi regulator-name = "vdd_arm"; 81*d92a7c33SMichael Trimarchi regulator-always-on; 82*d92a7c33SMichael Trimarchi regulator-boot-on; 83*d92a7c33SMichael Trimarchi regulator-min-microvolt = <950000>; 84*d92a7c33SMichael Trimarchi regulator-max-microvolt = <1350000>; 85*d92a7c33SMichael Trimarchi regulator-ramp-delay = <6001>; 86*d92a7c33SMichael Trimarchi 87*d92a7c33SMichael Trimarchi regulator-state-mem { 88*d92a7c33SMichael Trimarchi regulator-off-in-suspend; 89*d92a7c33SMichael Trimarchi regulator-suspend-microvolt = <950000>; 90*d92a7c33SMichael Trimarchi }; 91*d92a7c33SMichael Trimarchi }; 92*d92a7c33SMichael Trimarchi 93*d92a7c33SMichael Trimarchi vcc_ddr: DCDC_REG3 { 94*d92a7c33SMichael Trimarchi regulator-name = "vcc_ddr"; 95*d92a7c33SMichael Trimarchi regulator-always-on; 96*d92a7c33SMichael Trimarchi regulator-boot-on; 97*d92a7c33SMichael Trimarchi 98*d92a7c33SMichael Trimarchi regulator-state-mem { 99*d92a7c33SMichael Trimarchi regulator-on-in-suspend; 100*d92a7c33SMichael Trimarchi }; 101*d92a7c33SMichael Trimarchi }; 102*d92a7c33SMichael Trimarchi 103*d92a7c33SMichael Trimarchi vcc_3v3: DCDC_REG4 { 104*d92a7c33SMichael Trimarchi regulator-name = "vcc_3v3"; 105*d92a7c33SMichael Trimarchi regulator-always-on; 106*d92a7c33SMichael Trimarchi regulator-boot-on; 107*d92a7c33SMichael Trimarchi regulator-min-microvolt = <3300000>; 108*d92a7c33SMichael Trimarchi regulator-max-microvolt = <3300000>; 109*d92a7c33SMichael Trimarchi 110*d92a7c33SMichael Trimarchi regulator-state-mem { 111*d92a7c33SMichael Trimarchi regulator-on-in-suspend; 112*d92a7c33SMichael Trimarchi regulator-suspend-microvolt = <3300000>; 113*d92a7c33SMichael Trimarchi }; 114*d92a7c33SMichael Trimarchi }; 115*d92a7c33SMichael Trimarchi 116*d92a7c33SMichael Trimarchi vcc3v3_sys: DCDC_REG5 { 117*d92a7c33SMichael Trimarchi regulator-name = "vcc3v3_sys"; 118*d92a7c33SMichael Trimarchi regulator-always-on; 119*d92a7c33SMichael Trimarchi regulator-boot-on; 120*d92a7c33SMichael Trimarchi regulator-min-microvolt = <3300000>; 121*d92a7c33SMichael Trimarchi regulator-max-microvolt = <3300000>; 122*d92a7c33SMichael Trimarchi 123*d92a7c33SMichael Trimarchi regulator-state-mem { 124*d92a7c33SMichael Trimarchi regulator-on-in-suspend; 125*d92a7c33SMichael Trimarchi regulator-suspend-microvolt = <3300000>; 126*d92a7c33SMichael Trimarchi }; 127*d92a7c33SMichael Trimarchi }; 128*d92a7c33SMichael Trimarchi 129*d92a7c33SMichael Trimarchi vcc_1v0: LDO_REG1 { 130*d92a7c33SMichael Trimarchi regulator-name = "vcc_1v0"; 131*d92a7c33SMichael Trimarchi regulator-always-on; 132*d92a7c33SMichael Trimarchi regulator-boot-on; 133*d92a7c33SMichael Trimarchi regulator-min-microvolt = <1000000>; 134*d92a7c33SMichael Trimarchi regulator-max-microvolt = <1000000>; 135*d92a7c33SMichael Trimarchi 136*d92a7c33SMichael Trimarchi regulator-state-mem { 137*d92a7c33SMichael Trimarchi regulator-on-in-suspend; 138*d92a7c33SMichael Trimarchi regulator-suspend-microvolt = <1000000>; 139*d92a7c33SMichael Trimarchi }; 140*d92a7c33SMichael Trimarchi }; 141*d92a7c33SMichael Trimarchi 142*d92a7c33SMichael Trimarchi vcc_1v8: LDO_REG2 { 143*d92a7c33SMichael Trimarchi regulator-name = "vcc_1v8"; 144*d92a7c33SMichael Trimarchi regulator-always-on; 145*d92a7c33SMichael Trimarchi regulator-boot-on; 146*d92a7c33SMichael Trimarchi regulator-min-microvolt = <1800000>; 147*d92a7c33SMichael Trimarchi regulator-max-microvolt = <1800000>; 148*d92a7c33SMichael Trimarchi 149*d92a7c33SMichael Trimarchi regulator-state-mem { 150*d92a7c33SMichael Trimarchi regulator-on-in-suspend; 151*d92a7c33SMichael Trimarchi regulator-suspend-microvolt = <1800000>; 152*d92a7c33SMichael Trimarchi }; 153*d92a7c33SMichael Trimarchi }; 154*d92a7c33SMichael Trimarchi 155*d92a7c33SMichael Trimarchi vdd_1v0: LDO_REG3 { 156*d92a7c33SMichael Trimarchi regulator-name = "vdd_1v0"; 157*d92a7c33SMichael Trimarchi regulator-always-on; 158*d92a7c33SMichael Trimarchi regulator-boot-on; 159*d92a7c33SMichael Trimarchi regulator-min-microvolt = <1000000>; 160*d92a7c33SMichael Trimarchi regulator-max-microvolt = <1000000>; 161*d92a7c33SMichael Trimarchi 162*d92a7c33SMichael Trimarchi regulator-state-mem { 163*d92a7c33SMichael Trimarchi regulator-on-in-suspend; 164*d92a7c33SMichael Trimarchi regulator-suspend-microvolt = <1000000>; 165*d92a7c33SMichael Trimarchi }; 166*d92a7c33SMichael Trimarchi }; 167*d92a7c33SMichael Trimarchi 168*d92a7c33SMichael Trimarchi vcc3v0_pmu: LDO_REG4 { 169*d92a7c33SMichael Trimarchi regulator-name = "vcc3v0_pmu"; 170*d92a7c33SMichael Trimarchi regulator-always-on; 171*d92a7c33SMichael Trimarchi regulator-boot-on; 172*d92a7c33SMichael Trimarchi regulator-min-microvolt = <3300000>; 173*d92a7c33SMichael Trimarchi regulator-max-microvolt = <3300000>; 174*d92a7c33SMichael Trimarchi 175*d92a7c33SMichael Trimarchi regulator-state-mem { 176*d92a7c33SMichael Trimarchi regulator-on-in-suspend; 177*d92a7c33SMichael Trimarchi regulator-suspend-microvolt = <3300000>; 178*d92a7c33SMichael Trimarchi 179*d92a7c33SMichael Trimarchi }; 180*d92a7c33SMichael Trimarchi }; 181*d92a7c33SMichael Trimarchi 182*d92a7c33SMichael Trimarchi vccio_sd: LDO_REG5 { 183*d92a7c33SMichael Trimarchi regulator-name = "vccio_sd"; 184*d92a7c33SMichael Trimarchi regulator-always-on; 185*d92a7c33SMichael Trimarchi regulator-boot-on; 186*d92a7c33SMichael Trimarchi regulator-min-microvolt = <1800000>; 187*d92a7c33SMichael Trimarchi regulator-max-microvolt = <3300000>; 188*d92a7c33SMichael Trimarchi 189*d92a7c33SMichael Trimarchi regulator-state-mem { 190*d92a7c33SMichael Trimarchi regulator-on-in-suspend; 191*d92a7c33SMichael Trimarchi regulator-suspend-microvolt = <3300000>; 192*d92a7c33SMichael Trimarchi }; 193*d92a7c33SMichael Trimarchi }; 194*d92a7c33SMichael Trimarchi 195*d92a7c33SMichael Trimarchi vcc5v0_host: SWITCH_REG2 { 196*d92a7c33SMichael Trimarchi regulator-name = "vcc5v0_host"; 197*d92a7c33SMichael Trimarchi regulator-always-on; 198*d92a7c33SMichael Trimarchi regulator-boot-on; 199*d92a7c33SMichael Trimarchi }; 200*d92a7c33SMichael Trimarchi }; 201*d92a7c33SMichael Trimarchi }; 202*d92a7c33SMichael Trimarchi}; 203*d92a7c33SMichael Trimarchi 204*d92a7c33SMichael Trimarchi&io_domains { 205*d92a7c33SMichael Trimarchi vccio1-supply = <&vcc_3v3>; 206*d92a7c33SMichael Trimarchi vccio2-supply = <&vcc_3v3>; 207*d92a7c33SMichael Trimarchi vccio3-supply = <&vcc_3v3>; 208*d92a7c33SMichael Trimarchi vccio4-supply = <&vcc_3v3>; 209*d92a7c33SMichael Trimarchi vccio5-supply = <&vcc_3v3>; 210*d92a7c33SMichael Trimarchi vccio6-supply = <&vcc_1v8>; 211*d92a7c33SMichael Trimarchi status = "okay"; 212*d92a7c33SMichael Trimarchi}; 213*d92a7c33SMichael Trimarchi 214*d92a7c33SMichael Trimarchi&pinctrl { 215*d92a7c33SMichael Trimarchi pmic { 216*d92a7c33SMichael Trimarchi pmic_int: pmic_int { 217*d92a7c33SMichael Trimarchi rockchip,pins = <0 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>; 218*d92a7c33SMichael Trimarchi }; 219*d92a7c33SMichael Trimarchi }; 220*d92a7c33SMichael Trimarchi}; 221*d92a7c33SMichael Trimarchi 222*d92a7c33SMichael Trimarchi&pmu_io_domains { 223*d92a7c33SMichael Trimarchi pmuio1-supply = <&vcc_3v3>; 224*d92a7c33SMichael Trimarchi pmuio2-supply = <&vcc_3v3>; 225*d92a7c33SMichael Trimarchi status = "okay"; 226*d92a7c33SMichael Trimarchi}; 227*d92a7c33SMichael Trimarchi 228*d92a7c33SMichael Trimarchi&tsadc { 229*d92a7c33SMichael Trimarchi rockchip,hw-tshut-mode = <1>; 230*d92a7c33SMichael Trimarchi rockchip,hw-tshut-polarity = <1>; 231*d92a7c33SMichael Trimarchi status = "okay"; 232*d92a7c33SMichael Trimarchi}; 233