blob: db8fc518a51bf926f12c7a2f80432c34d2469571 [file] [log] [blame]
Lakshmi Narayana Kalavalac0dac062016-12-01 17:20:09 -08001/*
2 * Copyright (c) 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 qcom,cam-req-mgr {
16 compatible = "qcom,cam-req-mgr";
17 status = "ok";
18 };
Jigarkumar Zala861231152017-02-28 14:05:11 -080019
Pavan Kumar Chilamkurthi6bc57c12017-05-31 22:16:55 -070020 cam_csiphy0: qcom,csiphy@ac65000 {
Jigarkumar Zala861231152017-02-28 14:05:11 -080021 cell-index = <0>;
22 compatible = "qcom,csiphy-v1.0", "qcom,csiphy";
23 reg = <0x0ac65000 0x1000>;
24 reg-names = "csiphy";
Alok Pandey1837a202017-06-25 20:39:56 +053025 reg-cam-base = <0x65000>;
Jigarkumar Zala861231152017-02-28 14:05:11 -080026 interrupts = <0 477 0>;
27 interrupt-names = "csiphy";
28 gdscr-supply = <&titan_top_gdsc>;
Alok Pandey1837a202017-06-25 20:39:56 +053029 regulator-names = "gdscr";
30 csi-vdd-voltage = <1200000>;
31 mipi-csi-vdd-supply = <&pm8998_l26>;
Jigarkumar Zala861231152017-02-28 14:05:11 -080032 clocks = <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>,
33 <&clock_camcc CAM_CC_SOC_AHB_CLK>,
34 <&clock_camcc CAM_CC_SLOW_AHB_CLK_SRC>,
35 <&clock_camcc CAM_CC_CPAS_AHB_CLK>,
36 <&clock_camcc CAM_CC_CPHY_RX_CLK_SRC>,
37 <&clock_camcc CAM_CC_CSIPHY0_CLK>,
38 <&clock_camcc CAM_CC_CSI0PHYTIMER_CLK_SRC>,
Soundrapandian Jeyaprakashb1638752017-07-25 15:14:53 -070039 <&clock_camcc CAM_CC_CSI0PHYTIMER_CLK>;
Jigarkumar Zala861231152017-02-28 14:05:11 -080040 clock-names = "camnoc_axi_clk",
41 "soc_ahb_clk",
42 "slow_ahb_src_clk",
43 "cpas_ahb_clk",
44 "cphy_rx_clk_src",
45 "csiphy0_clk",
46 "csi0phytimer_clk_src",
Soundrapandian Jeyaprakashb1638752017-07-25 15:14:53 -070047 "csi0phytimer_clk";
Alok Pandey1837a202017-06-25 20:39:56 +053048 clock-cntl-level = "turbo";
49 clock-rates =
Soundrapandian Jeyaprakashb1638752017-07-25 15:14:53 -070050 <0 0 0 0 320000000 0 269333333 0>;
Jigarkumar Zala861231152017-02-28 14:05:11 -080051 status = "ok";
52 };
53
Pavan Kumar Chilamkurthi6bc57c12017-05-31 22:16:55 -070054 cam_csiphy1: qcom,csiphy@ac66000{
Jigarkumar Zala861231152017-02-28 14:05:11 -080055 cell-index = <1>;
56 compatible = "qcom,csiphy-v1.0", "qcom,csiphy";
57 reg = <0xac66000 0x1000>;
58 reg-names = "csiphy";
Alok Pandey1837a202017-06-25 20:39:56 +053059 reg-cam-base = <0x66000>;
Jigarkumar Zala861231152017-02-28 14:05:11 -080060 interrupts = <0 478 0>;
61 interrupt-names = "csiphy";
62 gdscr-supply = <&titan_top_gdsc>;
Alok Pandey1837a202017-06-25 20:39:56 +053063 regulator-names = "gdscr";
64 csi-vdd-voltage = <1200000>;
65 mipi-csi-vdd-supply = <&pm8998_l26>;
Jigarkumar Zala861231152017-02-28 14:05:11 -080066 clocks = <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>,
67 <&clock_camcc CAM_CC_SOC_AHB_CLK>,
68 <&clock_camcc CAM_CC_SLOW_AHB_CLK_SRC>,
69 <&clock_camcc CAM_CC_CPAS_AHB_CLK>,
70 <&clock_camcc CAM_CC_CPHY_RX_CLK_SRC>,
71 <&clock_camcc CAM_CC_CSIPHY1_CLK>,
72 <&clock_camcc CAM_CC_CSI1PHYTIMER_CLK_SRC>,
Soundrapandian Jeyaprakashb1638752017-07-25 15:14:53 -070073 <&clock_camcc CAM_CC_CSI1PHYTIMER_CLK>;
Jigarkumar Zala861231152017-02-28 14:05:11 -080074 clock-names = "camnoc_axi_clk",
75 "soc_ahb_clk",
76 "slow_ahb_src_clk",
77 "cpas_ahb_clk",
78 "cphy_rx_clk_src",
79 "csiphy1_clk",
80 "csi1phytimer_clk_src",
Soundrapandian Jeyaprakashb1638752017-07-25 15:14:53 -070081 "csi1phytimer_clk";
Alok Pandey1837a202017-06-25 20:39:56 +053082 clock-cntl-level = "turbo";
83 clock-rates =
Soundrapandian Jeyaprakashb1638752017-07-25 15:14:53 -070084 <0 0 0 0 320000000 0 269333333 0>;
Jigarkumar Zala861231152017-02-28 14:05:11 -080085
86 status = "ok";
87 };
88
Pavan Kumar Chilamkurthi6bc57c12017-05-31 22:16:55 -070089 cam_csiphy2: qcom,csiphy@ac67000 {
Jigarkumar Zala861231152017-02-28 14:05:11 -080090 cell-index = <2>;
91 compatible = "qcom,csiphy-v1.0", "qcom,csiphy";
92 reg = <0xac67000 0x1000>;
93 reg-names = "csiphy";
Alok Pandey1837a202017-06-25 20:39:56 +053094 reg-cam-base = <0x67000>;
Jigarkumar Zala861231152017-02-28 14:05:11 -080095 interrupts = <0 479 0>;
96 interrupt-names = "csiphy";
97 gdscr-supply = <&titan_top_gdsc>;
Alok Pandey1837a202017-06-25 20:39:56 +053098 regulator-names = "gdscr";
99 csi-vdd-voltage = <1200000>;
100 mipi-csi-vdd-supply = <&pm8998_l26>;
Jigarkumar Zala861231152017-02-28 14:05:11 -0800101 clocks = <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>,
102 <&clock_camcc CAM_CC_SOC_AHB_CLK>,
103 <&clock_camcc CAM_CC_SLOW_AHB_CLK_SRC>,
104 <&clock_camcc CAM_CC_CPAS_AHB_CLK>,
105 <&clock_camcc CAM_CC_CPHY_RX_CLK_SRC>,
106 <&clock_camcc CAM_CC_CSIPHY2_CLK>,
107 <&clock_camcc CAM_CC_CSI2PHYTIMER_CLK_SRC>,
Soundrapandian Jeyaprakashb1638752017-07-25 15:14:53 -0700108 <&clock_camcc CAM_CC_CSI2PHYTIMER_CLK>;
Jigarkumar Zala861231152017-02-28 14:05:11 -0800109 clock-names = "camnoc_axi_clk",
110 "soc_ahb_clk",
111 "slow_ahb_src_clk",
112 "cpas_ahb_clk",
113 "cphy_rx_clk_src",
114 "csiphy2_clk",
115 "csi2phytimer_clk_src",
Soundrapandian Jeyaprakashb1638752017-07-25 15:14:53 -0700116 "csi2phytimer_clk";
Alok Pandey1837a202017-06-25 20:39:56 +0530117 clock-cntl-level = "turbo";
118 clock-rates =
Soundrapandian Jeyaprakashb1638752017-07-25 15:14:53 -0700119 <0 0 0 0 320000000 0 269333333 0>;
Jigarkumar Zala861231152017-02-28 14:05:11 -0800120 status = "ok";
121 };
122
Pavan Kumar Chilamkurthi6bc57c12017-05-31 22:16:55 -0700123 cam_cci: qcom,cci@ac4a000 {
Jigarkumar Zala861231152017-02-28 14:05:11 -0800124 cell-index = <0>;
125 compatible = "qcom,cci";
Jigarkumar Zala861231152017-02-28 14:05:11 -0800126 #address-cells = <1>;
127 #size-cells = <0>;
Alok Pandey1837a202017-06-25 20:39:56 +0530128 reg = <0xac4a000 0x4000>;
Jigarkumar Zala861231152017-02-28 14:05:11 -0800129 reg-names = "cci";
Alok Pandey1837a202017-06-25 20:39:56 +0530130 reg-cam-base = <0x4a000>;
Jigarkumar Zala861231152017-02-28 14:05:11 -0800131 interrupt-names = "cci";
Alok Pandey1837a202017-06-25 20:39:56 +0530132 interrupts = <0 460 0>;
Jigarkumar Zala861231152017-02-28 14:05:11 -0800133 status = "ok";
134 gdscr-supply = <&titan_top_gdsc>;
Alok Pandey1837a202017-06-25 20:39:56 +0530135 regulator-names = "gdscr";
Jigarkumar Zala861231152017-02-28 14:05:11 -0800136 clocks = <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>,
137 <&clock_camcc CAM_CC_SOC_AHB_CLK>,
138 <&clock_camcc CAM_CC_SLOW_AHB_CLK_SRC>,
139 <&clock_camcc CAM_CC_CPAS_AHB_CLK>,
140 <&clock_camcc CAM_CC_CCI_CLK>,
141 <&clock_camcc CAM_CC_CCI_CLK_SRC>;
142 clock-names = "camnoc_axi_clk",
143 "soc_ahb_clk",
144 "slow_ahb_src_clk",
145 "cpas_ahb_clk",
146 "cci_clk",
147 "cci_clk_src";
Alok Pandey1837a202017-06-25 20:39:56 +0530148 src-clock-name = "cci_clk_src";
149 clock-cntl-level = "turbo";
150 clock-rates = <0 0 0 0 0 37500000>;
151 pinctrl-names = "cam_default", "cam_suspend";
Jigarkumar Zala861231152017-02-28 14:05:11 -0800152 pinctrl-0 = <&cci0_active &cci1_active>;
153 pinctrl-1 = <&cci0_suspend &cci1_suspend>;
154 gpios = <&tlmm 17 0>,
155 <&tlmm 18 0>,
156 <&tlmm 19 0>,
157 <&tlmm 20 0>;
Alok Pandey1837a202017-06-25 20:39:56 +0530158 gpio-req-tbl-num = <0 1 2 3>;
159 gpio-req-tbl-flags = <1 1 1 1>;
160 gpio-req-tbl-label = "CCI_I2C_DATA0",
Jigarkumar Zala861231152017-02-28 14:05:11 -0800161 "CCI_I2C_CLK0",
162 "CCI_I2C_DATA1",
163 "CCI_I2C_CLK1";
164
165 i2c_freq_100Khz: qcom,i2c_standard_mode {
166 qcom,hw-thigh = <201>;
167 qcom,hw-tlow = <174>;
168 qcom,hw-tsu-sto = <204>;
169 qcom,hw-tsu-sta = <231>;
170 qcom,hw-thd-dat = <22>;
171 qcom,hw-thd-sta = <162>;
172 qcom,hw-tbuf = <227>;
173 qcom,hw-scl-stretch-en = <0>;
174 qcom,hw-trdhld = <6>;
175 qcom,hw-tsp = <3>;
176 qcom,cci-clk-src = <37500000>;
177 status = "ok";
178 };
179
180 i2c_freq_400Khz: qcom,i2c_fast_mode {
181 qcom,hw-thigh = <38>;
182 qcom,hw-tlow = <56>;
183 qcom,hw-tsu-sto = <40>;
184 qcom,hw-tsu-sta = <40>;
185 qcom,hw-thd-dat = <22>;
186 qcom,hw-thd-sta = <35>;
187 qcom,hw-tbuf = <62>;
188 qcom,hw-scl-stretch-en = <0>;
189 qcom,hw-trdhld = <6>;
190 qcom,hw-tsp = <3>;
191 qcom,cci-clk-src = <37500000>;
192 status = "ok";
193 };
194
195 i2c_freq_custom: qcom,i2c_custom_mode {
196 qcom,hw-thigh = <38>;
197 qcom,hw-tlow = <56>;
198 qcom,hw-tsu-sto = <40>;
199 qcom,hw-tsu-sta = <40>;
200 qcom,hw-thd-dat = <22>;
201 qcom,hw-thd-sta = <35>;
202 qcom,hw-tbuf = <62>;
203 qcom,hw-scl-stretch-en = <1>;
204 qcom,hw-trdhld = <6>;
205 qcom,hw-tsp = <3>;
206 qcom,cci-clk-src = <37500000>;
207 status = "ok";
208 };
209
210 i2c_freq_1Mhz: qcom,i2c_fast_plus_mode {
211 qcom,hw-thigh = <16>;
212 qcom,hw-tlow = <22>;
213 qcom,hw-tsu-sto = <17>;
214 qcom,hw-tsu-sta = <18>;
215 qcom,hw-thd-dat = <16>;
216 qcom,hw-thd-sta = <15>;
217 qcom,hw-tbuf = <24>;
218 qcom,hw-scl-stretch-en = <0>;
219 qcom,hw-trdhld = <3>;
220 qcom,hw-tsp = <3>;
221 qcom,cci-clk-src = <37500000>;
222 status = "ok";
223 };
224 };
Seemanta Duttadf1dde72017-04-05 17:33:02 -0700225
226 qcom,cam_smmu {
227 compatible = "qcom,msm-cam-smmu";
228 status = "ok";
229
230 msm_cam_smmu_ife {
231 compatible = "qcom,msm-cam-smmu-cb";
Patrick Daly8cb8d962017-05-08 14:46:09 -0700232 iommus = <&apps_smmu 0x808 0x0>,
233 <&apps_smmu 0x810 0x8>,
234 <&apps_smmu 0xc08 0x0>,
235 <&apps_smmu 0xc10 0x8>;
Seemanta Duttadf1dde72017-04-05 17:33:02 -0700236 label = "ife";
237 ife_iova_mem_map: iova-mem-map {
238 /* IO region is approximately 3.4 GB */
239 iova-mem-region-io {
240 iova-region-name = "io";
241 iova-region-start = <0x7400000>;
242 iova-region-len = <0xd8c00000>;
243 iova-region-id = <0x3>;
244 status = "ok";
245 };
246 };
247 };
248
Rajakumar Govindaram0e33b712017-07-19 15:31:04 -0700249 msm_cam_smmu_jpeg {
250 compatible = "qcom,msm-cam-smmu-cb";
251 iommus = <&apps_smmu 0x1060 0x8>,
252 <&apps_smmu 0x1068 0x8>;
253 label = "jpeg";
254 jpeg_iova_mem_map: iova-mem-map {
255 /* IO region is approximately 3.4 GB */
256 iova-mem-region-io {
257 iova-region-name = "io";
258 iova-region-start = <0x7400000>;
259 iova-region-len = <0xd8c00000>;
260 iova-region-id = <0x3>;
261 status = "ok";
262 };
263 };
264 };
265
Seemanta Duttadf1dde72017-04-05 17:33:02 -0700266 msm_cam_icp_fw {
267 compatible = "qcom,msm-cam-smmu-fw-dev";
268 label="icp";
269 memory-region = <&pil_camera_mem>;
270 };
271
272 msm_cam_smmu_icp {
273 compatible = "qcom,msm-cam-smmu-cb";
Patrick Daly8cb8d962017-05-08 14:46:09 -0700274 iommus = <&apps_smmu 0x1078 0x2>,
275 <&apps_smmu 0x1020 0x8>,
276 <&apps_smmu 0x1040 0x8>,
277 <&apps_smmu 0x1030 0x0>,
278 <&apps_smmu 0x1050 0x0>;
Seemanta Duttadf1dde72017-04-05 17:33:02 -0700279 label = "icp";
280 icp_iova_mem_map: iova-mem-map {
281 iova-mem-region-firmware {
282 /* Firmware region is 5MB */
283 iova-region-name = "firmware";
284 iova-region-start = <0x0>;
285 iova-region-len = <0x500000>;
286 iova-region-id = <0x0>;
287 status = "ok";
288 };
289
290 iova-mem-region-shared {
291 /* Shared region is 100MB long */
292 iova-region-name = "shared";
293 iova-region-start = <0x7400000>;
294 iova-region-len = <0x6400000>;
295 iova-region-id = <0x1>;
296 status = "ok";
297 };
298
299 iova-mem-region-io {
300 /* IO region is approximately 3.3 GB */
301 iova-region-name = "io";
302 iova-region-start = <0xd800000>;
303 iova-region-len = <0xd2800000>;
304 iova-region-id = <0x3>;
305 status = "ok";
306 };
307 };
308 };
309
310 msm_cam_smmu_cpas_cdm {
311 compatible = "qcom,msm-cam-smmu-cb";
Patrick Daly8cb8d962017-05-08 14:46:09 -0700312 iommus = <&apps_smmu 0x1000 0x0>;
Seemanta Duttadf1dde72017-04-05 17:33:02 -0700313 label = "cpas-cdm0";
314 cpas_cdm_iova_mem_map: iova-mem-map {
315 iova-mem-region-io {
316 /* IO region is approximately 3.4 GB */
317 iova-region-name = "io";
318 iova-region-start = <0x7400000>;
319 iova-region-len = <0xd8c00000>;
320 iova-region-id = <0x3>;
321 status = "ok";
322 };
323 };
324 };
325
326 msm_cam_smmu_secure {
327 compatible = "qcom,msm-cam-smmu-cb";
Patrick Daly8cb8d962017-05-08 14:46:09 -0700328 iommus = <&apps_smmu 0x1001 0x0>;
Seemanta Duttadf1dde72017-04-05 17:33:02 -0700329 label = "cam-secure";
330 cam_secure_iova_mem_map: iova-mem-map {
331 /* Secure IO region is approximately 3.4 GB */
332 iova-mem-region-io {
333 iova-region-name = "io";
334 iova-region-start = <0x7400000>;
335 iova-region-len = <0xd8c00000>;
336 iova-region-id = <0x3>;
337 status = "ok";
338 };
339 };
340 };
341 };
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700342
343 qcom,cam-cpas@ac40000 {
344 cell-index = <0>;
345 compatible = "qcom,cam-cpas";
346 label = "cpas";
347 arch-compat = "cpas_top";
348 status = "ok";
349 reg-names = "cam_cpas_top", "cam_camnoc";
350 reg = <0xac40000 0x1000>,
351 <0xac42000 0x5000>;
352 reg-cam-base = <0x40000 0x42000>;
353 interrupt-names = "cpas_camnoc";
354 interrupts = <0 459 0>;
355 regulator-names = "camss-vdd";
356 camss-vdd-supply = <&titan_top_gdsc>;
357 clock-names = "gcc_ahb_clk",
358 "gcc_axi_clk",
359 "soc_ahb_clk",
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700360 "slow_ahb_clk_src",
Lakshmi Narayana Kalavala238c2b22017-06-08 17:43:57 -0700361 "cpas_ahb_clk",
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700362 "camnoc_axi_clk";
363 clocks = <&clock_gcc GCC_CAMERA_AHB_CLK>,
364 <&clock_gcc GCC_CAMERA_AXI_CLK>,
365 <&clock_camcc CAM_CC_SOC_AHB_CLK>,
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700366 <&clock_camcc CAM_CC_SLOW_AHB_CLK_SRC>,
Lakshmi Narayana Kalavala238c2b22017-06-08 17:43:57 -0700367 <&clock_camcc CAM_CC_CPAS_AHB_CLK>,
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700368 <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>;
369 src-clock-name = "slow_ahb_clk_src";
Jeyaprakash Soundrapandian33362ba2017-06-23 22:18:50 -0700370 clock-rates = <0 0 0 0 0 0>,
371 <0 0 0 19200000 0 0>,
372 <0 0 0 60000000 0 0>,
373 <0 0 0 66660000 0 0>,
374 <0 0 0 73840000 0 0>,
375 <0 0 0 80000000 0 0>,
376 <0 0 0 80000000 0 0>;
377 clock-cntl-level = "suspend", "minsvs", "lowsvs", "svs",
378 "svs_l1", "nominal", "turbo";
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700379 qcom,msm-bus,name = "cam_ahb";
Jeyaprakash Soundrapandian33362ba2017-06-23 22:18:50 -0700380 qcom,msm-bus,num-cases = <7>;
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700381 qcom,msm-bus,num-paths = <1>;
382 qcom,msm-bus,vectors-KBps =
383 <MSM_BUS_MASTER_AMPSS_M0
384 MSM_BUS_SLAVE_CAMERA_CFG 0 0>,
385 <MSM_BUS_MASTER_AMPSS_M0
Jeyaprakash Soundrapandian33362ba2017-06-23 22:18:50 -0700386 MSM_BUS_SLAVE_CAMERA_CFG 0 180000>,
387 <MSM_BUS_MASTER_AMPSS_M0
388 MSM_BUS_SLAVE_CAMERA_CFG 0 180000>,
389 <MSM_BUS_MASTER_AMPSS_M0
390 MSM_BUS_SLAVE_CAMERA_CFG 0 300000>,
391 <MSM_BUS_MASTER_AMPSS_M0
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700392 MSM_BUS_SLAVE_CAMERA_CFG 0 300000>,
393 <MSM_BUS_MASTER_AMPSS_M0
394 MSM_BUS_SLAVE_CAMERA_CFG 0 640000>,
395 <MSM_BUS_MASTER_AMPSS_M0
396 MSM_BUS_SLAVE_CAMERA_CFG 0 640000>;
Pavan Kumar Chilamkurthi071f3d22017-05-31 22:33:48 -0700397 vdd-corners = <RPMH_REGULATOR_LEVEL_OFF
398 RPMH_REGULATOR_LEVEL_RETENTION
399 RPMH_REGULATOR_LEVEL_MIN_SVS
400 RPMH_REGULATOR_LEVEL_LOW_SVS
401 RPMH_REGULATOR_LEVEL_SVS
402 RPMH_REGULATOR_LEVEL_SVS_L1
403 RPMH_REGULATOR_LEVEL_NOM
404 RPMH_REGULATOR_LEVEL_NOM_L1
405 RPMH_REGULATOR_LEVEL_NOM_L2
406 RPMH_REGULATOR_LEVEL_TURBO
407 RPMH_REGULATOR_LEVEL_TURBO_L1>;
408 vdd-corner-ahb-mapping = "suspend", "suspend",
Jeyaprakash Soundrapandian33362ba2017-06-23 22:18:50 -0700409 "minsvs", "lowsvs", "svs", "svs_l1",
Pavan Kumar Chilamkurthi071f3d22017-05-31 22:33:48 -0700410 "nominal", "nominal", "nominal",
411 "turbo", "turbo";
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700412 client-id-based;
413 client-names =
414 "csiphy0", "csiphy1", "csiphy2", "cci0",
Pavan Kumar Chilamkurthi4e070ba2017-05-12 14:47:04 -0700415 "csid0", "csid1", "csid2",
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700416 "ife0", "ife1", "ife2", "ipe0",
417 "ipe1", "cam-cdm-intf0", "cpas-cdm0", "bps0",
Rajakumar Govindaram0e33b712017-07-19 15:31:04 -0700418 "icp0", "jpeg-dma0", "jpeg-enc0", "fd0";
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700419 client-axi-port-names =
420 "cam_hf_1", "cam_hf_2", "cam_hf_2", "cam_sf_1",
Pavan Kumar Chilamkurthi4e070ba2017-05-12 14:47:04 -0700421 "cam_hf_1", "cam_hf_2", "cam_hf_2",
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700422 "cam_hf_1", "cam_hf_2", "cam_hf_2", "cam_sf_1",
423 "cam_sf_1", "cam_sf_1", "cam_sf_1", "cam_sf_1",
424 "cam_sf_1", "cam_sf_1", "cam_sf_1", "cam_sf_1";
425 client-bus-camnoc-based;
426 qcom,axi-port-list {
427 qcom,axi-port1 {
428 qcom,axi-port-name = "cam_hf_1";
429 qcom,axi-port-mnoc {
430 qcom,msm-bus,name = "cam_hf_1_mnoc";
431 qcom,msm-bus-vector-dyn-vote;
432 qcom,msm-bus,num-cases = <2>;
433 qcom,msm-bus,num-paths = <1>;
434 qcom,msm-bus,vectors-KBps =
Pavan Kumar Chilamkurthid34fd882017-06-01 01:53:09 -0700435 <MSM_BUS_MASTER_CAMNOC_HF0
436 MSM_BUS_SLAVE_EBI_CH0 0 0>,
437 <MSM_BUS_MASTER_CAMNOC_HF0
438 MSM_BUS_SLAVE_EBI_CH0 0 0>;
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700439 };
440 qcom,axi-port-camnoc {
441 qcom,msm-bus,name = "cam_hf_1_camnoc";
442 qcom,msm-bus-vector-dyn-vote;
443 qcom,msm-bus,num-cases = <2>;
444 qcom,msm-bus,num-paths = <1>;
445 qcom,msm-bus,vectors-KBps =
Pavan Kumar Chilamkurthid34fd882017-06-01 01:53:09 -0700446 <MSM_BUS_MASTER_CAMNOC_HF0_UNCOMP
447 MSM_BUS_SLAVE_CAMNOC_UNCOMP 0 0>,
448 <MSM_BUS_MASTER_CAMNOC_HF0_UNCOMP
449 MSM_BUS_SLAVE_CAMNOC_UNCOMP 0 0>;
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700450 };
451 };
452 qcom,axi-port2 {
453 qcom,axi-port-name = "cam_hf_2";
454 qcom,axi-port-mnoc {
455 qcom,msm-bus,name = "cam_hf_2_mnoc";
456 qcom,msm-bus-vector-dyn-vote;
457 qcom,msm-bus,num-cases = <2>;
458 qcom,msm-bus,num-paths = <1>;
459 qcom,msm-bus,vectors-KBps =
Pavan Kumar Chilamkurthid34fd882017-06-01 01:53:09 -0700460 <MSM_BUS_MASTER_CAMNOC_HF1
461 MSM_BUS_SLAVE_EBI_CH0 0 0>,
462 <MSM_BUS_MASTER_CAMNOC_HF1
463 MSM_BUS_SLAVE_EBI_CH0 0 0>;
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700464 };
465 qcom,axi-port-camnoc {
Pavan Kumar Chilamkurthid34fd882017-06-01 01:53:09 -0700466 qcom,msm-bus,name = "cam_hf_2_camnoc";
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700467 qcom,msm-bus-vector-dyn-vote;
468 qcom,msm-bus,num-cases = <2>;
469 qcom,msm-bus,num-paths = <1>;
470 qcom,msm-bus,vectors-KBps =
Pavan Kumar Chilamkurthid34fd882017-06-01 01:53:09 -0700471 <MSM_BUS_MASTER_CAMNOC_HF1_UNCOMP
472 MSM_BUS_SLAVE_CAMNOC_UNCOMP 0 0>,
473 <MSM_BUS_MASTER_CAMNOC_HF1_UNCOMP
474 MSM_BUS_SLAVE_CAMNOC_UNCOMP 0 0>;
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700475 };
476 };
477 qcom,axi-port3 {
478 qcom,axi-port-name = "cam_sf_1";
479 qcom,axi-port-mnoc {
480 qcom,msm-bus,name = "cam_sf_1_mnoc";
481 qcom,msm-bus-vector-dyn-vote;
482 qcom,msm-bus,num-cases = <2>;
483 qcom,msm-bus,num-paths = <1>;
484 qcom,msm-bus,vectors-KBps =
Pavan Kumar Chilamkurthid34fd882017-06-01 01:53:09 -0700485 <MSM_BUS_MASTER_CAMNOC_SF
486 MSM_BUS_SLAVE_EBI_CH0 0 0>,
487 <MSM_BUS_MASTER_CAMNOC_SF
488 MSM_BUS_SLAVE_EBI_CH0 0 0>;
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700489 };
490 qcom,axi-port-camnoc {
491 qcom,msm-bus,name = "cam_sf_1_camnoc";
492 qcom,msm-bus-vector-dyn-vote;
493 qcom,msm-bus,num-cases = <2>;
494 qcom,msm-bus,num-paths = <1>;
495 qcom,msm-bus,vectors-KBps =
Pavan Kumar Chilamkurthid34fd882017-06-01 01:53:09 -0700496 <MSM_BUS_MASTER_CAMNOC_SF_UNCOMP
497 MSM_BUS_SLAVE_CAMNOC_UNCOMP 0 0>,
498 <MSM_BUS_MASTER_CAMNOC_SF_UNCOMP
499 MSM_BUS_SLAVE_CAMNOC_UNCOMP 0 0>;
Pavan Kumar Chilamkurthib6aa86d2017-05-01 23:47:11 -0700500 };
501 };
502 };
503 };
Hariram Purushothamane87b44e02017-03-29 13:53:01 -0700504
505 qcom,cam-cdm-intf {
506 compatible = "qcom,cam-cdm-intf";
507 cell-index = <0>;
508 label = "cam-cdm-intf";
509 num-hw-cdm = <1>;
Hariram Purushothaman91c8cb52017-04-24 21:53:36 -0700510 cdm-client-names = "vfe",
Rajakumar Govindaram0e33b712017-07-19 15:31:04 -0700511 "jpegdma",
512 "jpegenc",
Hariram Purushothamane87b44e02017-03-29 13:53:01 -0700513 "fd";
514 status = "ok";
515 };
516
517 qcom,cpas-cdm0@ac48000 {
518 cell-index = <0>;
519 compatible = "qcom,cam170-cpas-cdm0";
520 label = "cpas-cdm";
521 reg = <0xac48000 0x1000>;
522 reg-names = "cpas-cdm";
523 reg-cam-base = <0x48000>;
524 interrupts = <0 461 0>;
525 interrupt-names = "cpas-cdm";
526 regulator-names = "camss";
527 camss-supply = <&titan_top_gdsc>;
528 clock-names = "gcc_camera_ahb",
529 "gcc_camera_axi",
530 "cam_cc_soc_ahb_clk",
531 "cam_cc_cpas_ahb_clk",
532 "cam_cc_camnoc_axi_clk";
533 clocks = <&clock_gcc GCC_CAMERA_AHB_CLK>,
534 <&clock_gcc GCC_CAMERA_AXI_CLK>,
535 <&clock_camcc CAM_CC_SOC_AHB_CLK>,
536 <&clock_camcc CAM_CC_CPAS_AHB_CLK>,
537 <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>;
538 clock-rates = <0 0 0 0 0>;
Jeyaprakash Soundrapandian33362ba2017-06-23 22:18:50 -0700539 clock-cntl-level = "svs";
Hariram Purushothaman91c8cb52017-04-24 21:53:36 -0700540 cdm-client-names = "ife";
Hariram Purushothamane87b44e02017-03-29 13:53:01 -0700541 status = "ok";
542 };
Jing Zhoud4020692017-02-09 15:16:49 -0800543
544 qcom,cam-isp {
545 compatible = "qcom,cam-isp";
546 arch-compat = "ife";
547 status = "ok";
548 };
549
Pavan Kumar Chilamkurthi6bc57c12017-05-31 22:16:55 -0700550 cam_csid0: qcom,csid0@acb3000 {
Jing Zhoud4020692017-02-09 15:16:49 -0800551 cell-index = <0>;
552 compatible = "qcom,csid170";
553 reg-names = "csid";
554 reg = <0xacb3000 0x1000>;
555 reg-cam-base = <0xb3000>;
556 interrupt-names = "csid";
557 interrupts = <0 464 0>;
558 regulator-names = "camss", "ife0";
559 camss-supply = <&titan_top_gdsc>;
560 ife0-supply = <&ife_0_gdsc>;
561 clock-names = "camera_ahb",
562 "camera_axi",
563 "soc_ahb_clk",
564 "cpas_ahb_clk",
565 "slow_ahb_clk_src",
566 "ife_csid_clk",
567 "ife_csid_clk_src",
568 "ife_cphy_rx_clk",
569 "cphy_rx_clk_src",
570 "ife_clk",
571 "ife_clk_src",
572 "camnoc_axi_clk",
573 "ife_axi_clk";
574 clocks = <&clock_gcc GCC_CAMERA_AHB_CLK>,
575 <&clock_gcc GCC_CAMERA_AXI_CLK>,
576 <&clock_camcc CAM_CC_SOC_AHB_CLK>,
577 <&clock_camcc CAM_CC_CPAS_AHB_CLK>,
578 <&clock_camcc CAM_CC_SLOW_AHB_CLK_SRC>,
579 <&clock_camcc CAM_CC_IFE_0_CSID_CLK>,
580 <&clock_camcc CAM_CC_IFE_0_CSID_CLK_SRC>,
581 <&clock_camcc CAM_CC_IFE_0_CPHY_RX_CLK>,
582 <&clock_camcc CAM_CC_CPHY_RX_CLK_SRC>,
583 <&clock_camcc CAM_CC_IFE_0_CLK>,
584 <&clock_camcc CAM_CC_IFE_0_CLK_SRC>,
585 <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>,
586 <&clock_camcc CAM_CC_IFE_0_AXI_CLK>;
Jeyaprakash Soundrapandian33362ba2017-06-23 22:18:50 -0700587 clock-rates = <0 0 0 0 0 0 500000000 0 0 0 600000000 0 0>;
588 clock-cntl-level = "turbo";
Jing Zhoud4020692017-02-09 15:16:49 -0800589 src-clock-name = "ife_csid_clk_src";
590 status = "ok";
591 };
592
Pavan Kumar Chilamkurthi6bc57c12017-05-31 22:16:55 -0700593 cam_vfe0: qcom,vfe0@acaf000 {
Jing Zhoud4020692017-02-09 15:16:49 -0800594 cell-index = <0>;
595 compatible = "qcom,vfe170";
596 reg-names = "ife";
597 reg = <0xacaf000 0x4000>;
598 reg-cam-base = <0xaf000>;
599 interrupt-names = "ife";
600 interrupts = <0 465 0>;
601 regulator-names = "camss", "ife0";
602 camss-supply = <&titan_top_gdsc>;
603 ife0-supply = <&ife_0_gdsc>;
604 clock-names = "camera_ahb",
605 "camera_axi",
606 "soc_ahb_clk",
607 "cpas_ahb_clk",
608 "slow_ahb_clk_src",
609 "ife_clk",
610 "ife_clk_src",
611 "camnoc_axi_clk",
612 "ife_axi_clk";
613 clocks = <&clock_gcc GCC_CAMERA_AHB_CLK>,
614 <&clock_gcc GCC_CAMERA_AXI_CLK>,
615 <&clock_camcc CAM_CC_SOC_AHB_CLK>,
616 <&clock_camcc CAM_CC_CPAS_AHB_CLK>,
617 <&clock_camcc CAM_CC_SLOW_AHB_CLK_SRC>,
618 <&clock_camcc CAM_CC_IFE_0_CLK>,
619 <&clock_camcc CAM_CC_IFE_0_CLK_SRC>,
620 <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>,
621 <&clock_camcc CAM_CC_IFE_0_AXI_CLK>;
Harsh Shahff6bc352017-05-16 18:03:08 -0700622 clock-rates = <0 0 0 0 0 0 600000000 0 0>;
Jeyaprakash Soundrapandian33362ba2017-06-23 22:18:50 -0700623 clock-cntl-level = "turbo";
Jing Zhoud4020692017-02-09 15:16:49 -0800624 src-clock-name = "ife_clk_src";
625 clock-names-option = "ife_dsp_clk";
626 clocks-option = <&clock_camcc CAM_CC_IFE_0_DSP_CLK>;
627 clock-rates-option = <404000000>;
628 status = "ok";
629 };
630
Pavan Kumar Chilamkurthi6bc57c12017-05-31 22:16:55 -0700631 cam_csid1: qcom,csid1@acba000 {
Jing Zhoud4020692017-02-09 15:16:49 -0800632 cell-index = <1>;
633 compatible = "qcom,csid170";
634 reg-names = "csid";
635 reg = <0xacba000 0x1000>;
636 reg-cam-base = <0xba000>;
637 interrupt-names = "csid";
638 interrupts = <0 466 0>;
639 regulator-names = "camss", "ife1";
640 camss-supply = <&titan_top_gdsc>;
641 ife1-supply = <&ife_1_gdsc>;
642 clock-names = "camera_ahb",
643 "camera_axi",
644 "soc_ahb_clk",
645 "cpas_ahb_clk",
646 "slow_ahb_clk_src",
647 "ife_csid_clk",
648 "ife_csid_clk_src",
649 "ife_cphy_rx_clk",
650 "cphy_rx_clk_src",
651 "ife_clk",
652 "ife_clk_src",
653 "camnoc_axi_clk",
654 "ife_axi_clk";
655 clocks = <&clock_gcc GCC_CAMERA_AHB_CLK>,
656 <&clock_gcc GCC_CAMERA_AXI_CLK>,
657 <&clock_camcc CAM_CC_SOC_AHB_CLK>,
658 <&clock_camcc CAM_CC_CPAS_AHB_CLK>,
659 <&clock_camcc CAM_CC_SLOW_AHB_CLK_SRC>,
660 <&clock_camcc CAM_CC_IFE_1_CSID_CLK>,
661 <&clock_camcc CAM_CC_IFE_1_CSID_CLK_SRC>,
662 <&clock_camcc CAM_CC_IFE_1_CPHY_RX_CLK>,
663 <&clock_camcc CAM_CC_CPHY_RX_CLK_SRC>,
664 <&clock_camcc CAM_CC_IFE_1_CLK>,
665 <&clock_camcc CAM_CC_IFE_1_CLK_SRC>,
666 <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>,
667 <&clock_camcc CAM_CC_IFE_1_AXI_CLK>;
Jeyaprakash Soundrapandian33362ba2017-06-23 22:18:50 -0700668 clock-rates = <0 0 0 0 0 0 500000000 0 0 0 600000000 0 0>;
669 clock-cntl-level = "turbo";
Jing Zhoud4020692017-02-09 15:16:49 -0800670 src-clock-name = "ife_csid_clk_src";
671 status = "ok";
672 };
673
Pavan Kumar Chilamkurthi6bc57c12017-05-31 22:16:55 -0700674 cam_vfe1: qcom,vfe1@acb6000 {
Jing Zhoud4020692017-02-09 15:16:49 -0800675 cell-index = <1>;
676 compatible = "qcom,vfe170";
677 reg-names = "ife";
678 reg = <0xacb6000 0x4000>;
679 reg-cam-base = <0xb6000>;
680 interrupt-names = "ife";
681 interrupts = <0 467 0>;
682 regulator-names = "camss", "ife1";
683 camss-supply = <&titan_top_gdsc>;
684 ife1-supply = <&ife_1_gdsc>;
685 clock-names = "camera_ahb",
686 "camera_axi",
687 "soc_ahb_clk",
688 "cpas_ahb_clk",
689 "slow_ahb_clk_src",
690 "ife_clk",
691 "ife_clk_src",
692 "camnoc_axi_clk",
693 "ife_axi_clk";
694 clocks = <&clock_gcc GCC_CAMERA_AHB_CLK>,
695 <&clock_gcc GCC_CAMERA_AXI_CLK>,
696 <&clock_camcc CAM_CC_SOC_AHB_CLK>,
697 <&clock_camcc CAM_CC_CPAS_AHB_CLK>,
698 <&clock_camcc CAM_CC_SLOW_AHB_CLK_SRC>,
699 <&clock_camcc CAM_CC_IFE_1_CLK>,
700 <&clock_camcc CAM_CC_IFE_1_CLK_SRC>,
701 <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>,
702 <&clock_camcc CAM_CC_IFE_1_AXI_CLK>;
Harsh Shahff6bc352017-05-16 18:03:08 -0700703 clock-rates = <0 0 0 0 0 0 600000000 0 0>;
Jeyaprakash Soundrapandian33362ba2017-06-23 22:18:50 -0700704 clock-cntl-level = "turbo";
Jing Zhoud4020692017-02-09 15:16:49 -0800705 src-clock-name = "ife_clk_src";
706 clock-names-option = "ife_dsp_clk";
707 clocks-option = <&clock_camcc CAM_CC_IFE_1_DSP_CLK>;
708 clock-rates-option = <404000000>;
709 status = "ok";
710 };
711
Pavan Kumar Chilamkurthi6bc57c12017-05-31 22:16:55 -0700712 cam_csid_lite: qcom,csid-lite@acc8000 {
Jing Zhoud4020692017-02-09 15:16:49 -0800713 cell-index = <2>;
714 compatible = "qcom,csid-lite170";
715 reg-names = "csid-lite";
716 reg = <0xacc8000 0x1000>;
717 reg-cam-base = <0xc8000>;
718 interrupt-names = "csid-lite";
719 interrupts = <0 468 0>;
720 regulator-names = "camss";
721 camss-supply = <&titan_top_gdsc>;
722 clock-names = "camera_ahb",
723 "camera_axi",
724 "soc_ahb_clk",
725 "cpas_ahb_clk",
726 "slow_ahb_clk_src",
727 "ife_csid_clk",
728 "ife_csid_clk_src",
729 "ife_cphy_rx_clk",
730 "cphy_rx_clk_src",
731 "ife_clk",
732 "ife_clk_src",
733 "camnoc_axi_clk";
734 clocks = <&clock_gcc GCC_CAMERA_AHB_CLK>,
735 <&clock_gcc GCC_CAMERA_AXI_CLK>,
736 <&clock_camcc CAM_CC_SOC_AHB_CLK>,
737 <&clock_camcc CAM_CC_CPAS_AHB_CLK>,
738 <&clock_camcc CAM_CC_SLOW_AHB_CLK_SRC>,
739 <&clock_camcc CAM_CC_IFE_LITE_CSID_CLK>,
740 <&clock_camcc CAM_CC_IFE_LITE_CSID_CLK_SRC>,
741 <&clock_camcc CAM_CC_IFE_LITE_CPHY_RX_CLK>,
742 <&clock_camcc CAM_CC_CPHY_RX_CLK_SRC>,
743 <&clock_camcc CAM_CC_IFE_LITE_CLK>,
744 <&clock_camcc CAM_CC_IFE_LITE_CLK_SRC>,
745 <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>;
Jeyaprakash Soundrapandian33362ba2017-06-23 22:18:50 -0700746 clock-rates = <0 0 0 0 0 0 384000000 0 0 0 404000000 0>;
747 clock-cntl-level = "turbo";
Jing Zhoud4020692017-02-09 15:16:49 -0800748 src-clock-name = "ife_csid_clk_src";
749 status = "ok";
750 };
751
Pavan Kumar Chilamkurthi6bc57c12017-05-31 22:16:55 -0700752 cam_vfe_lite: qcom,vfe-lite@acc4000 {
Jing Zhoud4020692017-02-09 15:16:49 -0800753 cell-index = <2>;
754 compatible = "qcom,vfe-lite170";
755 reg-names = "ife-lite";
756 reg = <0xacc4000 0x4000>;
757 reg-cam-base = <0xc4000>;
758 interrupt-names = "ife-lite";
759 interrupts = <0 469 0>;
760 regulator-names = "camss";
761 camss-supply = <&titan_top_gdsc>;
762 clock-names = "camera_ahb",
763 "camera_axi",
764 "soc_ahb_clk",
765 "cpas_ahb_clk",
766 "slow_ahb_clk_src",
767 "ife_clk",
768 "ife_clk_src",
769 "camnoc_axi_clk";
770 clocks = <&clock_gcc GCC_CAMERA_AHB_CLK>,
771 <&clock_gcc GCC_CAMERA_AXI_CLK>,
772 <&clock_camcc CAM_CC_SOC_AHB_CLK>,
773 <&clock_camcc CAM_CC_CPAS_AHB_CLK>,
774 <&clock_camcc CAM_CC_SLOW_AHB_CLK_SRC>,
775 <&clock_camcc CAM_CC_IFE_LITE_CLK>,
776 <&clock_camcc CAM_CC_IFE_LITE_CLK_SRC>,
777 <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>;
Jeyaprakash Soundrapandian33362ba2017-06-23 22:18:50 -0700778 clock-rates = <0 0 0 0 0 0 404000000 0>;
779 clock-cntl-level = "turbo";
Jing Zhoud4020692017-02-09 15:16:49 -0800780 src-clock-name = "ife_clk_src";
781 status = "ok";
782 };
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700783
784 qcom,cam-icp {
785 compatible = "qcom,cam-icp";
786 compat-hw-name = "qcom,a5",
787 "qcom,ipe0",
788 "qcom,ipe1",
789 "qcom,bps";
790 num-a5 = <1>;
791 num-ipe = <2>;
792 num-bps = <1>;
793 status = "ok";
794 };
795
Pavan Kumar Chilamkurthi6bc57c12017-05-31 22:16:55 -0700796 cam_a5: qcom,a5@ac00000 {
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700797 cell-index = <0>;
Suresh Vankadara22697d32017-07-03 12:14:09 -0700798 compatible = "qcom,cam-a5";
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700799 reg = <0xac00000 0x6000>,
800 <0xac10000 0x8000>,
801 <0xac18000 0x3000>;
802 reg-names = "a5_qgic", "a5_sierra", "a5_csr";
803 reg-cam-base = <0x00000 0x10000 0x18000>;
804 interrupts = <0 463 0>;
805 interrupt-names = "a5";
806 regulator-names = "camss-vdd";
807 camss-vdd-supply = <&titan_top_gdsc>;
808 clock-names = "gcc_cam_ahb_clk",
809 "gcc_cam_axi_clk",
Lakshmi Narayana Kalavala238c2b22017-06-08 17:43:57 -0700810 "soc_fast_ahb",
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700811 "soc_ahb_clk",
812 "cpas_ahb_clk",
813 "camnoc_axi_clk",
814 "icp_apb_clk",
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700815 "icp_clk",
Lakshmi Narayana Kalavalae5f367a2017-05-25 11:36:18 -0700816 "icp_clk_src";
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700817 clocks = <&clock_gcc GCC_CAMERA_AHB_CLK>,
818 <&clock_gcc GCC_CAMERA_AXI_CLK>,
Lakshmi Narayana Kalavala238c2b22017-06-08 17:43:57 -0700819 <&clock_camcc CAM_CC_FAST_AHB_CLK_SRC>,
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700820 <&clock_camcc CAM_CC_SOC_AHB_CLK>,
821 <&clock_camcc CAM_CC_CPAS_AHB_CLK>,
822 <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>,
823 <&clock_camcc CAM_CC_ICP_APB_CLK>,
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700824 <&clock_camcc CAM_CC_ICP_CLK>,
Lakshmi Narayana Kalavalae5f367a2017-05-25 11:36:18 -0700825 <&clock_camcc CAM_CC_ICP_CLK_SRC>;
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700826
Lakshmi Narayana Kalavala238c2b22017-06-08 17:43:57 -0700827 clock-rates = <0 0 400000000 0 0 0 0 0 600000000>;
Jeyaprakash Soundrapandian33362ba2017-06-23 22:18:50 -0700828 clock-cntl-level = "turbo";
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700829 fw_name = "CAMERA_ICP.elf";
830 status = "ok";
831 };
832
Pavan Kumar Chilamkurthi6bc57c12017-05-31 22:16:55 -0700833 cam_ipe0: qcom,ipe0 {
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700834 cell-index = <0>;
Suresh Vankadara22697d32017-07-03 12:14:09 -0700835 compatible = "qcom,cam-ipe";
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700836 regulator-names = "ipe0-vdd";
837 ipe0-vdd-supply = <&ipe_0_gdsc>;
838 clock-names = "ipe_0_ahb_clk",
839 "ipe_0_areg_clk",
840 "ipe_0_axi_clk",
841 "ipe_0_clk",
842 "ipe_0_clk_src";
843 clocks = <&clock_camcc CAM_CC_IPE_0_AHB_CLK>,
844 <&clock_camcc CAM_CC_IPE_0_AREG_CLK>,
845 <&clock_camcc CAM_CC_IPE_0_AXI_CLK>,
846 <&clock_camcc CAM_CC_IPE_0_CLK>,
847 <&clock_camcc CAM_CC_IPE_0_CLK_SRC>;
848
Lakshmi Narayana Kalavala238c2b22017-06-08 17:43:57 -0700849 clock-rates = <0 0 0 0 600000000>;
Jeyaprakash Soundrapandian33362ba2017-06-23 22:18:50 -0700850 clock-cntl-level = "turbo";
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700851 status = "ok";
852 };
853
Pavan Kumar Chilamkurthi6bc57c12017-05-31 22:16:55 -0700854 cam_ipe1: qcom,ipe1 {
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700855 cell-index = <1>;
Suresh Vankadara22697d32017-07-03 12:14:09 -0700856 compatible = "qcom,cam-ipe";
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700857 regulator-names = "ipe1-vdd";
858 ipe1-vdd-supply = <&ipe_1_gdsc>;
859 clock-names = "ipe_1_ahb_clk",
860 "ipe_1_areg_clk",
861 "ipe_1_axi_clk",
862 "ipe_1_clk",
863 "ipe_1_clk_src";
864 clocks = <&clock_camcc CAM_CC_IPE_1_AHB_CLK>,
865 <&clock_camcc CAM_CC_IPE_1_AREG_CLK>,
866 <&clock_camcc CAM_CC_IPE_1_AXI_CLK>,
867 <&clock_camcc CAM_CC_IPE_1_CLK>,
868 <&clock_camcc CAM_CC_IPE_1_CLK_SRC>;
869
Lakshmi Narayana Kalavala238c2b22017-06-08 17:43:57 -0700870 clock-rates = <0 0 0 0 600000000>;
Jeyaprakash Soundrapandian33362ba2017-06-23 22:18:50 -0700871 clock-cntl-level = "turbo";
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700872 status = "ok";
873 };
874
Pavan Kumar Chilamkurthi6bc57c12017-05-31 22:16:55 -0700875 cam_bps: qcom,bps {
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700876 cell-index = <0>;
Suresh Vankadara22697d32017-07-03 12:14:09 -0700877 compatible = "qcom,cam-bps";
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700878 regulator-names = "bps-vdd";
879 bps-vdd-supply = <&bps_gdsc>;
880 clock-names = "bps_ahb_clk",
881 "bps_areg_clk",
882 "bps_axi_clk",
883 "bps_clk",
884 "bps_clk_src";
885 clocks = <&clock_camcc CAM_CC_BPS_AHB_CLK>,
886 <&clock_camcc CAM_CC_BPS_AREG_CLK>,
887 <&clock_camcc CAM_CC_BPS_AXI_CLK>,
888 <&clock_camcc CAM_CC_BPS_CLK>,
889 <&clock_camcc CAM_CC_BPS_CLK_SRC>;
890
Lakshmi Narayana Kalavala238c2b22017-06-08 17:43:57 -0700891 clock-rates = <0 0 0 0 600000000>;
Jeyaprakash Soundrapandian33362ba2017-06-23 22:18:50 -0700892 clock-cntl-level = "turbo";
Hariram Purushothaman71b8d632017-05-15 14:49:59 -0700893 status = "ok";
894 };
Rajakumar Govindaram0e33b712017-07-19 15:31:04 -0700895
896 qcom,cam-jpeg {
897 compatible = "qcom,cam-jpeg";
898 compat-hw-name = "qcom,jpegenc",
899 "qcom,jpegdma";
900 num-jpeg-enc = <1>;
901 num-jpeg-dma = <1>;
902 status = "ok";
903 };
904
905 cam_jpeg_enc: qcom,jpegenc@ac4e000 {
906 cell-index = <0>;
907 compatible = "qcom,cam_jpeg_enc";
908 reg-names = "jpege_hw";
909 reg = <0xac4e000 0x4000>;
910 reg-cam-base = <0x4e000>;
911 interrupt-names = "jpeg";
912 interrupts = <0 474 0>;
913 regulator-names = "camss-vdd";
914 camss-vdd-supply = <&titan_top_gdsc>;
915 clock-names = "camera_ahb",
916 "camera_axi",
917 "soc_ahb_clk",
918 "cpas_ahb_clk",
919 "camnoc_axi_clk",
920 "jpegenc_clk_src",
921 "jpegenc_clk";
922 clocks = <&clock_gcc GCC_CAMERA_AHB_CLK>,
923 <&clock_gcc GCC_CAMERA_AXI_CLK>,
924 <&clock_camcc CAM_CC_SOC_AHB_CLK>,
925 <&clock_camcc CAM_CC_CPAS_AHB_CLK>,
926 <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>,
927 <&clock_camcc CAM_CC_JPEG_CLK_SRC>,
928 <&clock_camcc CAM_CC_JPEG_CLK>;
929
930 clock-rates = <0 0 0 0 0 600000000 0>;
931 src-clock-name = "jpegenc_clk_src";
932 clock-cntl-level = "nominal";
933 status = "ok";
934 };
935
936 cam_jpeg_dma: qcom,jpegdma@0xac52000{
937 cell-index = <0>;
938 compatible = "qcom,cam_jpeg_dma";
939 reg-names = "jpegdma_hw";
940 reg = <0xac52000 0x4000>;
941 reg-cam-base = <0x52000>;
942 interrupt-names = "jpegdma";
943 interrupts = <0 475 0>;
944 regulator-names = "camss-vdd";
945 camss-vdd-supply = <&titan_top_gdsc>;
946 clock-names = "camera_ahb",
947 "camera_axi",
948 "soc_ahb_clk",
949 "cpas_ahb_clk",
950 "camnoc_axi_clk",
951 "jpegdma_clk_src",
952 "jpegdma_clk";
953 clocks = <&clock_gcc GCC_CAMERA_AHB_CLK>,
954 <&clock_gcc GCC_CAMERA_AXI_CLK>,
955 <&clock_camcc CAM_CC_SOC_AHB_CLK>,
956 <&clock_camcc CAM_CC_CPAS_AHB_CLK>,
957 <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>,
958 <&clock_camcc CAM_CC_JPEG_CLK_SRC>,
959 <&clock_camcc CAM_CC_JPEG_CLK>;
960
961 clock-rates = <0 0 0 0 0 600000000 0>;
962 src-clock-name = "jpegdma_clk_src";
963 clock-cntl-level = "nominal";
964 status = "ok";
965 };
966
Lakshmi Narayana Kalavalac0dac062016-12-01 17:20:09 -0800967};