Loading...
1// SPDX-License-Identifier: GPL-2.0
2#include <dt-bindings/input/input.h>
3
4#include "qcom-msm8960.dtsi"
5
6/ {
7 model = "Qualcomm MSM8960 CDP";
8 compatible = "qcom,msm8960-cdp", "qcom,msm8960";
9
10 aliases {
11 serial0 = &gsbi5_serial;
12 };
13
14 chosen {
15 stdout-path = "serial0:115200n8";
16 };
17
18 regulators {
19 compatible = "simple-bus";
20
21 ext_l2: gpio-regulator {
22 compatible = "regulator-fixed";
23 regulator-name = "ext_l2";
24 gpio = <&msmgpio 91 0>;
25 startup-delay-us = <10000>;
26 enable-active-high;
27 };
28 };
29};
30
31&gsbi1 {
32 qcom,mode = <GSBI_PROT_SPI>;
33 pinctrl-names = "default";
34 pinctrl-0 = <&spi1_default>;
35 status = "okay";
36};
37
38&gsbi1_spi {
39 status = "okay";
40
41 ethernet@0 {
42 compatible = "micrel,ks8851";
43 reg = <0>;
44 interrupt-parent = <&msmgpio>;
45 interrupts = <90 IRQ_TYPE_LEVEL_LOW>;
46 spi-max-frequency = <5400000>;
47 vdd-supply = <&ext_l2>;
48 vdd-io-supply = <&pm8921_lvs6>;
49 reset-gpios = <&msmgpio 89 0>;
50 };
51};
52
53&gsbi5 {
54 qcom,mode = <GSBI_PROT_I2C_UART>;
55 status = "okay";
56};
57
58&gsbi5_serial {
59 status = "okay";
60};
61
62&msmgpio {
63 spi1_default: spi1-default-state {
64 mosi-pins {
65 pins = "gpio6";
66 function = "gsbi1";
67 drive-strength = <12>;
68 bias-disable;
69 };
70
71 miso-pins {
72 pins = "gpio7";
73 function = "gsbi1";
74 drive-strength = <12>;
75 bias-disable;
76 };
77
78 cs-pins {
79 pins = "gpio8";
80 function = "gsbi1";
81 drive-strength = <12>;
82 bias-disable;
83 output-low;
84 };
85
86 clk-pins {
87 pins = "gpio9";
88 function = "gsbi1";
89 drive-strength = <12>;
90 bias-disable;
91 };
92 };
93};
94
95&pmicintc {
96 keypad@148 {
97 linux,keymap = <
98 MATRIX_KEY(0, 0, KEY_VOLUMEUP)
99 MATRIX_KEY(0, 1, KEY_VOLUMEDOWN)
100 MATRIX_KEY(0, 2, KEY_CAMERA_FOCUS)
101 MATRIX_KEY(0, 3, KEY_CAMERA)
102 >;
103 keypad,num-rows = <1>;
104 keypad,num-columns = <5>;
105 };
106};
107
108&rpm {
109 regulators {
110 compatible = "qcom,rpm-pm8921-regulators";
111 vin_lvs1_3_6-supply = <&pm8921_s4>;
112 vin_lvs2-supply = <&pm8921_s4>;
113 vin_lvs4_5_7-supply = <&pm8921_s4>;
114 vdd_ncp-supply = <&pm8921_l6>;
115 vdd_l1_l2_l12_l18-supply = <&pm8921_s4>;
116 vdd_l21_l23_l29-supply = <&pm8921_s8>;
117 vdd_l24-supply = <&pm8921_s1>;
118 vdd_l25-supply = <&pm8921_s1>;
119 vdd_l27-supply = <&pm8921_s7>;
120 vdd_l28-supply = <&pm8921_s7>;
121
122 /* Buck SMPS */
123 pm8921_s1: s1 {
124 regulator-always-on;
125 regulator-min-microvolt = <1225000>;
126 regulator-max-microvolt = <1225000>;
127 qcom,switch-mode-frequency = <3200000>;
128 bias-pull-down;
129 };
130
131 pm8921_s2: s2 {
132 regulator-min-microvolt = <1300000>;
133 regulator-max-microvolt = <1300000>;
134 qcom,switch-mode-frequency = <1600000>;
135 bias-pull-down;
136 };
137
138 pm8921_s3: s3 {
139 regulator-min-microvolt = <500000>;
140 regulator-max-microvolt = <1150000>;
141 qcom,switch-mode-frequency = <4800000>;
142 bias-pull-down;
143 };
144
145 pm8921_s4: s4 {
146 regulator-always-on;
147 regulator-min-microvolt = <1800000>;
148 regulator-max-microvolt = <1800000>;
149 qcom,switch-mode-frequency = <1600000>;
150 bias-pull-down;
151 qcom,force-mode = <QCOM_RPM_FORCE_MODE_AUTO>;
152 };
153
154 pm8921_s7: s7 {
155 regulator-min-microvolt = <1150000>;
156 regulator-max-microvolt = <1150000>;
157 qcom,switch-mode-frequency = <3200000>;
158 bias-pull-down;
159 };
160
161 pm8921_s8: s8 {
162 regulator-always-on;
163 regulator-min-microvolt = <2050000>;
164 regulator-max-microvolt = <2050000>;
165 qcom,switch-mode-frequency = <1600000>;
166 bias-pull-down;
167 };
168
169 /* PMOS LDO */
170 pm8921_l1: l1 {
171 regulator-always-on;
172 regulator-min-microvolt = <1050000>;
173 regulator-max-microvolt = <1050000>;
174 bias-pull-down;
175 };
176
177 pm8921_l2: l2 {
178 regulator-min-microvolt = <1200000>;
179 regulator-max-microvolt = <1200000>;
180 bias-pull-down;
181 };
182
183 pm8921_l3: l3 {
184 regulator-min-microvolt = <3075000>;
185 regulator-max-microvolt = <3075000>;
186 bias-pull-down;
187 };
188
189 pm8921_l4: l4 {
190 regulator-always-on;
191 regulator-min-microvolt = <1800000>;
192 regulator-max-microvolt = <1800000>;
193 bias-pull-down;
194 };
195
196 pm8921_l5: l5 {
197 regulator-min-microvolt = <2950000>;
198 regulator-max-microvolt = <2950000>;
199 bias-pull-down;
200 };
201
202 pm8921_l6: l6 {
203 regulator-min-microvolt = <2950000>;
204 regulator-max-microvolt = <2950000>;
205 bias-pull-down;
206 };
207
208 pm8921_l7: l7 {
209 regulator-always-on;
210 regulator-min-microvolt = <1850000>;
211 regulator-max-microvolt = <2950000>;
212 bias-pull-down;
213 };
214
215 pm8921_l8: l8 {
216 regulator-min-microvolt = <2800000>;
217 regulator-max-microvolt = <3000000>;
218 bias-pull-down;
219 };
220
221 pm8921_l9: l9 {
222 regulator-min-microvolt = <3000000>;
223 regulator-max-microvolt = <3000000>;
224 bias-pull-down;
225 };
226
227 pm8921_l10: l10 {
228 regulator-min-microvolt = <3000000>;
229 regulator-max-microvolt = <3000000>;
230 bias-pull-down;
231 };
232
233 pm8921_l11: l11 {
234 regulator-min-microvolt = <2850000>;
235 regulator-max-microvolt = <2850000>;
236 bias-pull-down;
237 };
238
239 pm8921_l12: l12 {
240 regulator-min-microvolt = <1200000>;
241 regulator-max-microvolt = <1200000>;
242 bias-pull-down;
243 };
244
245 pm8921_l14: l14 {
246 regulator-min-microvolt = <1800000>;
247 regulator-max-microvolt = <1800000>;
248 bias-pull-down;
249 };
250
251 pm8921_l15: l15 {
252 regulator-min-microvolt = <1800000>;
253 regulator-max-microvolt = <2950000>;
254 bias-pull-down;
255 };
256
257 pm8921_l16: l16 {
258 regulator-min-microvolt = <2800000>;
259 regulator-max-microvolt = <2800000>;
260 bias-pull-down;
261 };
262
263 pm8921_l17: l17 {
264 regulator-min-microvolt = <1800000>;
265 regulator-max-microvolt = <2950000>;
266 bias-pull-down;
267 };
268
269 pm8921_l18: l18 {
270 regulator-min-microvolt = <1300000>;
271 regulator-max-microvolt = <1300000>;
272 bias-pull-down;
273 };
274
275 pm8921_l21: l21 {
276 regulator-min-microvolt = <1900000>;
277 regulator-max-microvolt = <1900000>;
278 bias-pull-down;
279 };
280
281 pm8921_l22: l22 {
282 regulator-min-microvolt = <2750000>;
283 regulator-max-microvolt = <2750000>;
284 bias-pull-down;
285 };
286
287 pm8921_l23: l23 {
288 regulator-always-on;
289 regulator-min-microvolt = <1800000>;
290 regulator-max-microvolt = <1800000>;
291 bias-pull-down;
292 };
293
294 pm8921_l24: l24 {
295 regulator-min-microvolt = <750000>;
296 regulator-max-microvolt = <1150000>;
297 bias-pull-down;
298 };
299
300 pm8921_l25: l25 {
301 regulator-always-on;
302 regulator-min-microvolt = <1250000>;
303 regulator-max-microvolt = <1250000>;
304 bias-pull-down;
305 };
306
307 /* Low Voltage Switch */
308 pm8921_lvs1: lvs1 {
309 bias-pull-down;
310 };
311
312 pm8921_lvs2: lvs2 {
313 bias-pull-down;
314 };
315
316 pm8921_lvs3: lvs3 {
317 bias-pull-down;
318 };
319
320 pm8921_lvs4: lvs4 {
321 bias-pull-down;
322 };
323
324 pm8921_lvs5: lvs5 {
325 bias-pull-down;
326 };
327
328 pm8921_lvs6: lvs6 {
329 bias-pull-down;
330 };
331
332 pm8921_lvs7: lvs7 {
333 bias-pull-down;
334 };
335
336 pm8921_ncp: ncp {
337 regulator-min-microvolt = <1800000>;
338 regulator-max-microvolt = <1800000>;
339 qcom,switch-mode-frequency = <1600000>;
340 };
341 };
342};
343
344/* eMMC */
345&sdcc1 {
346 status = "okay";
347};
348
349/* External micro SD card */
350&sdcc3 {
351 status = "okay";
352};
1#include <dt-bindings/input/input.h>
2
3#include "qcom-msm8960.dtsi"
4
5/ {
6 model = "Qualcomm MSM8960 CDP";
7 compatible = "qcom,msm8960-cdp", "qcom,msm8960";
8
9 aliases {
10 serial0 = &gsbi5_serial;
11 };
12
13 chosen {
14 stdout-path = "serial0:115200n8";
15 };
16
17 soc {
18 gsbi@16400000 {
19 status = "ok";
20 qcom,mode = <GSBI_PROT_I2C_UART>;
21 serial@16440000 {
22 status = "ok";
23 };
24 };
25
26 amba {
27 /* eMMC */
28 sdcc1: sdcc@12400000 {
29 status = "okay";
30 };
31
32 /* External micro SD card */
33 sdcc3: sdcc@12180000 {
34 status = "okay";
35 };
36 };
37
38 rpm@108000 {
39 regulators {
40 compatible = "qcom,rpm-pm8921-regulators";
41 vin_lvs1_3_6-supply = <&pm8921_s4>;
42 vin_lvs2-supply = <&pm8921_s4>;
43 vin_lvs4_5_7-supply = <&pm8921_s4>;
44 vdd_ncp-supply = <&pm8921_l6>;
45 vdd_l1_l2_l12_l18-supply = <&pm8921_s4>;
46 vdd_l21_l23_l29-supply = <&pm8921_s8>;
47 vdd_l24-supply = <&pm8921_s1>;
48 vdd_l25-supply = <&pm8921_s1>;
49 vdd_l27-supply = <&pm8921_s7>;
50 vdd_l28-supply = <&pm8921_s7>;
51
52 /* Buck SMPS */
53 pm8921_s1: s1 {
54 regulator-always-on;
55 regulator-min-microvolt = <1225000>;
56 regulator-max-microvolt = <1225000>;
57 qcom,switch-mode-frequency = <3200000>;
58 bias-pull-down;
59 };
60
61 pm8921_s2: s2 {
62 regulator-min-microvolt = <1300000>;
63 regulator-max-microvolt = <1300000>;
64 qcom,switch-mode-frequency = <1600000>;
65 bias-pull-down;
66 };
67
68 pm8921_s3: s3 {
69 regulator-min-microvolt = <500000>;
70 regulator-max-microvolt = <1150000>;
71 qcom,switch-mode-frequency = <4800000>;
72 bias-pull-down;
73 };
74
75 pm8921_s4: s4 {
76 regulator-always-on;
77 regulator-min-microvolt = <1800000>;
78 regulator-max-microvolt = <1800000>;
79 qcom,switch-mode-frequency = <1600000>;
80 bias-pull-down;
81 qcom,force-mode = <QCOM_RPM_FORCE_MODE_AUTO>;
82 };
83
84 pm8921_s7: s7 {
85 regulator-min-microvolt = <1150000>;
86 regulator-max-microvolt = <1150000>;
87 qcom,switch-mode-frequency = <3200000>;
88 bias-pull-down;
89 };
90
91 pm8921_s8: s8 {
92 regulator-always-on;
93 regulator-min-microvolt = <2050000>;
94 regulator-max-microvolt = <2050000>;
95 qcom,switch-mode-frequency = <1600000>;
96 bias-pull-down;
97 };
98
99 /* PMOS LDO */
100 pm8921_l1: l1 {
101 regulator-always-on;
102 regulator-min-microvolt = <1050000>;
103 regulator-max-microvolt = <1050000>;
104 bias-pull-down;
105 };
106
107 pm8921_l2: l2 {
108 regulator-min-microvolt = <1200000>;
109 regulator-max-microvolt = <1200000>;
110 bias-pull-down;
111 };
112
113 pm8921_l3: l3 {
114 regulator-min-microvolt = <3075000>;
115 regulator-max-microvolt = <3075000>;
116 bias-pull-down;
117 };
118
119 pm8921_l4: l4 {
120 regulator-always-on;
121 regulator-min-microvolt = <1800000>;
122 regulator-max-microvolt = <1800000>;
123 bias-pull-down;
124 };
125
126 pm8921_l5: l5 {
127 regulator-min-microvolt = <2950000>;
128 regulator-max-microvolt = <2950000>;
129 bias-pull-down;
130 };
131
132 pm8921_l6: l6 {
133 regulator-min-microvolt = <2950000>;
134 regulator-max-microvolt = <2950000>;
135 bias-pull-down;
136 };
137
138 pm8921_l7: l7 {
139 regulator-always-on;
140 regulator-min-microvolt = <1850000>;
141 regulator-max-microvolt = <2950000>;
142 bias-pull-down;
143 };
144
145 pm8921_l8: l8 {
146 regulator-min-microvolt = <2800000>;
147 regulator-max-microvolt = <3000000>;
148 bias-pull-down;
149 };
150
151 pm8921_l9: l9 {
152 regulator-min-microvolt = <3000000>;
153 regulator-max-microvolt = <3000000>;
154 bias-pull-down;
155 };
156
157 pm8921_l10: l10 {
158 regulator-min-microvolt = <3000000>;
159 regulator-max-microvolt = <3000000>;
160 bias-pull-down;
161 };
162
163 pm8921_l11: l11 {
164 regulator-min-microvolt = <2850000>;
165 regulator-max-microvolt = <2850000>;
166 bias-pull-down;
167 };
168
169 pm8921_l12: l12 {
170 regulator-min-microvolt = <1200000>;
171 regulator-max-microvolt = <1200000>;
172 bias-pull-down;
173 };
174
175 pm8921_l14: l14 {
176 regulator-min-microvolt = <1800000>;
177 regulator-max-microvolt = <1800000>;
178 bias-pull-down;
179 };
180
181 pm8921_l15: l15 {
182 regulator-min-microvolt = <1800000>;
183 regulator-max-microvolt = <2950000>;
184 bias-pull-down;
185 };
186
187 pm8921_l16: l16 {
188 regulator-min-microvolt = <2800000>;
189 regulator-max-microvolt = <2800000>;
190 bias-pull-down;
191 };
192
193 pm8921_l17: l17 {
194 regulator-min-microvolt = <1800000>;
195 regulator-max-microvolt = <2950000>;
196 bias-pull-down;
197 };
198
199 pm8921_l18: l18 {
200 regulator-min-microvolt = <1300000>;
201 regulator-max-microvolt = <1300000>;
202 bias-pull-down;
203 };
204
205 pm8921_l21: l21 {
206 regulator-min-microvolt = <1900000>;
207 regulator-max-microvolt = <1900000>;
208 bias-pull-down;
209 };
210
211 pm8921_l22: l22 {
212 regulator-min-microvolt = <2750000>;
213 regulator-max-microvolt = <2750000>;
214 bias-pull-down;
215 };
216
217 pm8921_l23: l23 {
218 regulator-always-on;
219 regulator-min-microvolt = <1800000>;
220 regulator-max-microvolt = <1800000>;
221 bias-pull-down;
222 };
223
224 pm8921_l24: l24 {
225 regulator-min-microvolt = <750000>;
226 regulator-max-microvolt = <1150000>;
227 bias-pull-down;
228 };
229
230 pm8921_l25: l25 {
231 regulator-always-on;
232 regulator-min-microvolt = <1250000>;
233 regulator-max-microvolt = <1250000>;
234 bias-pull-down;
235 };
236
237 /* Low Voltage Switch */
238 pm8921_lvs1: lvs1 {
239 bias-pull-down;
240 };
241
242 pm8921_lvs2: lvs2 {
243 bias-pull-down;
244 };
245
246 pm8921_lvs3: lvs3 {
247 bias-pull-down;
248 };
249
250 pm8921_lvs4: lvs4 {
251 bias-pull-down;
252 };
253
254 pm8921_lvs5: lvs5 {
255 bias-pull-down;
256 };
257
258 pm8921_lvs6: lvs6 {
259 bias-pull-down;
260 };
261
262 pm8921_lvs7: lvs7 {
263 bias-pull-down;
264 };
265
266 pm8921_ncp: ncp {
267 regulator-min-microvolt = <1800000>;
268 regulator-max-microvolt = <1800000>;
269 qcom,switch-mode-frequency = <1600000>;
270 };
271 };
272 };
273
274 gsbi@16000000 {
275 status = "ok";
276 qcom,mode = <GSBI_PROT_SPI>;
277 pinctrl-names = "default";
278 pinctrl-0 = <&spi1_default>;
279 spi@16080000 {
280 status = "ok";
281 eth@0 {
282 compatible = "micrel,ks8851";
283 reg = <0>;
284 interrupt-parent = <&msmgpio>;
285 interrupts = <90 8>;
286 spi-max-frequency = <5400000>;
287 vdd-supply = <&ext_l2>;
288 vdd-io-supply = <&pm8921_lvs6>;
289 reset-gpios = <&msmgpio 89 0>;
290 };
291 };
292 };
293
294 pinctrl@800000 {
295 spi1_default: spi1_default {
296 mux {
297 pins = "gpio6", "gpio7", "gpio9";
298 function = "gsbi1";
299 };
300
301 mosi {
302 pins = "gpio6";
303 drive-strength = <12>;
304 bias-disable;
305 };
306
307 miso {
308 pins = "gpio7";
309 drive-strength = <12>;
310 bias-disable;
311 };
312
313 cs {
314 pins = "gpio8";
315 drive-strength = <12>;
316 bias-disable;
317 output-low;
318 };
319
320 clk {
321 pins = "gpio9";
322 drive-strength = <12>;
323 bias-disable;
324 };
325 };
326 };
327 };
328
329 regulators {
330 compatible = "simple-bus";
331
332 ext_l2: gpio-regulator@91 {
333 compatible = "regulator-fixed";
334 regulator-name = "ext_l2";
335 gpio = <&msmgpio 91 0>;
336 startup-delay-us = <10000>;
337 enable-active-high;
338 };
339 };
340};
341
342&pmicintc {
343 keypad@148 {
344 linux,keymap = <
345 MATRIX_KEY(0, 0, KEY_VOLUMEUP)
346 MATRIX_KEY(0, 1, KEY_VOLUMEDOWN)
347 MATRIX_KEY(0, 2, KEY_CAMERA_FOCUS)
348 MATRIX_KEY(0, 3, KEY_CAMERA)
349 >;
350 keypad,num-rows = <1>;
351 keypad,num-columns = <5>;
352 };
353};