blob: c0189a4cfff9cee4609cd7009c367642df7b8a67 [file] [log] [blame]
Jigarkumar Zala861231152017-02-28 14:05:11 -08001/*
2 * Copyright (c) 2016-2017, 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>;
Jigarkumar Zala9e7f1cf2017-04-21 11:51:08 -070017 reg = <0x00 0x00>;
Jigarkumar Zala861231152017-02-28 14:05:11 -080018 compatible = "qcom,camera-flash";
19 qcom,flash-source = <&pmi8998_flash0 &pmi8998_flash1>;
20 qcom,torch-source = <&pmi8998_torch0 &pmi8998_torch1>;
21 qcom,switch-source = <&pmi8998_switch0>;
22 status = "ok";
23 };
24
25 led_flash_front: qcom,camera-flash@1 {
26 cell-index = <1>;
Jigarkumar Zala9e7f1cf2017-04-21 11:51:08 -070027 reg = <0x01 0x00>;
Jigarkumar Zala861231152017-02-28 14:05:11 -080028 compatible = "qcom,camera-flash";
29 qcom,flash-source = <&pmi8998_flash2>;
30 qcom,torch-source = <&pmi8998_torch2>;
31 qcom,switch-source = <&pmi8998_switch1>;
32 status = "ok";
33 };
34
35 actuator_regulator: gpio-regulator@0 {
36 compatible = "regulator-fixed";
Jigarkumar Zala9e7f1cf2017-04-21 11:51:08 -070037 reg = <0x00 0x00>;
Jigarkumar Zala861231152017-02-28 14:05:11 -080038 regulator-name = "actuator_regulator";
39 regulator-min-microvolt = <2800000>;
40 regulator-max-microvolt = <2800000>;
41 regulator-enable-ramp-delay = <100>;
42 enable-active-high;
43 gpio = <&tlmm 27 0>;
44 vin-supply = <&pmi8998_bob>;
45 };
46
47 camera_rear_ldo: gpio-regulator@1 {
48 compatible = "regulator-fixed";
Jigarkumar Zala9e7f1cf2017-04-21 11:51:08 -070049 reg = <0x01 0x00>;
Jigarkumar Zala861231152017-02-28 14:05:11 -080050 regulator-name = "camera_rear_ldo";
51 regulator-min-microvolt = <1050000>;
52 regulator-max-microvolt = <1050000>;
53 regulator-enable-ramp-delay = <135>;
54 enable-active-high;
55 gpio = <&pm8998_gpios 12 0>;
56 pinctrl-names = "default";
57 pinctrl-0 = <&camera_rear_dvdd_en_default>;
58 vin-supply = <&pm8998_s3>;
59 };
60
61 camera_ldo: gpio-regulator@2 {
62 compatible = "regulator-fixed";
Jigarkumar Zala9e7f1cf2017-04-21 11:51:08 -070063 reg = <0x02 0x00>;
Jigarkumar Zala861231152017-02-28 14:05:11 -080064 regulator-name = "camera_ldo";
65 regulator-min-microvolt = <1050000>;
66 regulator-max-microvolt = <1050000>;
67 regulator-enable-ramp-delay = <233>;
68 enable-active-high;
69 gpio = <&pm8998_gpios 9 0>;
70 pinctrl-names = "default";
71 pinctrl-0 = <&camera_dvdd_en_default>;
72 vin-supply = <&pm8998_s3>;
73 };
74};
75
76&cci {
77 actuator_rear: qcom,actuator@0 {
78 cell-index = <0>;
79 reg = <0x0>;
80 compatible = "qcom,actuator";
81 qcom,cci-master = <0>;
82 cam_vaf-supply = <&actuator_regulator>;
83 qcom,cam-vreg-name = "cam_vaf";
84 qcom,cam-vreg-min-voltage = <2800000>;
85 qcom,cam-vreg-max-voltage = <2800000>;
86 qcom,cam-vreg-op-mode = <0>;
87 };
88
89 actuator_front: qcom,actuator@1 {
90 cell-index = <1>;
91 reg = <0x1>;
92 compatible = "qcom,actuator";
93 qcom,cci-master = <1>;
94 cam_vaf-supply = <&actuator_regulator>;
95 qcom,cam-vreg-name = "cam_vaf";
96 qcom,cam-vreg-min-voltage = <2800000>;
97 qcom,cam-vreg-max-voltage = <2800000>;
98 qcom,cam-vreg-op-mode = <0>;
99 };
100
101 ois_rear: qcom,ois@0 {
102 cell-index = <0>;
103 reg = <0x0>;
104 compatible = "qcom,ois";
105 qcom,cci-master = <0>;
106 cam_vaf-supply = <&actuator_regulator>;
107 qcom,cam-vreg-name = "cam_vaf";
108 qcom,cam-vreg-min-voltage = <2800000>;
109 qcom,cam-vreg-max-voltage = <2800000>;
110 qcom,cam-vreg-op-mode = <0>;
111 status = "disabled";
112 };
113
114 eeprom_rear: qcom,eeprom@0 {
115 cell-index = <0>;
116 reg = <0>;
117 compatible = "qcom,eeprom";
118 cam_vio-supply = <&pm8998_lvs1>;
119 cam_vana-supply = <&pmi8998_bob>;
120 cam_vdig-supply = <&camera_rear_ldo>;
121 qcom,cam-vreg-name = "cam_vio", "cam_vana", "cam_vdig";
122 qcom,cam-vreg-min-voltage = <0 3312000 1050000>;
123 qcom,cam-vreg-max-voltage = <0 3600000 1050000>;
124 qcom,cam-vreg-op-mode = <0 80000 105000>;
125 qcom,gpio-no-mux = <0>;
126 pinctrl-names = "cam_default", "cam_suspend";
127 pinctrl-0 = <&cam_sensor_mclk0_active
128 &cam_sensor_rear_active>;
129 pinctrl-1 = <&cam_sensor_mclk0_suspend
130 &cam_sensor_rear_suspend>;
131 gpios = <&tlmm 13 0>,
132 <&tlmm 80 0>,
133 <&tlmm 79 0>,
134 <&tlmm 27 0>;
135 qcom,gpio-reset = <1>;
136 qcom,gpio-vana = <2>;
137 qcom,gpio-vaf = <3>;
138 qcom,gpio-req-tbl-num = <0 1 2 3>;
139 qcom,gpio-req-tbl-flags = <1 0 0 0>;
140 qcom,gpio-req-tbl-label = "CAMIF_MCLK0",
141 "CAM_RESET0",
142 "CAM_VANA0",
143 "CAM_VAF";
144 qcom,sensor-position = <0>;
145 qcom,sensor-mode = <0>;
146 qcom,cci-master = <0>;
147 status = "ok";
148 clocks = <&clock_camcc CAM_CC_MCLK0_CLK>;
149 clock-names = "cam_clk";
150 qcom,clock-rates = <24000000>;
151 };
152
153 eeprom_rear_aux: qcom,eeprom@1 {
154 cell-index = <1>;
155 reg = <0x1>;
156 compatible = "qcom,eeprom";
157 cam_vdig-supply = <&camera_ldo>;
158 cam_vio-supply = <&pm8998_lvs1>;
159 cam_vana-supply = <&pmi8998_bob>;
160 qcom,cam-vreg-name = "cam_vdig", "cam_vio", "cam_vana";
161 qcom,cam-vreg-min-voltage = <1050000 0 3312000>;
162 qcom,cam-vreg-max-voltage = <1050000 0 3600000>;
163 qcom,cam-vreg-op-mode = <105000 0 80000>;
164 qcom,gpio-no-mux = <0>;
165 pinctrl-names = "cam_default", "cam_suspend";
166 pinctrl-0 = <&cam_sensor_mclk2_active
167 &cam_sensor_rear2_active>;
168 pinctrl-1 = <&cam_sensor_mclk2_suspend
169 &cam_sensor_rear2_suspend>;
170 gpios = <&tlmm 15 0>,
171 <&tlmm 9 0>,
172 <&tlmm 8 0>;
173 qcom,gpio-reset = <1>;
174 qcom,gpio-vana = <2>;
175 qcom,gpio-req-tbl-num = <0 1 2>;
176 qcom,gpio-req-tbl-flags = <1 0 0>;
177 qcom,gpio-req-tbl-label = "CAMIF_MCLK1",
178 "CAM_RESET1",
179 "CAM_VANA1";
180 qcom,sensor-position = <0>;
181 qcom,sensor-mode = <0>;
182 qcom,cci-master = <1>;
183 status = "ok";
184 clocks = <&clock_camcc CAM_CC_MCLK2_CLK>;
185 clock-names = "cam_clk";
186 qcom,clock-rates = <24000000>;
187 };
188
189 eeprom_front: qcom,eeprom@2 {
190 cell-index = <2>;
191 reg = <0x2>;
192 compatible = "qcom,eeprom";
193 cam_vio-supply = <&pm8998_lvs1>;
194 cam_vana-supply = <&pmi8998_bob>;
195 cam_vdig-supply = <&camera_ldo>;
196 qcom,cam-vreg-name = "cam_vio", "cam_vana", "cam_vdig";
197 qcom,cam-vreg-min-voltage = <0 3312000 1050000>;
198 qcom,cam-vreg-max-voltage = <0 3600000 1050000>;
199 qcom,cam-vreg-op-mode = <0 80000 105000>;
200 qcom,gpio-no-mux = <0>;
201 pinctrl-names = "cam_default", "cam_suspend";
202 pinctrl-0 = <&cam_sensor_mclk1_active
203 &cam_sensor_front_active>;
204 pinctrl-1 = <&cam_sensor_mclk1_suspend
205 &cam_sensor_front_suspend>;
206 gpios = <&tlmm 14 0>,
207 <&tlmm 28 0>,
208 <&tlmm 8 0>,
209 <&tlmm 27 0>;
210 qcom,gpio-reset = <1>;
211 qcom,gpio-vana = <2>;
212 qcom,gpio-vaf = <3>;
213 qcom,gpio-req-tbl-num = <0 1 2 3>;
214 qcom,gpio-req-tbl-flags = <1 0 0 0>;
215 qcom,gpio-req-tbl-label = "CAMIF_MCLK2",
216 "CAM_RESET2",
217 "CAM_VANA2",
218 "CAM_VAF";
219 qcom,sensor-position = <1>;
220 qcom,sensor-mode = <0>;
221 qcom,cci-master = <1>;
222 status = "ok";
223 clocks = <&clock_camcc CAM_CC_MCLK1_CLK>;
224 clock-names = "cam_clk";
225 qcom,clock-rates = <24000000>;
226 };
227
228 qcom,cam-sensor@0 {
229 cell-index = <0>;
230 compatible = "qcom,cam-sensor";
231 reg = <0x0>;
232 qcom,csiphy-sd-index = <0>;
233 qcom,sensor-position-roll = <90>;
234 qcom,sensor-position-pitch = <0>;
235 qcom,sensor-position-yaw = <180>;
236 qcom,led-flash-src = <&led_flash_rear>;
237 qcom,actuator-src = <&actuator_rear>;
238 qcom,ois-src = <&ois_rear>;
239 qcom,eeprom-src = <&eeprom_rear>;
240 cam_vio-supply = <&pm8998_lvs1>;
241 cam_vana-supply = <&pmi8998_bob>;
242 cam_vdig-supply = <&camera_rear_ldo>;
243 qcom,cam-vreg-name = "cam_vio", "cam_vana", "cam_vdig";
244 qcom,cam-vreg-min-voltage = <0 3312000 1050000>;
245 qcom,cam-vreg-max-voltage = <0 3600000 1050000>;
246 qcom,cam-vreg-op-mode = <0 80000 105000>;
247 qcom,gpio-no-mux = <0>;
248 pinctrl-names = "cam_default", "cam_suspend";
249 pinctrl-0 = <&cam_sensor_mclk0_active
250 &cam_sensor_rear_active>;
251 pinctrl-1 = <&cam_sensor_mclk0_suspend
252 &cam_sensor_rear_suspend>;
253 gpios = <&tlmm 13 0>,
254 <&tlmm 80 0>,
255 <&tlmm 79 0>;
256 qcom,gpio-reset = <1>;
257 qcom,gpio-vana = <2>;
258 qcom,gpio-req-tbl-num = <0 1 2>;
259 qcom,gpio-req-tbl-flags = <1 0 0>;
260 qcom,gpio-req-tbl-label = "CAMIF_MCLK0",
261 "CAM_RESET0",
262 "CAM_VANA";
263 qcom,sensor-mode = <0>;
264 qcom,cci-master = <0>;
265 status = "ok";
266 clocks = <&clock_camcc CAM_CC_MCLK0_CLK>;
267 clock-names = "cam_clk";
268 qcom,clock-rates = <24000000>;
269 };
270
271 qcom,cam-sensor@1 {
272 cell-index = <1>;
273 compatible = "qcom,cam-sensor";
274 reg = <0x1>;
275 qcom,csiphy-sd-index = <1>;
276 qcom,sensor-position-roll = <90>;
277 qcom,sensor-position-pitch = <0>;
278 qcom,sensor-position-yaw = <180>;
279 qcom,eeprom-src = <&eeprom_rear_aux>;
280 cam_vdig-supply = <&camera_ldo>;
281 cam_vio-supply = <&pm8998_lvs1>;
282 cam_vana-supply = <&pmi8998_bob>;
283 qcom,cam-vreg-name = "cam_vdig", "cam_vio", "cam_vana";
284 qcom,cam-vreg-min-voltage = <1050000 0 3312000>;
285 qcom,cam-vreg-max-voltage = <1050000 0 3600000>;
286 qcom,cam-vreg-op-mode = <105000 0 80000>;
287 qcom,gpio-no-mux = <0>;
288 pinctrl-names = "cam_default", "cam_suspend";
289 pinctrl-0 = <&cam_sensor_mclk2_active
290 &cam_sensor_rear2_active>;
291 pinctrl-1 = <&cam_sensor_mclk2_suspend
292 &cam_sensor_rear2_suspend>;
293 gpios = <&tlmm 15 0>,
294 <&tlmm 9 0>,
295 <&tlmm 8 0>;
296 qcom,gpio-reset = <1>;
297 qcom,gpio-vana = <2>;
298 qcom,gpio-req-tbl-num = <0 1 2>;
299 qcom,gpio-req-tbl-flags = <1 0 0>;
300 qcom,gpio-req-tbl-label = "CAMIF_MCLK1",
301 "CAM_RESET1",
302 "CAM_VANA1";
303 qcom,sensor-mode = <0>;
304 qcom,cci-master = <1>;
305 status = "ok";
306 clocks = <&clock_camcc CAM_CC_MCLK2_CLK>;
307 clock-names = "cam_clk";
308 qcom,clock-rates = <24000000>;
309 };
310
311 qcom,cam-sensor@2 {
312 cell-index = <2>;
313 compatible = "qcom,cam-sensor";
314 reg = <0x02>;
315 qcom,csiphy-sd-index = <2>;
316 qcom,sensor-position-roll = <90>;
317 qcom,sensor-position-pitch = <0>;
318 qcom,sensor-position-yaw = <0>;
319 qcom,eeprom-src = <&eeprom_front>;
320 qcom,actuator-src = <&actuator_front>;
321 qcom,led-flash-src = <&led_flash_front>;
322 cam_vio-supply = <&pm8998_lvs1>;
323 cam_vana-supply = <&pmi8998_bob>;
324 cam_vdig-supply = <&camera_ldo>;
325 qcom,cam-vreg-name = "cam_vio", "cam_vana", "cam_vdig";
326 qcom,cam-vreg-min-voltage = <0 3312000 1050000>;
327 qcom,cam-vreg-max-voltage = <0 3600000 1050000>;
328 qcom,cam-vreg-op-mode = <0 80000 105000>;
329 qcom,gpio-no-mux = <0>;
330 pinctrl-names = "cam_default", "cam_suspend";
331 pinctrl-0 = <&cam_sensor_mclk1_active
332 &cam_sensor_front_active>;
333 pinctrl-1 = <&cam_sensor_mclk1_suspend
334 &cam_sensor_front_suspend>;
335 gpios = <&tlmm 14 0>,
336 <&tlmm 28 0>,
337 <&tlmm 8 0>;
338 qcom,gpio-reset = <1>;
339 qcom,gpio-vana = <2>;
340 qcom,gpio-req-tbl-num = <0 1 2>;
341 qcom,gpio-req-tbl-flags = <1 0 0>;
342 qcom,gpio-req-tbl-label = "CAMIF_MCLK2",
343 "CAM_RESET2",
344 "CAM_VANA1";
345 qcom,sensor-mode = <0>;
346 qcom,cci-master = <1>;
347 status = "ok";
348 clocks = <&clock_camcc CAM_CC_MCLK1_CLK>;
349 clock-names = "cam_clk";
350 qcom,clock-rates = <24000000>;
351 };
352};