blob: c2c9c79fd5a69bef84566b7bed9601e86537020f [file] [log] [blame]
Yulei Yaof8348272018-04-11 17:24:51 +08001/*
2 * Copyright (c) 2015-2016, 2018 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&cci {
15 actuator0: qcom,actuator@0 {
16 cell-index = <0>;
17 reg = <0x0>;
18 compatible = "qcom,actuator";
19 qcom,cci-master = <0>;
20 cam_vaf-supply = <&pm8953_l17>;
21 qcom,cam-vreg-name = "cam_vaf";
22 qcom,cam-vreg-min-voltage = <2850000>;
23 qcom,cam-vreg-max-voltage = <2850000>;
24 qcom,cam-vreg-op-mode = <80000>;
25 };
26
27 actuator1: qcom,actuator@1 {
28 cell-index = <1>;
29 reg = <0x1>;
30 compatible = "qcom,actuator";
31 qcom,cci-master = <0>;
32 cam_vaf-supply = <&pm8953_l17>;
33 qcom,cam-vreg-name = "cam_vaf";
34 qcom,cam-vreg-min-voltage = <2850000>;
35 qcom,cam-vreg-max-voltage = <2850000>;
36 qcom,cam-vreg-op-mode = <80000>;
37 };
38
39 eeprom0: qcom,eeprom@0 {
40 cell-index = <0>;
41 compatible = "qcom,eeprom";
42 qcom,cci-master = <0>;
43 reg = <0x0>;
44 cam_vana-supply = <&pm8953_l22>;
45 cam_vio-supply = <&pm8953_l6>;
46 cam_vaf-supply = <&pm8953_l17>;
47 cam_vdig-supply = <&pm8953_l3>;
48 qcom,cam-vreg-name = "cam_vana", "cam_vio",
49 "cam_vdig", "cam_vaf";
50 qcom,cam-vreg-min-voltage = <2800000 0 1200000 2850000>;
51 qcom,cam-vreg-max-voltage = <2800000 0 1200000 2850000>;
52 qcom,cam-vreg-op-mode = <80000 0 200000 100000>;
53 pinctrl-names = "cam_default", "cam_suspend";
54 pinctrl-0 = <&cam_sensor_mclk0_default
55 &cam_sensor_rear_reset
56 &cam_sensor_rear_vana>;
57 pinctrl-1 = <&cam_sensor_mclk0_sleep
58 &cam_sensor_rear_reset_sleep
59 &cam_sensor_rear_vana_sleep>;
60 gpios = <&tlmm 26 0>,
61 <&tlmm 36 0>,
62 <&tlmm 35 0>;
63 qcom,gpio-reset = <1>;
64 qcom,gpio-vana = <2>;
65 qcom,gpio-req-tbl-num = <0 1 2>;
66 qcom,gpio-req-tbl-flags = <1 0 0>;
67 qcom,gpio-req-tbl-label = "CAMIF_MCLK0",
68 "CAM_RESET0",
69 "CAM_VANA";
70 status = "ok";
71 clocks = <&clock_gcc clk_mclk0_clk_src>,
72 <&clock_gcc clk_gcc_camss_mclk0_clk>;
73 clock-names = "cam_src_clk", "cam_clk";
74 qcom,clock-rates = <19200000 0>;
75 };
76
77 eeprom1: qcom,eeprom@1 {
78 cell-index = <1>;
79 reg = <0x1>;
80 qcom,eeprom-name = "sunny_8865";
81 compatible = "qcom,eeprom";
82 qcom,slave-addr = <0x6c>;
83 qcom,cci-master = <0>;
84 qcom,num-blocks = <8>;
85
86 qcom,page0 = <1 0x0100 2 0x01 1 1>;
87 qcom,poll0 = <0 0x0 2 0x0 1 0>;
88 qcom,mem0 = <0 0x0 2 0x0 1 0>;
89
90 qcom,page1 = <1 0x5002 2 0x00 1 0>;
91 qcom,poll1 = <0 0x0 2 0x0 1 0>;
92 qcom,mem1 = <0 0x0 2 0x0 1 0>;
93
94 qcom,page2 = <1 0x3d84 2 0xc0 1 0>;
95 qcom,poll2 = <0 0x0 2 0x0 1 0>;
96 qcom,mem2 = <0 0x0 2 0x0 1 0>;
97
98 qcom,page3 = <1 0x3d88 2 0x70 1 0>;
99 qcom,poll3 = <0 0x0 2 0x0 1 0>;
100 qcom,mem3 = <0 0x0 2 0x0 1 0>;
101
102 qcom,page4 = <1 0x3d89 2 0x10 1 0>;
103 qcom,poll4 = <0 0x0 2 0x0 1 0>;
104 qcom,mem4 = <0 0x0 2 0x0 1 0>;
105
106 qcom,page5 = <1 0x3d8a 2 0x70 1 0>;
107 qcom,poll5 = <0 0x0 2 0x0 1 0>;
108 qcom,mem5 = <0 0x0 2 0x0 1 0>;
109
110 qcom,page6 = <1 0x3d8b 2 0xf4 1 0>;
111 qcom,poll6 = <0 0x0 2 0x0 1 0>;
112 qcom,mem6 = <0 0x0 2 0x0 1 0>;
113
114 qcom,page7 = <1 0x3d81 2 0x01 1 10>;
115 qcom,poll7 = <0 0x0 2 0x0 1 1>;
116 qcom,mem7 = <1536 0x7010 2 0 1 0>;
117
118 cam_vdig-supply = <&pm8953_l23>;
119 cam_vana-supply = <&pm8953_l22>;
120 cam_vio-supply = <&pm8953_l6>;
121 cam_vaf-supply = <&pm8953_l17>;
122 qcom,cam-vreg-name = "cam_vdig", "cam_vio",
123 "cam_vana", "cam_vaf";
124 qcom,cam-vreg-min-voltage = <1200000 0 2800000 2850000>;
125 qcom,cam-vreg-max-voltage = <1200000 0 2800000 2850000>;
126 qcom,cam-vreg-op-mode = <105000 0 80000 100000>;
127 qcom,gpio-no-mux = <0>;
128 pinctrl-names = "cam_default", "cam_suspend";
129 pinctrl-0 = <&cam_sensor_mclk2_default
130 &cam_sensor_front1_default>;
131 pinctrl-1 = <&cam_sensor_mclk2_sleep
132 &cam_sensor_front1_sleep>;
133 gpios = <&tlmm 28 0>,
134 <&tlmm 40 0>,
135 <&tlmm 39 0>;
136 qcom,gpio-reset = <1>;
137 qcom,gpio-standby = <2>;
138 qcom,gpio-req-tbl-num = <0 1 2>;
139 qcom,gpio-req-tbl-flags = <1 0 0>;
140 qcom,gpio-req-tbl-label = "CAMIF_MCLK2",
141 "CAM_RESET2",
142 "CAM_STANDBY2";
143 qcom,cam-power-seq-type = "sensor_vreg", "sensor_vreg",
144 "sensor_vreg",
145 "sensor_gpio", "sensor_gpio" , "sensor_clk";
146 qcom,cam-power-seq-val = "cam_vdig", "cam_vana", "cam_vio",
147 "sensor_gpio_reset", "sensor_gpio_standby",
148 "sensor_cam_mclk";
149 qcom,cam-power-seq-cfg-val = <1 1 1 1 1 24000000>;
150 qcom,cam-power-seq-delay = <1 1 1 30 30 5>;
151 status = "ok";
152 clocks = <&clock_gcc clk_mclk2_clk_src>,
153 <&clock_gcc clk_gcc_camss_mclk2_clk>;
154 clock-names = "cam_src_clk", "cam_clk";
155 qcom,clock-rates = <19200000 0>;
156 };
157
158 qcom,camera@0 {
159 cell-index = <0>;
160 compatible = "qcom,camera";
161 reg = <0x0>;
162 qcom,csiphy-sd-index = <0>;
163 qcom,csid-sd-index = <0>;
164 qcom,mount-angle = <90>;
165 qcom,led-flash-src = <&led_flash0>;
166 qcom,eeprom-src = <&eeprom0>;
167 qcom,actuator-src = <&actuator0>;
168 cam_vana-supply = <&pm8953_l22>;
169 cam_vio-supply = <&pm8953_l6>;
170 cam_vaf-supply = <&pm8953_l17>;
171 cam_vdig-supply = <&pm8953_l3>;
172 qcom,cam-vreg-name = "cam_vana", "cam_vio",
173 "cam_vdig", "cam_vaf";
174 qcom,cam-vreg-min-voltage = <2800000 0 1200000 2850000>;
175 qcom,cam-vreg-max-voltage = <2800000 0 1200000 2850000>;
176 qcom,cam-vreg-op-mode = <80000 0 200000 100000>;
177 pinctrl-names = "cam_default", "cam_suspend";
178 pinctrl-0 = <&cam_sensor_mclk0_default
179 &cam_sensor_rear_reset
180 &cam_sensor_rear_vana>;
181 pinctrl-1 = <&cam_sensor_mclk0_sleep
182 &cam_sensor_rear_reset_sleep
183 &cam_sensor_rear_vana_sleep>;
184 gpios = <&tlmm 26 0>,
185 <&tlmm 36 0>,
186 <&tlmm 35 0>;
187 qcom,gpio-reset = <1>;
188 qcom,gpio-vana = <2>;
189 qcom,gpio-req-tbl-num = <0 1 2>;
190 qcom,gpio-req-tbl-flags = <1 0 0>;
191 qcom,gpio-req-tbl-label = "CAMIF_MCLK0",
192 "CAM_RESET0",
193 "CAM_VANA";
194 qcom,sensor-position = <0>;
195 qcom,sensor-mode = <0>;
196 qcom,cci-master = <0>;
197 status = "ok";
198 clocks = <&clock_gcc clk_mclk0_clk_src>,
199 <&clock_gcc clk_gcc_camss_mclk0_clk>;
200 clock-names = "cam_src_clk", "cam_clk";
201 qcom,clock-rates = <24000000 0>;
202 };
203
204 qcom,camera@1 {
205 cell-index = <1>;
206 compatible = "qcom,camera";
207 reg = <0x1>;
208 qcom,csiphy-sd-index = <1>;
209 qcom,csid-sd-index = <1>;
210 qcom,mount-angle = <270>;
211 cam_vdig-supply = <&pm8953_l3>;
212 cam_vana-supply = <&pm8953_l22>;
213 cam_vio-supply = <&pm8953_l6>;
214 cam_vaf-supply = <&pm8953_l17>;
215 qcom,cam-vreg-name = "cam_vdig", "cam_vio", "cam_vana",
216 "cam_vaf";
217 qcom,cam-vreg-min-voltage = <1200000 0 2800000 2850000>;
218 qcom,cam-vreg-max-voltage = <1200000 0 2800000 2850000>;
219 qcom,cam-vreg-op-mode = <200000 0 80000 100000>;
220 pinctrl-names = "cam_default", "cam_suspend";
221 pinctrl-0 = <&cam_sensor_mclk1_default
222 &cam_sensor_front_default>;
223 pinctrl-1 = <&cam_sensor_mclk1_sleep
224 &cam_sensor_front_sleep>;
225 gpios = <&tlmm 27 0>,
226 <&tlmm 38 0>,
227 <&tlmm 50 0>;
228 qcom,gpio-reset = <1>;
229 qcom,gpio-standby = <2>;
230 qcom,gpio-req-tbl-num = <0 1 2>;
231 qcom,gpio-req-tbl-flags = <1 0 0>;
232 qcom,gpio-req-tbl-label = "CAMIF_MCLK1",
233 "CAM_RESET1",
234 "CAM_STANDBY1";
235 qcom,sensor-position = <0x100>;
236 qcom,sensor-mode = <1>;
237 qcom,cci-master = <1>;
238 clocks = <&clock_gcc clk_mclk1_clk_src>,
239 <&clock_gcc clk_gcc_camss_mclk1_clk>;
240 clock-names = "cam_src_clk", "cam_clk";
241 qcom,clock-rates = <24000000 0>;
242 };
243
244 qcom,camera@2 {
245 cell-index = <2>;
246 compatible = "qcom,camera";
247 reg = <0x02>;
248 qcom,csiphy-sd-index = <1>;
249 qcom,csid-sd-index = <1>;
250 qcom,mount-angle = <270>;
251 qcom,eeprom-src = <&eeprom1>;
252 qcom,actuator-src = <&actuator1>;
253 cam_vdig-supply = <&pm8953_l3>;
254 cam_vana-supply = <&pm8953_l22>;
255 cam_vio-supply = <&pm8953_l6>;
256 cam_vaf-supply = <&pm8953_l17>;
257 qcom,cam-vreg-name = "cam_vdig", "cam_vio", "cam_vana",
258 "cam_vaf";
259 qcom,cam-vreg-min-voltage = <1200000 0 2800000 2850000>;
260 qcom,cam-vreg-max-voltage = <1200000 0 2800000 2850000>;
261 qcom,cam-vreg-op-mode = <105000 0 80000 100000>;
262 qcom,gpio-no-mux = <0>;
263 pinctrl-names = "cam_default", "cam_suspend";
264 pinctrl-0 = <&cam_sensor_mclk2_default
265 &cam_sensor_front1_default>;
266 pinctrl-1 = <&cam_sensor_mclk2_sleep
267 &cam_sensor_front1_sleep>;
268 gpios = <&tlmm 27 0>,
269 <&tlmm 38 0>,
270 <&tlmm 39 0>;
271 qcom,gpio-reset = <1>;
272 qcom,gpio-standby = <2>;
273 qcom,gpio-req-tbl-num = <0 1 2>;
274 qcom,gpio-req-tbl-flags = <1 0 0>;
275 qcom,gpio-req-tbl-label = "CAMIF_MCLK2",
276 "CAM_RESET2",
277 "CAM_STANDBY2";
278 qcom,sensor-position = <1>;
279 qcom,sensor-mode = <0>;
280 qcom,cci-master = <0>;
281 status = "ok";
282 clocks = <&clock_gcc clk_mclk2_clk_src>,
283 <&clock_gcc clk_gcc_camss_mclk2_clk>;
284 clock-names = "cam_src_clk", "cam_clk";
285 qcom,clock-rates = <24000000 0>;
286 };
287};