blob: a6535ac8ab1e98919874773cb129361e0dbb6b39 [file] [log] [blame]
Rajesh Bharathwaj1a5d0302019-10-31 21:43:32 -07001/*
2 * Copyright (c) 2019, The Linux Foundation. All rights reserved.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 and
6 * only version 2 as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 */
13
14&soc {
15 led_flash_rear: qcom,camera-flash@0 {
16 cell-index = <0>;
17 reg = <0x00 0x00>;
18 compatible = "qcom,camera-flash";
19 flash-source = <&pm660l_flash0 &pm660l_flash1>;
20 torch-source = <&pm660l_torch0 &pm660l_torch1>;
21 switch-source = <&pm660l_switch0>;
22 status = "disabled";
23 };
24
25 led_flash_rear_aux: qcom,camera-flash@1 {
26 cell-index = <1>;
27 reg = <0x01 0x00>;
28 compatible = "qcom,camera-flash";
29 flash-source = <&pm660l_flash0 &pm660l_flash1>;
30 torch-source = <&pm660l_torch0 &pm660l_torch1>;
31 switch-source = <&pm660l_switch0>;
32 status = "disabled";
33 };
34
35 led_flash_front: qcom,camera-flash@2 {
36 cell-index = <2>;
37 reg = <0x02 0x00>;
38 compatible = "qcom,camera-flash";
39 flash-source = <&pm660l_flash2>;
40 torch-source = <&pm660l_torch2>;
41 switch-source = <&pm660l_switch1>;
Lei Wang6d21af72019-12-23 11:04:06 +080042 gpios = <&tlmm 0 0>,
43 <&tlmm 1 0>,
44 <&tlmm 23 0>;
45 gpio-req-tbl-num = <0 1 2>;
46 gpio-req-tbl-flags = <0 0 0>;
47 gpio-req-tbl-label = "TCKING_LED_3V3_EN",
48 "TCKING_LED_1V2_EN",
49 "TCKing_LED_EN";
50 gpio-req-tbl-delay = <20 20 20>;
51 status = "ok";
Rajesh Bharathwaj1a5d0302019-10-31 21:43:32 -070052 };
53
54 actuator_regulator: gpio-regulator@0 {
55 compatible = "regulator-fixed";
56 reg = <0x00 0x00>;
57 regulator-name = "actuator_regulator";
58 regulator-min-microvolt = <2800000>;
59 regulator-max-microvolt = <2800000>;
60 regulator-enable-ramp-delay = <100>;
61 enable-active-high;
62 gpio = <&tlmm 27 0>;
63 status = "disabled";
64 };
65
66 camera_ldo: gpio-regulator@2 {
67 compatible = "regulator-fixed";
68 reg = <0x02 0x00>;
69 regulator-name = "camera_ldo";
70 regulator-min-microvolt = <1352000>;
71 regulator-max-microvolt = <1352000>;
72 regulator-enable-ramp-delay = <233>;
73 enable-active-high;
74 gpio = <&pm660l_gpios 3 0>;
75 pinctrl-names = "default";
76 pinctrl-0 = <&camera_dvdd_en_default>;
77 vin-supply = <&pm660_s6>;
78 status = "disabled";
79 };
80
81 camera_rear_ldo: gpio-regulator@1 {
82 compatible = "regulator-fixed";
83 reg = <0x01 0x00>;
84 regulator-name = "camera_rear_ldo";
85 regulator-min-microvolt = <1352000>;
86 regulator-max-microvolt = <1352000>;
87 regulator-enable-ramp-delay = <135>;
88 enable-active-high;
89 gpio = <&pm660l_gpios 4 0>;
90 pinctrl-names = "default";
91 pinctrl-0 = <&camera_rear_dvdd_en_default>;
92 vin-supply = <&pm660_s6>;
93 status = "disabled";
94 };
95
96 camera_vio_ldo: gpio-regulator@3 {
97 compatible = "regulator-fixed";
98 reg = <0x03 0x00>;
99 regulator-name = "camera_vio_ldo";
100 regulator-min-microvolt = <1800000>;
101 regulator-max-microvolt = <1800000>;
102 regulator-enable-ramp-delay = <233>;
103 enable-active-high;
104 gpio = <&tlmm 29 0>;
105 pinctrl-names = "default";
106 pinctrl-0 = <&cam_sensor_rear_vio>;
107 vin-supply = <&pm660_s4>;
108 status = "disabled";
109 };
110
111 camera_vana_ldo: gpio-regulator@4 {
112 compatible = "regulator-fixed";
113 reg = <0x04 0x00>;
114 regulator-name = "camera_vana_ldo";
115 regulator-min-microvolt = <2850000>;
116 regulator-max-microvolt = <2850000>;
117 regulator-enable-ramp-delay = <233>;
118 enable-active-high;
119 gpio = <&tlmm 8 0>;
120 pinctrl-names = "default";
121 pinctrl-0 = <&cam_sensor_rear_vana>;
122 vin-supply = <&pm660l_bob>;
123 status = "disabled";
124 };
125};
126
127&cam_cci {
128 qcom,cam-res-mgr {
129 compatible = "qcom,cam-res-mgr";
130 status = "ok";
131 };
132
133 actuator_rear: qcom,actuator@0 {
134 cell-index = <0>;
135 reg = <0x0>;
136 compatible = "qcom,actuator";
137 cci-master = <0>;
138 cam_vaf-supply = <&actuator_regulator>;
139 regulator-names = "cam_vaf";
140 rgltr-cntrl-support;
141 rgltr-min-voltage = <2800000>;
142 rgltr-max-voltage = <2800000>;
143 rgltr-load-current = <0>;
144 };
145
146 actuator_rear_aux: qcom,actuator@1 {
147 cell-index = <1>;
148 reg = <0x1>;
149 compatible = "qcom,actuator";
150 cci-master = <1>;
151 cam_vaf-supply = <&actuator_regulator>;
152 regulator-names = "cam_vaf";
153 rgltr-cntrl-support;
154 rgltr-min-voltage = <2800000>;
155 rgltr-max-voltage = <2800000>;
156 rgltr-load-current = <0>;
157 };
158
159 actuator_front: qcom,actuator@2 {
160 cell-index = <2>;
161 reg = <0x2>;
162 compatible = "qcom,actuator";
163 cci-master = <1>;
164 cam_vaf-supply = <&actuator_regulator>;
165 regulator-names = "cam_vaf";
166 rgltr-cntrl-support;
167 rgltr-min-voltage = <2800000>;
168 rgltr-max-voltage = <2800000>;
169 rgltr-load-current = <0>;
170 };
171
172 ois_rear: qcom,ois@0 {
173 cell-index = <0>;
174 reg = <0x0>;
175 compatible = "qcom,ois";
176 cci-master = <0>;
177 cam_vaf-supply = <&actuator_regulator>;
178 regulator-names = "cam_vaf";
179 rgltr-cntrl-support;
180 rgltr-min-voltage = <2800000>;
181 rgltr-max-voltage = <2800000>;
182 rgltr-load-current = <0>;
183 status = "disabled";
184 };
185
186 eeprom_rear: qcom,eeprom@0 {
187 cell-index = <0>;
188 reg = <0>;
189 compatible = "qcom,eeprom";
190 cam_vio-supply = <&camera_vio_ldo>;
191 cam_vana-supply = <&camera_vana_ldo>;
192 cam_vdig-supply = <&camera_rear_ldo>;
193 cam_clk-supply = <&titan_top_gdsc>;
194 cam_vaf-supply = <&actuator_regulator>;
195 regulator-names = "cam_vio", "cam_vana", "cam_vdig",
196 "cam_clk", "cam_vaf";
197 rgltr-cntrl-support;
198 rgltr-min-voltage = <1800000 2850000 1352000 0 2800000>;
199 rgltr-max-voltage = <1800000 2850000 1352000 0 2800000>;
200 rgltr-load-current = <0 80000 105000 0 0>;
201 gpio-no-mux = <0>;
202 pinctrl-names = "cam_default", "cam_suspend";
203 pinctrl-0 = <&cam_sensor_mclk0_active
204 &cam_sensor_rear2_active>;
205 pinctrl-1 = <&cam_sensor_mclk0_suspend
206 &cam_sensor_rear2_suspend>;
207 gpios = <&tlmm 13 0>,
208 <&tlmm 28 0>;
209 gpio-reset = <1>;
210 gpio-req-tbl-num = <0 1>;
211 gpio-req-tbl-flags = <1 0>;
212 gpio-req-tbl-label = "CAMIF_MCLK0",
213 "CAM_RESET0";
214 sensor-mode = <0>;
215 cci-master = <0>;
216 status = "disabled";
217 clocks = <&clock_camcc CAM_CC_MCLK0_CLK>;
218 clock-names = "cam_clk";
219 clock-cntl-level = "turbo";
220 clock-rates = <24000000>;
221 };
222
223 eeprom_rear_aux: qcom,eeprom@1 {
224 cell-index = <1>;
225 reg = <0x1>;
226 compatible = "qcom,eeprom";
227 cam_vio-supply = <&camera_vio_ldo>;
228 cam_vana-supply = <&camera_vana_ldo>;
229 cam_vdig-supply = <&camera_ldo>;
230 cam_clk-supply = <&titan_top_gdsc>;
231 cam_vaf-supply = <&actuator_regulator>;
232 regulator-names = "cam_vdig", "cam_vio", "cam_vana",
233 "cam_clk", "cam_vaf";
234 rgltr-cntrl-support;
235 rgltr-min-voltage = <1352000 1800000 2850000 0 2800000>;
236 rgltr-max-voltage = <1352000 1800000 2850000 0 2800000>;
237 rgltr-load-current = <105000 0 80000 0 0>;
238 gpio-no-mux = <0>;
239 pinctrl-names = "cam_default", "cam_suspend";
240 pinctrl-0 = <&cam_sensor_mclk1_active
241 &cam_sensor_rear2_active>;
242 pinctrl-1 = <&cam_sensor_mclk1_suspend
243 &cam_sensor_rear2_suspend>;
244 gpios = <&tlmm 14 0>,
245 <&tlmm 28 0>;
246 gpio-reset = <1>;
247 gpio-req-tbl-num = <0 1>;
248 gpio-req-tbl-flags = <1 0>;
249 gpio-req-tbl-label = "CAMIF_MCLK1",
250 "CAM_RESET1";
251 sensor-position = <0>;
252 sensor-mode = <0>;
253 cci-master = <1>;
254 status = "disabled";
255 clock-names = "cam_clk";
256 clock-cntl-level = "turbo";
257 clock-rates = <24000000>;
258 };
259
260 eeprom_front: qcom,eeprom@2 {
261 cell-index = <2>;
262 reg = <0x2>;
263 compatible = "qcom,eeprom";
264 cam_vio-supply = <&camera_vio_ldo>;
265 cam_vana-supply = <&camera_vana_ldo>;
266 cam_vdig-supply = <&camera_ldo>;
267 cam_clk-supply = <&titan_top_gdsc>;
268 cam_vaf-supply = <&actuator_regulator>;
269 regulator-names = "cam_vio", "cam_vana", "cam_vdig",
270 "cam_clk", "cam_vaf";
271 rgltr-cntrl-support;
272 rgltr-min-voltage = <1800000 2850000 1352000 0 2800000>;
273 rgltr-max-voltage = <1800000 2850000 1352000 0 2800000>;
274 rgltr-load-current = <0 80000 105000 0 0>;
275 gpio-no-mux = <0>;
276 pinctrl-names = "cam_default", "cam_suspend";
277 pinctrl-0 = <&cam_sensor_mclk2_active
278 &cam_sensor_front_active>;
279 pinctrl-1 = <&cam_sensor_mclk2_suspend
280 &cam_sensor_front_suspend>;
281 gpios = <&tlmm 15 0>,
282 <&tlmm 9 0>;
283 gpio-reset = <1>;
284 gpio-req-tbl-num = <0 1>;
285 gpio-req-tbl-flags = <1 0>;
286 gpio-req-tbl-label = "CAMIF_MCLK2",
287 "CAM_RESET2";
288 sensor-mode = <0>;
289 cci-master = <1>;
290 status = "disabled";
291 clocks = <&clock_camcc CAM_CC_MCLK2_CLK>;
292 clock-names = "cam_clk";
293 clock-cntl-level = "turbo";
294 clock-rates = <24000000>;
295 };
296
297 /* RGB R RGB R- MCLK0(GPIO13), RESET(GPIO 27) CCI1*/
298 qcom,cam-sensor@0 {
299 cell-index = <0>;
300 compatible = "qcom,cam-sensor";
301 reg = <0x0>;
302 csiphy-sd-index = <0>;
303 sensor-position-roll = <270>;
304 sensor-position-pitch = <0>;
305 sensor-position-yaw = <180>;
306 cam_vio-supply = <&pm660_l14>;
307 cam_vana-supply = <&pm660l_l3>;
308 cam_vdig-supply = <&pm660_l7>;
309 cam_vaf-supply = <&pm660_l12>;
310 cam_clk-supply = <&titan_top_gdsc>;
311 regulator-names = "cam_vio", "cam_vana", "cam_vdig","cam_clk",
312 "cam_vaf";
313 rgltr-cntrl-support;
314 rgltr-min-voltage = <1800000 2850000 1200000 0 1800000>;
315 rgltr-max-voltage = <1800000 2850000 1200000 0 1800000>;
316 rgltr-load-current = <60000 80000 105000 0 0>;
317 gpio-no-mux = <0>;
318 pinctrl-names = "cam_default", "cam_suspend";
319 pinctrl-0 = <&cam_sensor_mclk0_active
320 &cam_sensor_rgbr_active>;
321 pinctrl-1 = <&cam_sensor_mclk0_suspend
322 &cam_sensor_rgbr_suspend>;
323 gpios = <&tlmm 13 0>,
324 <&tlmm 27 0>,
325 <&tlmm 30 0>,
326 <&tlmm 8 0>,
327 <&tlmm 29 0>,
328 <&tlmm 12 0>;
329 gpio-reset = <1>;
330 gpio-vana = <2>;
331 gpio-vio = <3>;
332 gpio-vdig = <4>;
333 gpio-vaf = <5>;
334 gpio-req-tbl-num = <0 1 2 3 4 5>;
335 gpio-req-tbl-flags = <1 0 0 0 0 0>;
336 gpio-req-tbl-label = "CAMIF_MCLK",
337 "CAM_RESET",
338 "CAM_VANA",
339 "CAM_VIO",
340 "CAM_VDIG",
341 "CAM_VAF";
342 sensor-mode = <0>;
343 cci-master = <1>;
344 status = "ok";
345 clocks = <&clock_camcc CAM_CC_MCLK0_CLK>;
346 clock-names = "cam_clk";
347 clock-cntl-level = "turbo";
348 clock-rates = <24000000>;
349 };
350
351 /* 6211(GPIO 107 high), MCLK3(GPIO 16), RESET(GPIO 25), GPIO 107(SEL),*/
352 /* GPIO 23(Strobe), LED_1V2_EN(GPIO 0), LED_3V3-EN(GPIO 1) */
353 /* EYE T CCI1 */
354 qcom,cam-sensor@1 {
355 cell-index = <1>;
356 compatible = "qcom,cam-sensor";
357 reg = <0x1>;
358 csiphy-sd-index = <1>;
359 sensor-position-roll = <270>;
360 sensor-position-pitch = <0>;
361 sensor-position-yaw = <180>;
Lei Wang6d21af72019-12-23 11:04:06 +0800362 led-flash-src = <&led_flash_front>;
Rajesh Bharathwaj1a5d0302019-10-31 21:43:32 -0700363 cam_vio-supply = <&pm660_l14>;
364 cam_vana-supply = <&pm660l_l3>;
365 cam_vdig-supply = <&pm660_l12>;
366 cam_clk-supply = <&titan_top_gdsc>;
367 regulator-names = "cam_vio", "cam_vana", "cam_vdig",
368 "cam_clk";
369 rgltr-cntrl-support;
370 rgltr-min-voltage = <1800000 2850000 1800000 0>;
371 rgltr-max-voltage = <1800000 2850000 1800000 0>;
372 rgltr-load-current = <60000 80000 105000 0>;
373 gpio-no-mux = <0>;
374 pinctrl-names = "cam_default", "cam_suspend";
375 pinctrl-0 = <&cam_sensor_mclk3_active
376 &cam_sensor_eyet_active>;
377 pinctrl-1 = <&cam_sensor_mclk3_suspend
378 &cam_sensor_eyet_suspend>;
379 gpios = <&tlmm 16 0>,
380 <&tlmm 25 0>,
381 <&tlmm 11 0>,
382 <&tlmm 12 0>,
383 <&tlmm 107 0>;
384 gpio-reset = <1>;
385 gpio-vana = <2>;
386 gpio-vdig = <3>;
387 gpio-vio = <4>;
388 gpio-req-tbl-num = <0 1 2 3 4>;
389 gpio-req-tbl-flags = <1 0 0 0 0>;
390 gpio-req-tbl-label = "CAMIF_MCLK3",
391 "CAM_RESET3",
392 "CAM_VANA3",
393 "CAM_VIO3",
394 "CAM_VDIG3";
395 sensor-mode = <0>;
396 cci-master = <1>;
397 status = "ok";
398 clocks = <&clock_camcc CAM_CC_MCLK3_CLK>;
399 clock-names = "cam_clk";
400 clock-cntl-level = "turbo";
401 clock-rates = <24000000>;
402 };
403
404 /* 9282 CCI0 */
405 qcom,cam-sensor@2 {
406 cell-index = <2>;
407 compatible = "qcom,cam-sensor";
408 reg = <0x02>;
409 csiphy-sd-index = <2>;
410 sensor-position-roll = <270>;
411 sensor-position-pitch = <0>;
412 sensor-position-yaw = <0>;
413 cam_vio-supply = <&pm660_l14>;
414 cam_vana-supply = <&pm660l_l3>;
415 cam_vdig-supply = <&pm660_l7>;
416 cam_clk-supply = <&titan_top_gdsc>;
417 regulator-names = "cam_vio", "cam_vana", "cam_vdig",
418 "cam_clk";
419 rgltr-cntrl-support;
420 rgltr-min-voltage = <1800000 2850000 1200000 0>;
421 rgltr-max-voltage = <1800000 2850000 1200000 0>;
422 rgltr-load-current = <60000 80000 105000 0>;
423 gpio-no-mux = <0>;
424 pinctrl-names = "cam_default", "cam_suspend";
425 pinctrl-0 = <&cam_sensor_mclk2_active
426 &cam_sensor_6dof_active>;
427 pinctrl-1 = <&cam_sensor_mclk2_suspend
428 &cam_sensor_6dof_suspend>;
429 gpios = <&tlmm 15 0>,
430 <&tlmm 24 0>,
431 <&tlmm 145 0>,
432 <&tlmm 144 0>,
433 <&tlmm 143 0>;
434 gpio-reset = <1>;
435 gpio-vana = <2>;
436 gpio-vdig = <3>;
437 gpio-vio = <4>;
438 gpio-req-tbl-num = <0 1 2 3 4>;
439 gpio-req-tbl-flags = <1 0 0 0 0>;
440 gpio-req-tbl-label = "CAMIF_MCLK2",
441 "CAM_RESET2",
442 "CAM_VANA2",
443 "CAM_VDIG2",
444 "CAM_VIO2";
445 sensor-mode = <0>;
446 cci-master = <0>;
447 status = "ok";
448 clocks = <&clock_camcc CAM_CC_MCLK2_CLK>;
449 clock-names = "cam_clk";
450 clock-cntl-level = "turbo";
451 clock-rates = <24000000>;
452 };
453
454 /*RGB L(Default)- MCLK1(GPIO14), RESET(GPIO 28), CCI0*/
455 qcom,cam-sensor@3 {
456 cell-index = <3>;
457 compatible = "qcom,cam-sensor";
458 reg = <0x03>;
459 csiphy-sd-index = <1>;
460 sensor-position-roll = <270>;
461 sensor-position-pitch = <0>;
462 sensor-position-yaw = <0>;
463 cam_vio-supply = <&pm660_l14>;
464 cam_vana-supply = <&pm660l_l3>;
465 cam_vdig-supply = <&pm660_l7>;
466 cam_vaf-supply = <&pm660_l12>;
467 cam_clk-supply = <&titan_top_gdsc>;
468 regulator-names = "cam_vio", "cam_vana", "cam_vdig",
469 "cam_clk", "cam_vaf";
470 rgltr-cntrl-support;
471 rgltr-min-voltage = <1800000 2850000 1200000 0 1800000>;
472 rgltr-max-voltage = <1800000 2850000 1200000 0 1800000>;
473 rgltr-load-current = <60000 80000 105000 0 0>;
474 gpio-no-mux = <0>;
475 pinctrl-names = "cam_default", "cam_suspend";
476 pinctrl-0 = <&cam_sensor_mclk1_active
477 &cam_sensor_rgbl_active>;
478 pinctrl-1 = <&cam_sensor_mclk1_suspend
479 &cam_sensor_rgbl_suspend>;
480 gpios = <&tlmm 14 0>,
481 <&tlmm 28 0>,
482 <&tlmm 30 0>,
483 <&tlmm 8 0>,
484 <&tlmm 29 0>,
485 <&tlmm 12 0>;
486 gpio-reset = <1>;
487 gpio-vana = <2>;
488 gpio-vio = <3>;
489 gpio-vdig = <4>;
490 gpio-vaf = <5>;
491 gpio-req-tbl-num = <0 1 2 3 4 5>;
492 gpio-req-tbl-flags = <1 0 0 0 0 0>;
493 gpio-req-tbl-label = "CAMIF_MCLK1",
494 "CAM_RESET1",
495 "CAM_VANA1",
496 "CAM_VIO1",
497 "CAM_VDIG1",
498 "CAM_VCAF1";
499 sensor-mode = <0>;
500 cci-master = <0>;
501 status = "ok";
502 clocks = <&clock_camcc CAM_CC_MCLK1_CLK>;
503 clock-names = "cam_clk";
504 clock-cntl-level = "turbo";
505 clock-rates = <24000000>;
506 };
507};