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