driver: media: tegra: Update tegra camera_common
[linux-3.10.git] / arch / arm64 / boot / dts / tegra210-platforms / tegra210-camera-e3333-a00.dtsi
1 /*
2  * Copyright (c) 2015-2016, NVIDIA CORPORATION.  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 as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful, but WITHOUT
10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
12  * more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
16  */
17
18 #include <dt-bindings/media/camera.h>
19 #include <dt-bindings/platform/t210/t210.h>
20
21 /* camera control gpio definitions */
22 / {
23         host1x {
24                 vi {
25                         num-channels = <6>;
26                         ports {
27                                 #address-cells = <1>;
28                                 #size-cells = <0>;
29                                 port@0 {
30                                         reg = <0>;
31                                         e3333_vi_in0: endpoint {
32                                                 csi-port = <0>;
33                                                 bus-width = <2>;
34                                                 remote-endpoint = <&e3333_ov5693_out0>;
35                                         };
36                                 };
37                                 port@1 {
38                                         reg = <1>;
39                                         e3333_vi_in1: endpoint {
40                                                 csi-port = <1>;
41                                                 bus-width = <2>;
42                                                 remote-endpoint = <&e3333_ov5693_out1>;
43                                         };
44                                 };
45                                 port@2 {
46                                         reg = <2>;
47                                         e3333_vi_in2: endpoint {
48                                                 csi-port = <2>;
49                                                 bus-width = <2>;
50                                                 remote-endpoint = <&e3333_ov5693_out2>;
51                                         };
52                                 };
53                                 port@3 {
54                                         reg = <3>;
55                                         e3333_vi_in3: endpoint {
56                                                 csi-port = <3>;
57                                                 bus-width = <2>;
58                                                 remote-endpoint = <&e3333_ov5693_out3>;
59                                         };
60                                 };
61                                 port@4 {
62                                         reg = <4>;
63                                         e3333_vi_in4: endpoint {
64                                                 csi-port = <4>;
65                                                 bus-width = <2>;
66                                                 remote-endpoint = <&e3333_ov5693_out4>;
67                                         };
68                                 };
69                                 port@5 {
70                                         reg = <5>;
71                                         e3333_vi_in5: endpoint {
72                                                 csi-port = <5>;
73                                                 bus-width = <2>;
74                                                 remote-endpoint = <&e3333_ov5693_out5>;
75                                         };
76                                 };
77                         };
78                 };
79
80                 i2c@546c0000 {
81                         status = "okay";
82                         #address-cells = <1>;
83                         #size-cells = <0>;
84
85                         tca9548@77 {
86                                 i2c@0 {
87                                         ov5693_a@36 {
88                                                 compatible = "nvidia,ov5693";
89                                                 reg = <0x36>;
90                                                 avdd-reg = "vana";
91                                                 iovdd-reg = "vif";
92                                                 devnode = "video0";
93                                                 physical_w = "3.674";
94                                                 physical_h = "2.738";
95                                                 /* Defines number of frames to be dropped by driver internally after applying */
96                                                 /* sensor crop settings. Some sensors send corrupt frames after applying */
97                                                 /* crop co-ordinates */
98                                                 post_crop_frame_drop = "0";
99
100                                                 mode0 { // OV5693_MODE_2592X1944
101                                                         mclk_khz = "24000";
102                                                         num_lanes = "2";
103                                                         tegra_sinterface = "serial_a";
104                                                         discontinuous_clk = "no";
105                                                         dpcm_enable = "false";
106                                                         cil_settletime = "0";
107                                                         active_w = "2592";
108                                                         active_h = "1944";
109                                                         pixel_t = "bayer_bggr";
110                                                         readout_orientation = "90";
111                                                         line_length = "2688";
112                                                         inherent_gain = "1";
113                                                         mclk_multiplier = "17.0";
114                                                         pix_clk_hz = "160000000";
115                                                         min_gain_val = "1.0";
116                                                         max_gain_val = "16";
117                                                         min_hdr_ratio = "1";
118                                                         max_hdr_ratio = "64";
119                                                         min_framerate = "1.816577";
120                                                         max_framerate = "30";
121                                                         min_exp_time = "34";
122                                                         max_exp_time = "550385";
123                                                 };
124                                                 mode1 { //OV5693_MODE_2592X1458
125                                                         mclk_khz = "24000";
126                                                         num_lanes = "2";
127                                                         tegra_sinterface = "serial_a";
128                                                         discontinuous_clk = "no";
129                                                         dpcm_enable = "false";
130                                                         cil_settletime = "0";
131                                                         active_w = "2592";
132                                                         active_h = "1458";
133                                                         pixel_t = "bayer_bggr";
134                                                         readout_orientation = "90";
135                                                         line_length = "2688";
136                                                         inherent_gain = "1";
137                                                         mclk_multiplier = "17.0";
138                                                         pix_clk_hz = "160000000";
139                                                         min_gain_val = "1.0";
140                                                         max_gain_val = "16";
141                                                         min_hdr_ratio = "1";
142                                                         max_hdr_ratio = "64";
143                                                         min_framerate = "1.816577";
144                                                         max_framerate = "30";
145                                                         min_exp_time = "34";
146                                                         max_exp_time = "550385";
147                                                 };
148                                                 mode2 { //OV5693_MODE_1280X720
149                                                         mclk_khz = "24000";
150                                                         num_lanes = "2";
151                                                         tegra_sinterface = "serial_a";
152                                                         discontinuous_clk = "no";
153                                                         dpcm_enable = "false";
154                                                         cil_settletime = "0";
155                                                         active_w = "1280";
156                                                         active_h = "720";
157                                                         pixel_t = "bayer_bggr";
158                                                         readout_orientation = "90";
159                                                         line_length = "1752";
160                                                         inherent_gain = "1";
161                                                         mclk_multiplier = "17.0";
162                                                         pix_clk_hz = "160000000";
163                                                         min_gain_val = "1.0";
164                                                         max_gain_val = "16";
165                                                         min_hdr_ratio = "1";
166                                                         max_hdr_ratio = "64";
167                                                         min_framerate = "2.787078";
168                                                         max_framerate = "120";
169                                                         min_exp_time = "22";
170                                                         max_exp_time = "358733";
171                                                 };
172                                                 // HDR Modes
173                                                 mode3 { //OV5693_MODE_2592X1944_HDR
174                                                         mclk_khz = "24000";
175                                                         num_lanes = "2";
176                                                         tegra_sinterface = "serial_a";
177                                                         discontinuous_clk = "no";
178                                                         dpcm_enable = "false";
179                                                         cil_settletime = "0";
180                                                         active_w = "2592";
181                                                         active_h = "1944";
182                                                         pixel_t = "hdr_bggr";
183                                                         readout_orientation = "90";
184                                                         line_length = "3696";
185                                                         inherent_gain = "1";
186                                                         mclk_multiplier = "19.0";
187                                                         pix_clk_hz = "176000000";
188                                                         min_gain_val = "1.0";
189                                                         max_gain_val = "16";
190                                                         min_hdr_ratio = "1";
191                                                         max_hdr_ratio = "64";
192                                                         min_framerate = "1.453262";
193                                                         max_framerate = "24";
194                                                         min_exp_time = "42";
195                                                         max_exp_time = "687981";
196                                                 };
197                                                 ports {
198                                                         #address-cells = <1>;
199                                                         #size-cells = <0>;
200                                                         port@0 {
201                                                                 reg = <0>;
202                                                                 e3333_ov5693_out0: endpoint {
203                                                                         csi-port = <0>;
204                                                                         bus-width = <2>;
205                                                                         remote-endpoint = <&e3333_vi_in0>;
206                                                                 };
207                                                         };
208                                                 };
209                                         };
210                                 };
211                                 i2c@1 {
212                                         ov5693_b@36 {
213                                                 compatible = "nvidia,ov5693";
214                                                 reg = <0x36>;
215                                                 avdd-reg = "vana";
216                                                 iovdd-reg = "vif";
217                                                 devnode = "video1";
218                                                 physical_w = "3.674";
219                                                 physical_h = "2.738";
220                                                 /* Defines number of frames to be dropped by driver internally after applying */
221                                                 /* sensor crop settings. Some sensors send corrupt frames after applying */
222                                                 /* crop co-ordinates */
223                                                 post_crop_frame_drop = "0";
224
225                                                 mode0 { // OV5693_MODE_2592X1944
226                                                         mclk_khz = "24000";
227                                                         num_lanes = "2";
228                                                         tegra_sinterface = "serial_b";
229                                                         discontinuous_clk = "no";
230                                                         dpcm_enable = "false";
231                                                         cil_settletime = "0";
232                                                         active_w = "2592";
233                                                         active_h = "1944";
234                                                         pixel_t = "bayer_bggr";
235                                                         readout_orientation = "90";
236                                                         line_length = "2688";
237                                                         inherent_gain = "1";
238                                                         mclk_multiplier = "17.0";
239                                                         pix_clk_hz = "160000000";
240                                                         min_gain_val = "1.0";
241                                                         max_gain_val = "16";
242                                                         min_hdr_ratio = "1";
243                                                         max_hdr_ratio = "64";
244                                                         min_framerate = "1.816577";
245                                                         max_framerate = "30";
246                                                         min_exp_time = "34";
247                                                         max_exp_time = "550385";
248                                                 };
249                                                 mode1 { //OV5693_MODE_2592X1458
250                                                         mclk_khz = "24000";
251                                                         num_lanes = "2";
252                                                         tegra_sinterface = "serial_b";
253                                                         discontinuous_clk = "no";
254                                                         dpcm_enable = "false";
255                                                         cil_settletime = "0";
256                                                         active_w = "2592";
257                                                         active_h = "1458";
258                                                         pixel_t = "bayer_bggr";
259                                                         readout_orientation = "90";
260                                                         line_length = "2688";
261                                                         inherent_gain = "1";
262                                                         mclk_multiplier = "17.0";
263                                                         pix_clk_hz = "160000000";
264                                                         min_gain_val = "1.0";
265                                                         max_gain_val = "16";
266                                                         min_hdr_ratio = "1";
267                                                         max_hdr_ratio = "64";
268                                                         min_framerate = "1.816577";
269                                                         max_framerate = "30";
270                                                         min_exp_time = "34";
271                                                         max_exp_time = "550385";
272                                                 };
273                                                 mode2 { //OV5693_MODE_1280X720
274                                                         mclk_khz = "24000";
275                                                         num_lanes = "2";
276                                                         tegra_sinterface = "serial_b";
277                                                         discontinuous_clk = "no";
278                                                         dpcm_enable = "false";
279                                                         cil_settletime = "0";
280                                                         active_w = "1280";
281                                                         active_h = "720";
282                                                         pixel_t = "bayer_bggr";
283                                                         readout_orientation = "90";
284                                                         line_length = "1752";
285                                                         inherent_gain = "1";
286                                                         mclk_multiplier = "17.0";
287                                                         pix_clk_hz = "160000000";
288                                                         min_gain_val = "1.0";
289                                                         max_gain_val = "16";
290                                                         min_hdr_ratio = "1";
291                                                         max_hdr_ratio = "64";
292                                                         min_framerate = "2.787078";
293                                                         max_framerate = "120";
294                                                         min_exp_time = "22";
295                                                         max_exp_time = "358733";
296                                                 };
297                                                 // HDR Modes
298                                                 mode3 { //OV5693_MODE_2592X1944_HDR
299                                                         mclk_khz = "24000";
300                                                         num_lanes = "2";
301                                                         tegra_sinterface = "serial_b";
302                                                         discontinuous_clk = "no";
303                                                         dpcm_enable = "false";
304                                                         cil_settletime = "0";
305                                                         active_w = "2592";
306                                                         active_h = "1944";
307                                                         pixel_t = "hdr_bggr";
308                                                         readout_orientation = "90";
309                                                         line_length = "3696";
310                                                         inherent_gain = "1";
311                                                         mclk_multiplier = "19.0";
312                                                         pix_clk_hz = "176000000";
313                                                         min_gain_val = "1.0";
314                                                         max_gain_val = "16";
315                                                         min_hdr_ratio = "1";
316                                                         max_hdr_ratio = "64";
317                                                         min_framerate = "1.453262";
318                                                         max_framerate = "24";
319                                                         min_exp_time = "42";
320                                                         max_exp_time = "687981";
321                                                 };
322                                                 ports {
323                                                         #address-cells = <1>;
324                                                         #size-cells = <0>;
325                                                         port@0 {
326                                                                 reg = <0>;
327                                                                 e3333_ov5693_out1: endpoint {
328                                                                         csi-port = <1>;
329                                                                         bus-width = <2>;
330                                                                         remote-endpoint = <&e3333_vi_in1>;
331                                                                 };
332                                                         };
333                                                 };
334                                         };
335                                 };
336                                 i2c@2 {
337                                         ov5693_c@36 {
338                                                 compatible = "nvidia,ov5693";
339                                                 reg = <0x36>;
340                                                 avdd-reg = "vana";
341                                                 iovdd-reg = "vif";
342                                                 devnode = "video2";
343                                                 physical_w = "3.674";
344                                                 physical_h = "2.738";
345                                                 /* Defines number of frames to be dropped by driver internally after applying */
346                                                 /* sensor crop settings. Some sensors send corrupt frames after applying */
347                                                 /* crop co-ordinates */
348                                                 post_crop_frame_drop = "0";
349
350                                                 mode0 { // OV5693_MODE_2592X1944
351                                                         mclk_khz = "24000";
352                                                         num_lanes = "2";
353                                                         tegra_sinterface = "serial_c";
354                                                         discontinuous_clk = "no";
355                                                         dpcm_enable = "false";
356                                                         cil_settletime = "0";
357                                                         active_w = "2592";
358                                                         active_h = "1944";
359                                                         pixel_t = "bayer_bggr";
360                                                         readout_orientation = "90";
361                                                         line_length = "2688";
362                                                         inherent_gain = "1";
363                                                         mclk_multiplier = "17.0";
364                                                         pix_clk_hz = "160000000";
365                                                         min_gain_val = "1.0";
366                                                         max_gain_val = "16";
367                                                         min_hdr_ratio = "1";
368                                                         max_hdr_ratio = "64";
369                                                         min_framerate = "1.816577";
370                                                         max_framerate = "30";
371                                                         min_exp_time = "34";
372                                                         max_exp_time = "550385";
373                                                 };
374                                                 mode1 { //OV5693_MODE_2592X1458
375                                                         mclk_khz = "24000";
376                                                         num_lanes = "2";
377                                                         tegra_sinterface = "serial_c";
378                                                         discontinuous_clk = "no";
379                                                         dpcm_enable = "false";
380                                                         cil_settletime = "0";
381                                                         active_w = "2592";
382                                                         active_h = "1458";
383                                                         pixel_t = "bayer_bggr";
384                                                         readout_orientation = "90";
385                                                         line_length = "2688";
386                                                         inherent_gain = "1";
387                                                         mclk_multiplier = "17.0";
388                                                         pix_clk_hz = "160000000";
389                                                         min_gain_val = "1.0";
390                                                         max_gain_val = "16";
391                                                         min_hdr_ratio = "1";
392                                                         max_hdr_ratio = "64";
393                                                         min_framerate = "1.816577";
394                                                         max_framerate = "30";
395                                                         min_exp_time = "34";
396                                                         max_exp_time = "550385";
397                                                 };
398                                                 mode2 { //OV5693_MODE_1280X720
399                                                         mclk_khz = "24000";
400                                                         num_lanes = "2";
401                                                         tegra_sinterface = "serial_c";
402                                                         discontinuous_clk = "no";
403                                                         dpcm_enable = "false";
404                                                         cil_settletime = "0";
405                                                         active_w = "1280";
406                                                         active_h = "720";
407                                                         pixel_t = "bayer_bggr";
408                                                         readout_orientation = "90";
409                                                         line_length = "1752";
410                                                         inherent_gain = "1";
411                                                         mclk_multiplier = "17.0";
412                                                         pix_clk_hz = "160000000";
413                                                         min_gain_val = "1.0";
414                                                         max_gain_val = "16";
415                                                         min_hdr_ratio = "1";
416                                                         max_hdr_ratio = "64";
417                                                         min_framerate = "2.787078";
418                                                         max_framerate = "120";
419                                                         min_exp_time = "22";
420                                                         max_exp_time = "358733";
421                                                 };
422                                                 // HDR Modes
423                                                 mode3 { //OV5693_MODE_2592X1944_HDR
424                                                         mclk_khz = "24000";
425                                                         num_lanes = "2";
426                                                         tegra_sinterface = "serial_c";
427                                                         discontinuous_clk = "no";
428                                                         dpcm_enable = "false";
429                                                         cil_settletime = "0";
430                                                         active_w = "2592";
431                                                         active_h = "1944";
432                                                         pixel_t = "hdr_bggr";
433                                                         readout_orientation = "90";
434                                                         line_length = "3696";
435                                                         inherent_gain = "1";
436                                                         mclk_multiplier = "19.0";
437                                                         pix_clk_hz = "176000000";
438                                                         min_gain_val = "1.0";
439                                                         max_gain_val = "16";
440                                                         min_hdr_ratio = "1";
441                                                         max_hdr_ratio = "64";
442                                                         min_framerate = "1.453262";
443                                                         max_framerate = "24";
444                                                         min_exp_time = "42";
445                                                         max_exp_time = "687981";
446                                                 };
447                                                 ports {
448                                                         #address-cells = <1>;
449                                                         #size-cells = <0>;
450                                                         port@0 {
451                                                                 reg = <0>;
452                                                                 e3333_ov5693_out2: endpoint {
453                                                                         csi-port = <2>;
454                                                                         bus-width = <2>;
455                                                                         remote-endpoint = <&e3333_vi_in2>;
456                                                                 };
457                                                         };
458                                                 };
459                                         };
460                                 };
461                                 i2c@3 {
462                                         ov5693_d@36 {
463                                                 compatible = "nvidia,ov5693";
464                                                 reg = <0x36>;
465                                                 avdd-reg = "vana";
466                                                 iovdd-reg = "vif";
467                                                 devnode = "video3";
468                                                 physical_w = "3.674";
469                                                 physical_h = "2.738";
470                                                 /* Defines number of frames to be dropped by driver internally after applying */
471                                                 /* sensor crop settings. Some sensors send corrupt frames after applying */
472                                                 /* crop co-ordinates */
473                                                 post_crop_frame_drop = "0";
474
475                                                 mode0 { // OV5693_MODE_2592X1944
476                                                         mclk_khz = "24000";
477                                                         num_lanes = "2";
478                                                         tegra_sinterface = "serial_d";
479                                                         discontinuous_clk = "no";
480                                                         dpcm_enable = "false";
481                                                         cil_settletime = "0";
482                                                         active_w = "2592";
483                                                         active_h = "1944";
484                                                         pixel_t = "bayer_bggr";
485                                                         readout_orientation = "90";
486                                                         line_length = "2688";
487                                                         inherent_gain = "1";
488                                                         mclk_multiplier = "17.0";
489                                                         pix_clk_hz = "160000000";
490                                                         min_gain_val = "1.0";
491                                                         max_gain_val = "16";
492                                                         min_hdr_ratio = "1";
493                                                         max_hdr_ratio = "64";
494                                                         min_framerate = "1.816577";
495                                                         max_framerate = "30";
496                                                         min_exp_time = "34";
497                                                         max_exp_time = "550385";
498                                                 };
499                                                 mode1 { //OV5693_MODE_2592X1458
500                                                         mclk_khz = "24000";
501                                                         num_lanes = "2";
502                                                         tegra_sinterface = "serial_d";
503                                                         discontinuous_clk = "no";
504                                                         dpcm_enable = "false";
505                                                         cil_settletime = "0";
506                                                         active_w = "2592";
507                                                         active_h = "1458";
508                                                         pixel_t = "bayer_bggr";
509                                                         readout_orientation = "90";
510                                                         line_length = "2688";
511                                                         inherent_gain = "1";
512                                                         mclk_multiplier = "17.0";
513                                                         pix_clk_hz = "160000000";
514                                                         min_gain_val = "1.0";
515                                                         max_gain_val = "16";
516                                                         min_hdr_ratio = "1";
517                                                         max_hdr_ratio = "64";
518                                                         min_framerate = "1.816577";
519                                                         max_framerate = "30";
520                                                         min_exp_time = "34";
521                                                         max_exp_time = "550385";
522                                                 };
523                                                 mode2 { //OV5693_MODE_1280X720
524                                                         mclk_khz = "24000";
525                                                         num_lanes = "2";
526                                                         tegra_sinterface = "serial_d";
527                                                         discontinuous_clk = "no";
528                                                         dpcm_enable = "false";
529                                                         cil_settletime = "0";
530                                                         active_w = "1280";
531                                                         active_h = "720";
532                                                         pixel_t = "bayer_bggr";
533                                                         readout_orientation = "90";
534                                                         line_length = "1752";
535                                                         inherent_gain = "1";
536                                                         mclk_multiplier = "17.0";
537                                                         pix_clk_hz = "160000000";
538                                                         min_gain_val = "1.0";
539                                                         max_gain_val = "16";
540                                                         min_hdr_ratio = "1";
541                                                         max_hdr_ratio = "64";
542                                                         min_framerate = "2.787078";
543                                                         max_framerate = "120";
544                                                         min_exp_time = "22";
545                                                         max_exp_time = "358733";
546                                                 };
547                                                 // HDR Modes
548                                                 mode3 { //OV5693_MODE_2592X1944_HDR
549                                                         mclk_khz = "24000";
550                                                         num_lanes = "2";
551                                                         tegra_sinterface = "serial_d";
552                                                         discontinuous_clk = "no";
553                                                         dpcm_enable = "false";
554                                                         cil_settletime = "0";
555                                                         active_w = "2592";
556                                                         active_h = "1944";
557                                                         pixel_t = "hdr_bggr";
558                                                         readout_orientation = "90";
559                                                         line_length = "3696";
560                                                         inherent_gain = "1";
561                                                         mclk_multiplier = "19.0";
562                                                         pix_clk_hz = "176000000";
563                                                         min_gain_val = "1.0";
564                                                         max_gain_val = "16";
565                                                         min_hdr_ratio = "1";
566                                                         max_hdr_ratio = "64";
567                                                         min_framerate = "1.453262";
568                                                         max_framerate = "24";
569                                                         min_exp_time = "42";
570                                                         max_exp_time = "687981";
571                                                 };
572                                                 ports {
573                                                         #address-cells = <1>;
574                                                         #size-cells = <0>;
575                                                         port@0 {
576                                                                 reg = <0>;
577                                                                 e3333_ov5693_out3: endpoint {
578                                                                         csi-port = <3>;
579                                                                         bus-width = <2>;
580                                                                         remote-endpoint = <&e3333_vi_in3>;
581                                                                 };
582                                                         };
583                                                 };
584                                         };
585                                 };
586                                 i2c@4 {
587                                         ov5693_e@36 {
588                                                 compatible = "nvidia,ov5693";
589                                                 reg = <0x36>;
590                                                 avdd-reg = "vana";
591                                                 iovdd-reg = "vif";
592                                                 devnode = "video4";
593                                                 physical_w = "3.674";
594                                                 physical_h = "2.738";
595                                                 /* Defines number of frames to be dropped by driver internally after applying */
596                                                 /* sensor crop settings. Some sensors send corrupt frames after applying */
597                                                 /* crop co-ordinates */
598                                                 post_crop_frame_drop = "0";
599
600                                                 mode0 { // OV5693_MODE_2592X1944
601                                                         mclk_khz = "24000";
602                                                         num_lanes = "2";
603                                                         tegra_sinterface = "serial_e";
604                                                         discontinuous_clk = "no";
605                                                         dpcm_enable = "false";
606                                                         cil_settletime = "0";
607                                                         active_w = "2592";
608                                                         active_h = "1944";
609                                                         pixel_t = "bayer_bggr";
610                                                         readout_orientation = "90";
611                                                         line_length = "2688";
612                                                         inherent_gain = "1";
613                                                         mclk_multiplier = "17.0";
614                                                         pix_clk_hz = "160000000";
615                                                         min_gain_val = "1.0";
616                                                         max_gain_val = "16";
617                                                         min_hdr_ratio = "1";
618                                                         max_hdr_ratio = "64";
619                                                         min_framerate = "1.816577";
620                                                         max_framerate = "30";
621                                                         min_exp_time = "34";
622                                                         max_exp_time = "550385";
623                                                 };
624                                                 mode1 { //OV5693_MODE_2592X1458
625                                                         mclk_khz = "24000";
626                                                         num_lanes = "2";
627                                                         tegra_sinterface = "serial_e";
628                                                         discontinuous_clk = "no";
629                                                         dpcm_enable = "false";
630                                                         cil_settletime = "0";
631                                                         active_w = "2592";
632                                                         active_h = "1458";
633                                                         pixel_t = "bayer_bggr";
634                                                         readout_orientation = "90";
635                                                         line_length = "2688";
636                                                         inherent_gain = "1";
637                                                         mclk_multiplier = "17.0";
638                                                         pix_clk_hz = "160000000";
639                                                         min_gain_val = "1.0";
640                                                         max_gain_val = "16";
641                                                         min_hdr_ratio = "1";
642                                                         max_hdr_ratio = "64";
643                                                         min_framerate = "1.816577";
644                                                         max_framerate = "30";
645                                                         min_exp_time = "34";
646                                                         max_exp_time = "550385";
647                                                 };
648                                                 mode2 { //OV5693_MODE_1280X720
649                                                         mclk_khz = "24000";
650                                                         num_lanes = "2";
651                                                         tegra_sinterface = "serial_e";
652                                                         discontinuous_clk = "no";
653                                                         dpcm_enable = "false";
654                                                         cil_settletime = "0";
655                                                         active_w = "1280";
656                                                         active_h = "720";
657                                                         pixel_t = "bayer_bggr";
658                                                         readout_orientation = "90";
659                                                         line_length = "1752";
660                                                         inherent_gain = "1";
661                                                         mclk_multiplier = "17.0";
662                                                         pix_clk_hz = "160000000";
663                                                         min_gain_val = "1.0";
664                                                         max_gain_val = "16";
665                                                         min_hdr_ratio = "1";
666                                                         max_hdr_ratio = "64";
667                                                         min_framerate = "2.787078";
668                                                         max_framerate = "120";
669                                                         min_exp_time = "22";
670                                                         max_exp_time = "358733";
671                                                 };
672                                                 // HDR Modes
673                                                 mode3 { //OV5693_MODE_2592X1944_HDR
674                                                         mclk_khz = "24000";
675                                                         num_lanes = "2";
676                                                         tegra_sinterface = "serial_e";
677                                                         discontinuous_clk = "no";
678                                                         dpcm_enable = "false";
679                                                         cil_settletime = "0";
680                                                         active_w = "2592";
681                                                         active_h = "1944";
682                                                         pixel_t = "hdr_bggr";
683                                                         readout_orientation = "90";
684                                                         line_length = "3696";
685                                                         inherent_gain = "1";
686                                                         mclk_multiplier = "19.0";
687                                                         pix_clk_hz = "176000000";
688                                                         min_gain_val = "1.0";
689                                                         max_gain_val = "16";
690                                                         min_hdr_ratio = "1";
691                                                         max_hdr_ratio = "64";
692                                                         min_framerate = "1.453262";
693                                                         max_framerate = "24";
694                                                         min_exp_time = "42";
695                                                         max_exp_time = "687981";
696                                                 };
697                                                 ports {
698                                                         #address-cells = <1>;
699                                                         #size-cells = <0>;
700                                                         port@0 {
701                                                                 reg = <0>;
702                                                                 e3333_ov5693_out4: endpoint {
703                                                                         csi-port = <4>;
704                                                                         bus-width = <2>;
705                                                                         remote-endpoint = <&e3333_vi_in4>;
706                                                                 };
707                                                         };
708                                                 };
709                                         };
710                                 };
711                                 i2c@5 {
712                                         ov5693_f@36 {
713                                                 compatible = "nvidia,ov5693";
714                                                 reg = <0x36>;
715                                                 avdd-reg = "vana";
716                                                 iovdd-reg = "vif";
717                                                 devnode = "video5";
718                                                 physical_w = "3.674";
719                                                 physical_h = "2.738";
720                                                 /* Defines number of frames to be dropped by driver internally after applying */
721                                                 /* sensor crop settings. Some sensors send corrupt frames after applying */
722                                                 /* crop co-ordinates */
723                                                 post_crop_frame_drop = "0";
724
725                                                 mode0 { // OV5693_MODE_2592X1944
726                                                         mclk_khz = "24000";
727                                                         num_lanes = "2";
728                                                         tegra_sinterface = "serial_f";
729                                                         discontinuous_clk = "no";
730                                                         dpcm_enable = "false";
731                                                         cil_settletime = "0";
732                                                         active_w = "2592";
733                                                         active_h = "1944";
734                                                         pixel_t = "bayer_bggr";
735                                                         readout_orientation = "90";
736                                                         line_length = "2688";
737                                                         inherent_gain = "1";
738                                                         mclk_multiplier = "17.0";
739                                                         pix_clk_hz = "160000000";
740                                                         min_gain_val = "1.0";
741                                                         max_gain_val = "16";
742                                                         min_hdr_ratio = "1";
743                                                         max_hdr_ratio = "64";
744                                                         min_framerate = "1.816577";
745                                                         max_framerate = "30";
746                                                         min_exp_time = "34";
747                                                         max_exp_time = "550385";
748                                                 };
749                                                 mode1 { //OV5693_MODE_2592X1458
750                                                         mclk_khz = "24000";
751                                                         num_lanes = "2";
752                                                         tegra_sinterface = "serial_f";
753                                                         discontinuous_clk = "no";
754                                                         dpcm_enable = "false";
755                                                         cil_settletime = "0";
756                                                         active_w = "2592";
757                                                         active_h = "1458";
758                                                         pixel_t = "bayer_bggr";
759                                                         readout_orientation = "90";
760                                                         line_length = "2688";
761                                                         inherent_gain = "1";
762                                                         mclk_multiplier = "17.0";
763                                                         pix_clk_hz = "160000000";
764                                                         min_gain_val = "1.0";
765                                                         max_gain_val = "16";
766                                                         min_hdr_ratio = "1";
767                                                         max_hdr_ratio = "64";
768                                                         min_framerate = "1.816577";
769                                                         max_framerate = "30";
770                                                         min_exp_time = "34";
771                                                         max_exp_time = "550385";
772                                                 };
773                                                 mode2 { //OV5693_MODE_1280X720
774                                                         mclk_khz = "24000";
775                                                         num_lanes = "2";
776                                                         tegra_sinterface = "serial_f";
777                                                         discontinuous_clk = "no";
778                                                         dpcm_enable = "false";
779                                                         cil_settletime = "0";
780                                                         active_w = "1280";
781                                                         active_h = "720";
782                                                         pixel_t = "bayer_bggr";
783                                                         readout_orientation = "90";
784                                                         line_length = "1752";
785                                                         inherent_gain = "1";
786                                                         mclk_multiplier = "17.0";
787                                                         pix_clk_hz = "160000000";
788                                                         min_gain_val = "1.0";
789                                                         max_gain_val = "16";
790                                                         min_hdr_ratio = "1";
791                                                         max_hdr_ratio = "64";
792                                                         min_framerate = "2.787078";
793                                                         max_framerate = "120";
794                                                         min_exp_time = "22";
795                                                         max_exp_time = "358733";
796                                                 };
797                                                 // HDR Modes
798                                                 mode3 { //OV5693_MODE_2592X1944_HDR
799                                                         mclk_khz = "24000";
800                                                         num_lanes = "2";
801                                                         tegra_sinterface = "serial_f";
802                                                         discontinuous_clk = "no";
803                                                         dpcm_enable = "false";
804                                                         cil_settletime = "0";
805                                                         active_w = "2592";
806                                                         active_h = "1944";
807                                                         pixel_t = "hdr_bggr";
808                                                         readout_orientation = "90";
809                                                         line_length = "3696";
810                                                         inherent_gain = "1";
811                                                         mclk_multiplier = "19.0";
812                                                         pix_clk_hz = "176000000";
813                                                         min_gain_val = "1.0";
814                                                         max_gain_val = "16";
815                                                         min_hdr_ratio = "1";
816                                                         max_hdr_ratio = "64";
817                                                         min_framerate = "1.453262";
818                                                         max_framerate = "24";
819                                                         min_exp_time = "42";
820                                                         max_exp_time = "687981";
821                                                 };
822                                                 ports {
823                                                         #address-cells = <1>;
824                                                         #size-cells = <0>;
825                                                         port@0 {
826                                                                 reg = <0>;
827                                                                 e3333_ov5693_out5: endpoint {
828                                                                         csi-port = <5>;
829                                                                         bus-width = <2>;
830                                                                         remote-endpoint = <&e3333_vi_in5>;
831                                                                 };
832                                                         };
833                                                 };
834                                         };
835                                 };
836                         };
837                 };
838         };
839 };
840
841 /* camera control gpio definitions */
842 / {
843
844         tegra-camera-platform {
845                 compatible = "nvidia, tegra-camera-platform";
846
847                 /**
848                  * The general guideline for naming badge_info contains 3 parts, and is as follows,
849                  * The first part is the camera_board_id for the module; if the module is in a FFD
850                  * platform, then use the platform name for this part.
851                  * The second part contains the position of the module, ex. “rear” or “front”.
852                  * The third part contains the last 6 characters of a part number which is found
853                  * in the module's specsheet from the vender.
854                  */
855                 modules {
856                         module0 {
857                                 badge = "e3333_bottomleft_P5V27C";
858                                 position = "bottomleft";
859                                 orientation = "1";
860                                 drivernode0 {
861                                         pcl_id = "v4l2_sensor";
862                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@0/ov5693_a@36";
863                                 };
864                         };
865                         module1 {
866                                 badge = "e3333_centerleft_P5V27C";
867                                 position = "centerleft";
868                                 orientation = "1";
869                                 drivernode0 {
870                                         pcl_id = "v4l2_sensor";
871                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@1/ov5693_b@36";
872                                 };
873                         };
874                         module2 {
875                                 badge = "e3333_centerright_P5V27C";
876                                 position = "centerright";
877                                 orientation = "1";
878                                 drivernode0 {
879                                         pcl_id = "v4l2_sensor";
880                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@2/ov5693_c@36";
881                                 };
882                         };
883                         module3 {
884                                 badge = "e3333_topleft_P5V27C";
885                                 position = "topleft";
886                                 orientation = "1";
887                                 drivernode0 {
888                                         pcl_id = "v4l2_sensor";
889                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@3/ov5693_d@36";
890                                 };
891                         };
892                         module4 {
893                                 badge = "e3333_bottomright_P5V27C";
894                                 position = "bottomright";
895                                 orientation = "1";
896                                 drivernode0 {
897                                         pcl_id = "v4l2_sensor";
898                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@4/ov5693_e@36";
899                                 };
900                         };
901                         module5 {
902                                 badge = "e3333_topright_P5V27C";
903                                 position = "topright";
904                                 orientation = "1";
905                                 drivernode0 {
906                                         pcl_id = "v4l2_sensor";
907                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@5/ov5693_f@36";
908                                 };
909                         };
910                 };
911         };
912 };