0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002 /*
0003 * Copyright (c) 2020 Fuzhou Rockchip Electronics Co., Ltd
0004 * Copyright (c) 2020 Engicam srl
0005 * Copyright (c) 2020 Amarula Solutions
0006 * Copyright (c) 2020 Amarula Solutions(India)
0007 */
0008
0009 #include <dt-bindings/gpio/gpio.h>
0010 #include <dt-bindings/pinctrl/rockchip.h>
0011
0012 / {
0013 compatible = "engicam,px30-core", "rockchip,px30";
0014
0015 aliases {
0016 mmc0 = &emmc;
0017 };
0018 };
0019
0020 &cpu0 {
0021 cpu-supply = <&vdd_arm>;
0022 };
0023
0024 &cpu1 {
0025 cpu-supply = <&vdd_arm>;
0026 };
0027
0028 &cpu2 {
0029 cpu-supply = <&vdd_arm>;
0030 };
0031
0032 &cpu3 {
0033 cpu-supply = <&vdd_arm>;
0034 };
0035
0036 &emmc {
0037 cap-mmc-highspeed;
0038 mmc-hs200-1_8v;
0039 non-removable;
0040 status = "okay";
0041 };
0042
0043 &i2c0 {
0044 status = "okay";
0045
0046 rk809: pmic@20 {
0047 compatible = "rockchip,rk809";
0048 reg = <0x20>;
0049 interrupt-parent = <&gpio0>;
0050 interrupts = <RK_PA7 IRQ_TYPE_LEVEL_LOW>;
0051 pinctrl-names = "default";
0052 pinctrl-0 = <&pmic_int>;
0053 rockchip,system-power-controller;
0054 wakeup-source;
0055 #clock-cells = <1>;
0056 clock-output-names = "rk808-clkout1", "rk808-clkout2";
0057
0058 vcc1-supply = <&vcc5v0_sys>;
0059 vcc2-supply = <&vcc5v0_sys>;
0060 vcc3-supply = <&vcc5v0_sys>;
0061 vcc4-supply = <&vcc5v0_sys>;
0062 vcc5-supply = <&vcc3v3_sys>;
0063 vcc6-supply = <&vcc3v3_sys>;
0064 vcc7-supply = <&vcc3v3_sys>;
0065 vcc8-supply = <&vcc3v3_sys>;
0066 vcc9-supply = <&vcc5v0_sys>;
0067
0068 regulators {
0069 vdd_log: DCDC_REG1 {
0070 regulator-name = "vdd_log";
0071 regulator-always-on;
0072 regulator-boot-on;
0073 regulator-min-microvolt = <950000>;
0074 regulator-max-microvolt = <1350000>;
0075 regulator-ramp-delay = <6001>;
0076
0077 regulator-state-mem {
0078 regulator-on-in-suspend;
0079 regulator-suspend-microvolt = <950000>;
0080 };
0081 };
0082
0083 vdd_arm: DCDC_REG2 {
0084 regulator-name = "vdd_arm";
0085 regulator-always-on;
0086 regulator-boot-on;
0087 regulator-min-microvolt = <950000>;
0088 regulator-max-microvolt = <1350000>;
0089 regulator-ramp-delay = <6001>;
0090
0091 regulator-state-mem {
0092 regulator-off-in-suspend;
0093 regulator-suspend-microvolt = <950000>;
0094 };
0095 };
0096
0097 vcc_ddr: DCDC_REG3 {
0098 regulator-name = "vcc_ddr";
0099 regulator-always-on;
0100 regulator-boot-on;
0101
0102 regulator-state-mem {
0103 regulator-on-in-suspend;
0104 };
0105 };
0106
0107 vcc_3v3: DCDC_REG4 {
0108 regulator-name = "vcc_3v3";
0109 regulator-always-on;
0110 regulator-boot-on;
0111 regulator-min-microvolt = <3300000>;
0112 regulator-max-microvolt = <3300000>;
0113
0114 regulator-state-mem {
0115 regulator-on-in-suspend;
0116 regulator-suspend-microvolt = <3300000>;
0117 };
0118 };
0119
0120 vcc3v3_sys: DCDC_REG5 {
0121 regulator-name = "vcc3v3_sys";
0122 regulator-always-on;
0123 regulator-boot-on;
0124 regulator-min-microvolt = <3300000>;
0125 regulator-max-microvolt = <3300000>;
0126
0127 regulator-state-mem {
0128 regulator-on-in-suspend;
0129 regulator-suspend-microvolt = <3300000>;
0130 };
0131 };
0132
0133 vcc_1v0: LDO_REG1 {
0134 regulator-name = "vcc_1v0";
0135 regulator-always-on;
0136 regulator-boot-on;
0137 regulator-min-microvolt = <1000000>;
0138 regulator-max-microvolt = <1000000>;
0139
0140 regulator-state-mem {
0141 regulator-on-in-suspend;
0142 regulator-suspend-microvolt = <1000000>;
0143 };
0144 };
0145
0146 vcc_1v8: LDO_REG2 {
0147 regulator-name = "vcc_1v8";
0148 regulator-always-on;
0149 regulator-boot-on;
0150 regulator-min-microvolt = <1800000>;
0151 regulator-max-microvolt = <1800000>;
0152
0153 regulator-state-mem {
0154 regulator-on-in-suspend;
0155 regulator-suspend-microvolt = <1800000>;
0156 };
0157 };
0158
0159 vdd_1v0: LDO_REG3 {
0160 regulator-name = "vdd_1v0";
0161 regulator-always-on;
0162 regulator-boot-on;
0163 regulator-min-microvolt = <1000000>;
0164 regulator-max-microvolt = <1000000>;
0165
0166 regulator-state-mem {
0167 regulator-on-in-suspend;
0168 regulator-suspend-microvolt = <1000000>;
0169 };
0170 };
0171
0172 vcc3v0_pmu: LDO_REG4 {
0173 regulator-name = "vcc3v0_pmu";
0174 regulator-always-on;
0175 regulator-boot-on;
0176 regulator-min-microvolt = <3300000>;
0177 regulator-max-microvolt = <3300000>;
0178
0179 regulator-state-mem {
0180 regulator-on-in-suspend;
0181 regulator-suspend-microvolt = <3300000>;
0182
0183 };
0184 };
0185
0186 vccio_sd: LDO_REG5 {
0187 regulator-name = "vccio_sd";
0188 regulator-always-on;
0189 regulator-boot-on;
0190 regulator-min-microvolt = <1800000>;
0191 regulator-max-microvolt = <3300000>;
0192
0193 regulator-state-mem {
0194 regulator-on-in-suspend;
0195 regulator-suspend-microvolt = <3300000>;
0196 };
0197 };
0198
0199 vcc3v3_lcd: SWITCH_REG1 {
0200 regulator-boot-on;
0201 regulator-name = "vcc3v3_lcd";
0202 };
0203
0204 vcc5v0_host: SWITCH_REG2 {
0205 regulator-name = "vcc5v0_host";
0206 regulator-always-on;
0207 regulator-boot-on;
0208 };
0209 };
0210 };
0211 };
0212
0213 &io_domains {
0214 vccio1-supply = <&vcc_3v3>;
0215 vccio2-supply = <&vcc_3v3>;
0216 vccio3-supply = <&vcc_3v3>;
0217 vccio4-supply = <&vcc_3v3>;
0218 vccio5-supply = <&vcc_3v3>;
0219 vccio6-supply = <&vcc_1v8>;
0220 status = "okay";
0221 };
0222
0223 &pinctrl {
0224 pmic {
0225 pmic_int: pmic_int {
0226 rockchip,pins = <0 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>;
0227 };
0228 };
0229 };
0230
0231 &pmu_io_domains {
0232 pmuio1-supply = <&vcc_3v3>;
0233 pmuio2-supply = <&vcc_3v3>;
0234 status = "okay";
0235 };
0236
0237 &tsadc {
0238 rockchip,hw-tshut-mode = <1>;
0239 rockchip,hw-tshut-polarity = <1>;
0240 status = "okay";
0241 };