blob: a550c0b40062d346e365f82a824ad8b4a5b2d68a [file] [log] [blame]
Kevin Chan350b6932012-08-01 02:21:00 -07001/*
Jignesh Mehtaa06591f2012-10-31 17:18:08 -07002 * Copyright (c) 2012-2013, The Linux Foundation. All rights reserved.
Kevin Chan350b6932012-08-01 02:21:00 -07003 *
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/include/ "skeleton.dtsi"
15
16/ {
Jignesh Mehtaa06591f2012-10-31 17:18:08 -070017 qcom,msm-cam@fd8C0000 {
18 compatible = "qcom,msm-cam";
Kevin Chan350b6932012-08-01 02:21:00 -070019 reg = <0xfd8C0000 0x10000>;
Jignesh Mehtaa06591f2012-10-31 17:18:08 -070020 reg-names = "msm-cam";
Kevin Chan350b6932012-08-01 02:21:00 -070021 };
Kevin Chan57b41ee2012-08-24 09:02:22 -070022
Kevin Chan350b6932012-08-01 02:21:00 -070023 qcom,csiphy@fda0ac00 {
24 cell-index = <0>;
25 compatible = "qcom,csiphy";
26 reg = <0xfda0ac00 0x200>;
27 reg-names = "csiphy";
28 interrupts = <0 78 0>;
29 interrupt-names = "csiphy";
30 };
Kevin Chan57b41ee2012-08-24 09:02:22 -070031
Kevin Chan350b6932012-08-01 02:21:00 -070032 qcom,csiphy@fda0b000 {
33 cell-index = <1>;
34 compatible = "qcom,csiphy";
35 reg = <0xfda0b000 0x200>;
36 reg-names = "csiphy";
37 interrupts = <0 79 0>;
38 interrupt-names = "csiphy";
39 };
Kevin Chan57b41ee2012-08-24 09:02:22 -070040
Kevin Chan350b6932012-08-01 02:21:00 -070041 qcom,csiphy@fda0b400 {
42 cell-index = <2>;
43 compatible = "qcom,csiphy";
44 reg = <0xfda0b400 0x200>;
45 reg-names = "csiphy";
46 interrupts = <0 80 0>;
47 interrupt-names = "csiphy";
48 };
Kevin Chan57b41ee2012-08-24 09:02:22 -070049
Kevin Chan350b6932012-08-01 02:21:00 -070050 qcom,csid@fda08000 {
51 cell-index = <0>;
52 compatible = "qcom,csid";
53 reg = <0xfda08000 0x100>;
54 reg-names = "csid";
55 interrupts = <0 51 0>;
56 interrupt-names = "csid";
Kevin Chan57b41ee2012-08-24 09:02:22 -070057 mipi_csi_vdd-supply = <&pm8941_l12>;
Kevin Chan350b6932012-08-01 02:21:00 -070058 };
Kevin Chan57b41ee2012-08-24 09:02:22 -070059
Kevin Chan350b6932012-08-01 02:21:00 -070060 qcom,csid@fda08400 {
61 cell-index = <1>;
62 compatible = "qcom,csid";
63 reg = <0xfda08400 0x100>;
64 reg-names = "csid";
65 interrupts = <0 52 0>;
66 interrupt-names = "csid";
Kevin Chan57b41ee2012-08-24 09:02:22 -070067 mipi_csi_vdd-supply = <&pm8941_l12>;
Kevin Chan350b6932012-08-01 02:21:00 -070068 };
Kevin Chan57b41ee2012-08-24 09:02:22 -070069
Kevin Chan350b6932012-08-01 02:21:00 -070070 qcom,csid@fda08800 {
71 cell-index = <2>;
72 compatible = "qcom,csid";
73 reg = <0xfda08800 0x100>;
74 reg-names = "csid";
75 interrupts = <0 53 0>;
76 interrupt-names = "csid";
Kevin Chan57b41ee2012-08-24 09:02:22 -070077 mipi_csi_vdd-supply = <&pm8941_l12>;
Kevin Chan350b6932012-08-01 02:21:00 -070078 };
Kevin Chan57b41ee2012-08-24 09:02:22 -070079
Kevin Chan350b6932012-08-01 02:21:00 -070080 qcom,csid@fda08C00 {
81 cell-index = <3>;
82 compatible = "qcom,csid";
83 reg = <0xfda08C00 0x100>;
84 reg-names = "csid";
85 interrupts = <0 54 0>;
86 interrupt-names = "csid";
Kevin Chan57b41ee2012-08-24 09:02:22 -070087 mipi_csi_vdd-supply = <&pm8941_l12>;
Kevin Chan350b6932012-08-01 02:21:00 -070088 };
Kevin Chan57b41ee2012-08-24 09:02:22 -070089
Kevin Chan350b6932012-08-01 02:21:00 -070090 qcom,ispif@fda0A000 {
91 cell-index = <0>;
92 compatible = "qcom,ispif";
Kevin Chan1d5fd4a2013-01-11 14:08:14 -080093 reg = <0xfda0A000 0x500>;
Kevin Chan350b6932012-08-01 02:21:00 -070094 reg-names = "ispif";
95 interrupts = <0 55 0>;
96 interrupt-names = "ispif";
97 };
Kevin Chan57b41ee2012-08-24 09:02:22 -070098
Kevin Chan350b6932012-08-01 02:21:00 -070099 qcom,vfe@fda10000 {
100 cell-index = <0>;
101 compatible = "qcom,vfe40";
Kevin Chan7303f592012-08-23 23:36:53 -0700102 reg = <0xfda10000 0x1000>,
103 <0xfda40000 0x200>;
104 reg-names = "vfe", "vfe_vbif";
Kevin Chan350b6932012-08-01 02:21:00 -0700105 interrupts = <0 57 0>;
106 interrupt-names = "vfe";
107 vdd-supply = <&gdsc_vfe>;
108 };
Kevin Chan57b41ee2012-08-24 09:02:22 -0700109
Kevin Chan350b6932012-08-01 02:21:00 -0700110 qcom,vfe@fda14000 {
111 cell-index = <1>;
112 compatible = "qcom,vfe40";
Kevin Chan7303f592012-08-23 23:36:53 -0700113 reg = <0xfda14000 0x1000>,
114 <0xfda40000 0x200>;
115 reg-names = "vfe", "vfe_vbif";
Kevin Chan350b6932012-08-01 02:21:00 -0700116 interrupts = <0 58 0>;
117 interrupt-names = "vfe";
118 vdd-supply = <&gdsc_vfe>;
119 };
Kevin Chan57b41ee2012-08-24 09:02:22 -0700120
Kevin Chan350b6932012-08-01 02:21:00 -0700121 qcom,jpeg@fda1c000 {
122 cell-index = <0>;
123 compatible = "qcom,jpeg";
124 reg = <0xfda1c000 0x400>;
125 reg-names = "jpeg";
126 interrupts = <0 59 0>;
127 interrupt-names = "jpeg";
Ashwini Rao078b72d2012-08-28 16:25:58 -0700128 vdd-supply = <&gdsc_jpeg>;
Kevin Chan350b6932012-08-01 02:21:00 -0700129 };
Kevin Chan57b41ee2012-08-24 09:02:22 -0700130
Kevin Chan350b6932012-08-01 02:21:00 -0700131 qcom,jpeg@fda20000 {
132 cell-index = <1>;
133 compatible = "qcom,jpeg";
134 reg = <0xfda20000 0x400>;
135 reg-names = "jpeg";
136 interrupts = <0 60 0>;
137 interrupt-names = "jpeg";
Ashwini Rao078b72d2012-08-28 16:25:58 -0700138 vdd-supply = <&gdsc_jpeg>;
Kevin Chan350b6932012-08-01 02:21:00 -0700139 };
Kevin Chan57b41ee2012-08-24 09:02:22 -0700140
Kevin Chan350b6932012-08-01 02:21:00 -0700141 qcom,jpeg@fda24000 {
142 cell-index = <2>;
143 compatible = "qcom,jpeg";
144 reg = <0xfda24000 0x400>;
145 reg-names = "jpeg";
146 interrupts = <0 61 0>;
147 interrupt-names = "jpeg";
Ashwini Rao078b72d2012-08-28 16:25:58 -0700148 vdd-supply = <&gdsc_jpeg>;
Kevin Chan350b6932012-08-01 02:21:00 -0700149 };
Kevin Chan57b41ee2012-08-24 09:02:22 -0700150
Kevin Chan350b6932012-08-01 02:21:00 -0700151 qcom,irqrouter@fda00000 {
152 cell-index = <0>;
153 compatible = "qcom,irqrouter";
154 reg = <0xfda00000 0x100>;
155 reg-names = "irqrouter";
156 };
Kevin Chan57b41ee2012-08-24 09:02:22 -0700157
Kevin Chan350b6932012-08-01 02:21:00 -0700158 qcom,cpp@fda04000 {
159 cell-index = <0>;
160 compatible = "qcom,cpp";
161 reg = <0xfda04000 0x100>;
162 reg-names = "cpp";
163 interrupts = <0 49 0>;
164 interrupt-names = "cpp";
165 vdd-supply = <&gdsc_vfe>;
166 };
Kevin Chan57b41ee2012-08-24 09:02:22 -0700167
Sreesudhan Ramakrish Ramkumard53503f2012-10-18 10:42:27 -0700168 led_flash0: qcom,camera-led-flash {
169 cell-index = <0>;
170 compatible = "qcom,camera-led-flash";
171 qcom,flash-type = <1>;
172 qcom,flash-source = <&pm8941_flash0 &pm8941_flash1>;
173 };
174
Sreesudhan Ramakrish Ramkumar39074612012-10-11 20:48:51 -0700175 cci: qcom,cci@fda0C000 {
Kevin Chan57b41ee2012-08-24 09:02:22 -0700176 cell-index = <0>;
177 compatible = "qcom,cci";
178 reg = <0xfda0C000 0x1000>;
179 #address-cells = <1>;
Jay Chokshi6c283852013-02-14 10:57:02 -0800180 #size-cells = <1>;
181 ranges;
Kevin Chan57b41ee2012-08-24 09:02:22 -0700182 reg-names = "cci";
183 interrupts = <0 50 0>;
184 interrupt-names = "cci";
Shuzhen Wang77337992013-01-08 15:46:09 -0800185 gpios = <&msmgpio 19 0>,
186 <&msmgpio 20 0>,
187 <&msmgpio 21 0>,
188 <&msmgpio 22 0>;
189 qcom,gpio-tbl-num = <0 1 2 3>;
190 qcom,gpio-tbl-flags = <1 1 1 1>;
191 qcom,gpio-tbl-label = "CCI_I2C_DATA0",
192 "CCI_I2C_CLK0",
193 "CCI_I2C_DATA1",
194 "CCI_I2C_CLK1";
195 qcom,hw-thigh = <78>;
196 qcom,hw-tlow = <114>;
197 qcom,hw-tsu-sto = <28>;
198 qcom,hw-tsu-sta = <28>;
199 qcom,hw-thd-dat = <10>;
200 qcom,hw-thd-sta = <77>;
201 qcom,hw-tbuf = <118>;
202 qcom,hw-scl-stretch-en = <0>;
203 qcom,hw-trdhld = <6>;
204 qcom,hw-tsp = <1>;
Kevin Chan57b41ee2012-08-24 09:02:22 -0700205
Sreesudhan Ramakrish Ramkumar64a92812013-01-26 18:50:42 -0800206 actuator0: qcom,actuator@18 {
207 cell-index = <0>;
Jay Chokshi6c283852013-02-14 10:57:02 -0800208 reg = <0x18 0x0>;
Sreesudhan Ramakrish Ramkumar64a92812013-01-26 18:50:42 -0800209 compatible = "qcom,actuator";
210 qcom,cci-master = <0>;
211 };
212
Kevin Chan57b41ee2012-08-24 09:02:22 -0700213 qcom,camera@6e {
Sreesudhan Ramakrish Ramkumar39074612012-10-11 20:48:51 -0700214 status = "disable";
Kevin Chan57b41ee2012-08-24 09:02:22 -0700215 };
216
217 qcom,camera@6c {
Sreesudhan Ramakrish Ramkumar39074612012-10-11 20:48:51 -0700218 status = "disable";
Kevin Chan57b41ee2012-08-24 09:02:22 -0700219 };
Sreesudhan Ramakrish Ramkumar6be27812012-09-19 16:42:06 -0700220
221 qcom,camera@90 {
222 compatible = "qcom,mt9m114";
Jay Chokshi6c283852013-02-14 10:57:02 -0800223 reg = <0x90 0x0>;
Shuzhen Wang77337992013-01-08 15:46:09 -0800224 qcom,slave-id = <0x90 0x0 0x2481>;
225 qcom,csiphy-sd-index = <1>;
226 qcom,csid-sd-index = <0>;
Sreesudhan Ramakrish Ramkumar6be27812012-09-19 16:42:06 -0700227 qcom,mount-angle = <0>;
228 qcom,sensor-name = "mt9m114";
229 cam_vdig-supply = <&pm8941_l3>;
230 cam_vana-supply = <&pm8941_l17>;
231 cam_vio-supply = <&pm8941_lvs3>;
232 qcom,cam-vreg-name = "cam_vdig", "cam_vana", "cam_vio";
233 qcom,cam-vreg-type = <0 0 1>;
234 qcom,cam-vreg-min-voltage = <1225000 2850000 0>;
235 qcom,cam-vreg-max-voltage = <1225000 2850000 0>;
236 qcom,cam-vreg-op-mode = <105000 80000 0>;
237 qcom,gpio-no-mux = <0>;
238 gpios = <&msmgpio 16 0>,
239 <&msmgpio 92 0>;
Shuzhen Wang77337992013-01-08 15:46:09 -0800240 qcom,gpio-reset = <1>;
241 qcom,gpio-req-tbl-num = <0 1>;
242 qcom,gpio-req-tbl-flags = <1 0>;
243 qcom,gpio-req-tbl-label = "CAMIF_MCLK",
244 "CAM_RESET1";
Sreesudhan Ramakrish Ramkumar6be27812012-09-19 16:42:06 -0700245 qcom,gpio-set-tbl-num = <1 1>;
246 qcom,gpio-set-tbl-flags = <0 2>;
247 qcom,gpio-set-tbl-delay = <1000 4000>;
248 qcom,csi-lane-assign = <0x4320>;
249 qcom,csi-lane-mask = <0x3>;
Shuzhen Wang77337992013-01-08 15:46:09 -0800250 qcom,sensor-position = <1>;
251 qcom,sensor-mode = <1>;
Sreesudhan Ramakrish Ramkumar9f3aa302013-01-23 14:50:58 -0800252 qcom,cci-master = <0>;
Sreesudhan Ramakrish Ramkumar6be27812012-09-19 16:42:06 -0700253 };
Kevin Chan57b41ee2012-08-24 09:02:22 -0700254 };
Kevin Chan350b6932012-08-01 02:21:00 -0700255};