driver: media: tegra: Update tegra camera_common
[linux-3.10.git] / arch / arm64 / boot / dts / tegra210-plugin-manager / tegra210-jetson-cv-camera-plugin-manager.dtsi
1 /*
2  * Copyright (c) 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; version 2 of the License.
7  *
8  * This program is distributed in the hope that it will be useful, but WITHOUT
9  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
10  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
11  * more details.
12  *
13  */
14 / {
15         /* camera plugin-manager */
16         plugin-manager {
17                 /* E3326 camera board */
18                 fragment-e3326@0 {
19                         ids = "3326-*";
20                         override@0 {
21                                 target = <&e3326_cam0>;
22                                 _overlay_ {
23                                         status = "okay";
24                                 };
25                         };
26                         override@1 {
27                                 target = <&cam_module0>;
28                                 _overlay_ {
29                                         status = "okay";
30                                         badge = "e3326_front_P5V27C";
31                                         position = "rear";
32                                         orientation = "1";
33                                 };
34                         };
35                         override@2 {
36                                 target = <&cam_module0_drivernode0>;
37                                 _overlay_ {
38                                         status = "okay";
39                                         pcl_id = "v4l2_sensor";
40                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/ov5693_c@36";
41                                 };
42                         };
43                         override@3 {
44                                 target = <&cam_module0_drivernode1>;
45                                 _overlay_ {
46                                         status = "okay";
47                                         pcl_id = "v4l2_focuser_stub";
48                                 };
49                         };
50                         /* Enable VI ports */
51                         override@4 {
52                                 target = <&vi_base>;
53                                 _overlay_ {
54                                         num-channels=<1>;
55                                 };
56                         };
57                         override@5 {
58                                 target = <&vi_port0>;
59                                 _overlay_ {
60                                         status = "okay";
61                                 };
62                         };
63                         override@6 {
64                                 target = <&e3326_vi_in0>;
65                                 _overlay_ {
66                                         status = "okay";
67                                         csi-port = <2>;
68                                         bus-width = <2>;
69                                         remote-endpoint = <&e3326_ov5693_out0>;
70                                 };
71                         };
72                 };
73
74                 /* E3323 camera board */
75                 fragment-e3323@0 {
76                         ids = "3323-1000-*";
77                         /* enable E3323 camera 0 */
78                         override@0 {
79                                 target = <&e3323_cam0>;
80                                 _overlay_ {
81                                         status = "okay";
82                                 };
83                         };
84                         override@1 {
85                                 target = <&cam_module0>;
86                                 _overlay_ {
87                                         status = "okay";
88                                         badge = "e3323_bottom_CH06P1";
89                                         position = "bottom";
90                                         orientation = "3";
91                                 };
92                         };
93                         override@2 {
94                                 target = <&cam_module0_drivernode0>;
95                                 _overlay_ {
96                                         status = "okay";
97                                         pcl_id = "v4l2_sensor";
98                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/ov23850_a@10";
99                                 };
100                         };
101                         /* enable E3323 camera 1 */
102                         override@5 {
103                                 target = <&e3323_cam1>;
104                                 _overlay_ {
105                                         status = "okay";
106                                 };
107                         };
108                         override@6 {
109                                 target = <&cam_module1>;
110                                 _overlay_ {
111                                         status = "okay";
112                                         badge = "e3323_top_CH06P1";
113                                         position = "top";
114                                         orientation = "3";
115                                 };
116                         };
117                         override@7 {
118                                 target = <&cam_module1_drivernode0>;
119                                 _overlay_ {
120                                         status = "okay";
121                                         pcl_id = "v4l2_sensor";
122                                         proc-device-tree = "/proc/device-tree/i2c@7000c000/ov23850_c@36";
123                                 };
124                         };
125                         /* enable E3323 focuser 0 */
126                         override@10 {
127                                 target = <&e3323_vcm0>;
128                                 _overlay_ {
129                                         status = "okay";
130                                 };
131                         };
132                         override@11 {
133                                 target = <&cam_module0_drivernode1>;
134                                 _overlay_ {
135                                         status = "okay";
136                                         pcl_id = "v4l2_focuser";
137                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/lc898212@72";
138                                 };
139                         };
140                         /* enable E3323 focuser 1 */
141                         override@14 {
142                                 target = <&e3323_vcm1>;
143                                 _overlay_ {
144                                         status = "okay";
145                                 };
146                         };
147                         override@15 {
148                                 target = <&cam_module1_drivernode1>;
149                                 _overlay_ {
150                                         status = "okay";
151                                         pcl_id = "v4l2_focuser";
152                                         proc-device-tree = "/proc/device-tree/i2c@7000c000/lc898212@72";
153                                 };
154                         };
155                         /* enable VI ports */
156                         override@18 {
157                                 target = <&vi_base>;
158                                 _overlay_ {
159                                         num-channels=<4>;
160                                 };
161                         };
162                         override@3 {
163                                 target = <&vi_port0>;
164                                 _overlay_ {
165                                         status = "okay";
166                                 };
167                         };
168                         override@4 {
169                                 target = <&vi_in0>;
170                                 _overlay_ {
171                                         status = "okay";
172                                         csi-port = <0>;
173                                         bus-width = <4>;
174                                         remote-endpoint = <&ov23850_out0>;
175                                 };
176                         };
177                         override@8 {
178                                 target = <&vi_port1>;
179                                 _overlay_ {
180                                         status = "okay";
181                                 };
182                         };
183                         override@9 {
184                                 target = <&vi_in1>;
185                                 _overlay_ {
186                                         status = "okay";
187                                         csi-port = <2>;
188                                         bus-width = <4>;
189                                         remote-endpoint = <&ov23850_out1>;
190                                 };
191                         };
192                         override@12 {
193                                 target = <&vi_port2>;
194                                 _overlay_ {
195                                         status = "okay";
196                                 };
197                         };
198                         override@13 {
199                                 target = <&vi_in2>;
200                                 _overlay_ {
201                                         status = "okay";
202                                         remote-endpoint = <&lc898212_out0>;
203                                 };
204                         };
205                         override@16 {
206                                 target = <&vi_port3>;
207                                 _overlay_ {
208                                         status = "okay";
209                                 };
210                         };
211                         override@17 {
212                                 target = <&vi_in3>;
213                                 _overlay_ {
214                                         status = "okay";
215                                         remote-endpoint = <&lc898212_out1>;
216                                 };
217                         };
218                 };
219
220                 /* E3322 camera board */
221                 fragment-e3322@0 {
222                         ids = "3322-1000-000";
223                         /* enable E3322 camera 0 */
224                         override@0 {
225                                 target = <&e3322_cam0>;
226                                 _overlay_ {
227                                         status = "okay";
228                                 };
229                         };
230                         override@1 {
231                                 target = <&cam_module0>;
232                                 _overlay_ {
233                                         status = "okay";
234                                         badge = "e3322_bottomleft_A815P2";
235                                         position = "bottomleft";
236                                         orientation = "1";
237                                 };
238                         };
239                         override@2 {
240                                 target = <&cam_module0_drivernode0>;
241                                 _overlay_ {
242                                         status = "okay";
243                                         pcl_id = "v4l2_sensor";
244                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@0/imx219_a@10";
245                                 };
246                         };
247                         /* enable E3322 camera 1 */
248                         override@3 {
249                                 target = <&e3322_cam1>;
250                                 _overlay_ {
251                                         status = "okay";
252                                 };
253                         };
254                         override@4 {
255                                 target = <&cam_module1>;
256                                 _overlay_ {
257                                         status = "okay";
258                                         badge = "e3322_centerleft_A815P2";
259                                         position = "centerleft";
260                                         orientation = "1";
261                                 };
262                         };
263                         override@5 {
264                                 target = <&cam_module1_drivernode0>;
265                                 _overlay_ {
266                                         status = "okay";
267                                         pcl_id = "v4l2_sensor";
268                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@1/imx219_b@10";
269                                 };
270                         };
271                         /* E3322 camera 2 */
272                         override@6 {
273                                 target = <&e3322_cam2>;
274                                 _overlay_ {
275                                         status = "okay";
276                                 };
277                         };
278                         override@7 {
279                                 target = <&cam_module2>;
280                                 _overlay_ {
281                                         status = "okay";
282                                         badge = "e3322_centerright_A815P2";
283                                         position = "centerright";
284                                         orientation = "1";
285                                 };
286                         };
287                         override@8 {
288                                 target = <&cam_module2_drivernode0>;
289                                 _overlay_ {
290                                         status = "okay";
291                                         pcl_id = "v4l2_sensor";
292                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@2/imx219_c@10";
293                                 };
294                         };
295                         /* E3322 camera 3 */
296                         override@9 {
297                                 target = <&e3322_cam3>;
298                                 _overlay_ {
299                                         status = "okay";
300                                 };
301                         };
302                         override@10 {
303                                 target = <&cam_module3>;
304                                 _overlay_ {
305                                         status = "okay";
306                                         badge = "e3322_topleft_A815P2";
307                                         position = "topleft";
308                                         orientation = "1";
309                                 };
310                         };
311                         override@11 {
312                                 target = <&cam_module3_drivernode0>;
313                                 _overlay_ {
314                                         status = "okay";
315                                         pcl_id = "v4l2_sensor";
316                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@3/imx219_d@10";
317                                 };
318                         };
319                         /* E3322 camera 4 */
320                         override@12 {
321                                 target = <&e3322_cam4>;
322                                 _overlay_ {
323                                         status = "okay";
324                                 };
325                         };
326                         override@13 {
327                                 target = <&cam_module4>;
328                                 _overlay_ {
329                                         status = "okay";
330                                         badge = "e3322_bottomright_A815P2";
331                                         position = "bottomright";
332                                         orientation = "1";
333                                 };
334                         };
335                         override@14 {
336                                 target = <&cam_module4_drivernode0>;
337                                 _overlay_ {
338                                         status = "okay";
339                                         pcl_id = "v4l2_sensor";
340                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@4/imx219_e@10";
341                                 };
342                         };
343                         /* E3322 camera 5 */
344                         override@15 {
345                                 target = <&e3322_cam5>;
346                                 _overlay_ {
347                                         status = "okay";
348                                 };
349                         };
350                         override@16 {
351                                 target = <&cam_module5>;
352                                 _overlay_ {
353                                         status = "okay";
354                                         badge = "e3322_topright_A815P2";
355                                         position = "topright";
356                                         orientation = "1";
357                                 };
358                         };
359                         override@17 {
360                                 target = <&cam_module5_drivernode0>;
361                                 _overlay_ {
362                                         status = "okay";
363                                         pcl_id = "v4l2_sensor";
364                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@5/imx219_f@10";
365                                 };
366                         };
367                         /* Enable VI ports */
368                         override@18 {
369                                 target = <&vi_base>;
370                                 _overlay_ {
371                                         num-channels=<6>;
372                                 };
373                         };
374                         override@19 {
375                                 target = <&vi_port0>;
376                                 _overlay_ {
377                                         status = "okay";
378                                 };
379                         };
380                         override@20 {
381                                 target = <&vi_in0>;
382                                 _overlay_ {
383                                         status = "okay";
384                                         csi-port = <0>;
385                                         bus-width = <2>;
386                                         remote-endpoint = <&imx219_out0>;
387                                 };
388                         };
389                         override@21 {
390                                 target = <&vi_port1>;
391                                 _overlay_ {
392                                         status = "okay";
393                                 };
394                         };
395                         override@22 {
396                                 target = <&vi_in1>;
397                                 _overlay_ {
398                                         status = "okay";
399                                         csi-port = <1>;
400                                         bus-width = <2>;
401                                         remote-endpoint = <&imx219_out1>;
402                                 };
403                         };
404                         override@23 {
405                                 target = <&vi_port2>;
406                                 _overlay_ {
407                                         status = "okay";
408                                 };
409                         };
410                         override@24 {
411                                 target = <&vi_in2>;
412                                 _overlay_ {
413                                         status = "okay";
414                                         csi-port = <2>;
415                                         bus-width = <2>;
416                                         remote-endpoint = <&imx219_out2>;
417                                 };
418                         };
419                         override@25 {
420                                 target = <&vi_port3>;
421                                 _overlay_ {
422                                         status = "okay";
423                                 };
424                         };
425                         override@26 {
426                                 target = <&vi_in3>;
427                                 _overlay_ {
428                                         status = "okay";
429                                         csi-port = <3>;
430                                         bus-width = <2>;
431                                         remote-endpoint = <&imx219_out3>;
432                                 };
433                         };
434                         override@27 {
435                                 target = <&vi_port4>;
436                                 _overlay_ {
437                                         status = "okay";
438                                 };
439                         };
440                         override@28 {
441                                 target = <&vi_in4>;
442                                 _overlay_ {
443                                         status = "okay";
444                                         csi-port = <4>;
445                                         bus-width = <2>;
446                                         remote-endpoint = <&imx219_out4>;
447                                 };
448                         };
449                         override@29 {
450                                 target = <&vi_port5>;
451                                 _overlay_ {
452                                         status = "okay";
453                                 };
454                         };
455                         override@30 {
456                                 target = <&vi_in5>;
457                                 _overlay_ {
458                                         status = "okay";
459                                         csi-port = <5>;
460                                         bus-width = <2>;
461                                         remote-endpoint = <&imx219_out5>;
462                                 };
463                         };
464                         /* Enable TCA6408 GPIO expander */
465                         override@31 {
466                                 target = <&cam_tca6408_21>;
467                                 _overlay_ {
468                                         status = "okay";
469                                 };
470                         };
471                         /* Enable TCA9548 I2C mux */
472                         override@32 {
473                                 target = <&cam_tca9548_77>;
474                                 _overlay_ {
475                                         status = "okay";
476                                 };
477                         };
478                 };
479
480                 /* E3333 camera board */
481                 fragment-e3333@0 {
482                         ids = "3333-1000-000", "3333-1000-100";
483                         /* Enable E3333 camera 0 */
484                         override@0 {
485                                 target = <&e3333_cam0>;
486                                 _overlay_ {
487                                         status = "okay";
488                                 };
489                         };
490                         override@1 {
491                                 target = <&cam_module0>;
492                                 _overlay_ {
493                                         status = "okay";
494                                         badge = "e3333_bottomleft_P5V27C";
495                                         position = "bottomleft";
496                                         orientation = "1";
497                                 };
498                         };
499                         override@2 {
500                                 target = <&cam_module0_drivernode0>;
501                                 _overlay_ {
502                                         status = "okay";
503                                         pcl_id = "v4l2_sensor";
504                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@0/ov5693_a@36";
505                                 };
506                         };
507                         /* Enable E3333 camera 1 */
508                         override@3 {
509                                 target = <&e3333_cam1>;
510                                 _overlay_ {
511                                         status = "okay";
512                                 };
513                         };
514                         override@4 {
515                                 target = <&cam_module1>;
516                                 _overlay_ {
517                                         status = "okay";
518                                         badge = "e3333_centerleft_P5V27C";
519                                         position = "centerleft";
520                                         orientation = "1";
521                                 };
522                         };
523                         override@5 {
524                                 target = <&cam_module1_drivernode0>;
525                                 _overlay_ {
526                                         status = "okay";
527                                         pcl_id = "v4l2_sensor";
528                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@1/ov5693_b@36";
529                                 };
530                         };
531                         /* Enable E3333 camera 2 */
532                         override@6 {
533                                 target = <&e3333_cam2>;
534                                 _overlay_ {
535                                         status = "okay";
536                                 };
537                         };
538                         override@7 {
539                                 target = <&cam_module2>;
540                                 _overlay_ {
541                                         status = "okay";
542                                         badge = "e3333_centerright_P5V27C";
543                                         position = "centerright";
544                                         orientation = "1";
545                                 };
546                         };
547                         override@8 {
548                                 target = <&cam_module2_drivernode0>;
549                                 _overlay_ {
550                                         status = "okay";
551                                         pcl_id = "v4l2_sensor";
552                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@2/ov5693_c@36";
553                                 };
554                         };
555                         /* Enable E3333 camera 3 */
556                         override@9 {
557                                 target = <&e3333_cam3>;
558                                 _overlay_ {
559                                         status = "okay";
560                                 };
561                         };
562                         override@10 {
563                                 target = <&cam_module3>;
564                                 _overlay_ {
565                                         status = "okay";
566                                         badge = "e3333_topleft_P5V27C";
567                                         position = "topleft";
568                                         orientation = "1";
569                                 };
570                         };
571                         override@11 {
572                                 target = <&cam_module3_drivernode0>;
573                                 _overlay_ {
574                                         status = "okay";
575                                         pcl_id = "v4l2_sensor";
576                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@3/ov5693_d@36";
577                                 };
578                         };
579                         /* Enable E3333 camera 4 */
580                         override@12 {
581                                 target = <&e3333_cam4>;
582                                 _overlay_ {
583                                         status = "okay";
584                                 };
585                         };
586                         override@13 {
587                                 target = <&cam_module4>;
588                                 _overlay_ {
589                                         status = "okay";
590                                         badge = "e3333_bottomright_P5V27C";
591                                         position = "bottomright";
592                                         orientation = "1";
593                                 };
594                         };
595                         override@14 {
596                                 target = <&cam_module4_drivernode0>;
597                                 _overlay_ {
598                                         status = "okay";
599                                         pcl_id = "v4l2_sensor";
600                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@4/ov5693_e@36";
601                                 };
602                         };
603                         /* Enable E3333 camera 5 */
604                         override@15 {
605                                 target = <&e3333_cam5>;
606                                 _overlay_ {
607                                         status = "okay";
608                                 };
609                         };
610                         override@16 {
611                                 target = <&cam_module5>;
612                                 _overlay_ {
613                                         status = "okay";
614                                         badge = "e3333_topright_P5V27C";
615                                         position = "topright";
616                                         orientation = "1";
617                                 };
618                         };
619                         override@17 {
620                                 target = <&cam_module5_drivernode0>;
621                                 _overlay_ {
622                                         status = "okay";
623                                         pcl_id = "v4l2_sensor";
624                                         proc-device-tree = "/proc/device-tree/host1x/i2c@546c0000/tca9548@77/i2c@5/ov5693_f@36";
625                                 };
626                         };
627                         /* Enable VI ports */
628                         override@18 {
629                                 target = <&vi_base>;
630                                 _overlay_ {
631                                         num-channels=<6>;
632                                 };
633                         };
634                         override@19 {
635                                 target = <&vi_port0>;
636                                 _overlay_ {
637                                         status = "okay";
638                                 };
639                         };
640                         override@20 {
641                                 target = <&e3333_vi_in0>;
642                                 _overlay_ {
643                                         status = "okay";
644                                         csi-port = <0>;
645                                         bus-width = <2>;
646                                         remote-endpoint = <&e3333_ov5693_out0>;
647                                 };
648                         };
649                         override@21 {
650                                 target = <&vi_port1>;
651                                 _overlay_ {
652                                         status = "okay";
653                                 };
654                         };
655                         override@22 {
656                                 target = <&vi_in1>;
657                                 _overlay_ {
658                                         status = "okay";
659                                         csi-port = <1>;
660                                         bus-width = <2>;
661                                         remote-endpoint = <&e3333_ov5693_out1>;
662                                 };
663                         };
664                         override@23 {
665                                 target = <&vi_port2>;
666                                 _overlay_ {
667                                         status = "okay";
668                                 };
669                         };
670                         override@24 {
671                                 target = <&vi_in2>;
672                                 _overlay_ {
673                                         status = "okay";
674                                         csi-port = <2>;
675                                         bus-width = <2>;
676                                         remote-endpoint = <&e3333_ov5693_out2>;
677                                 };
678                         };
679                         override@25 {
680                                 target = <&vi_port3>;
681                                 _overlay_ {
682                                         status = "okay";
683                                 };
684                         };
685                         override@26 {
686                                 target = <&vi_in3>;
687                                 _overlay_ {
688                                         status = "okay";
689                                         csi-port = <3>;
690                                         bus-width = <2>;
691                                         remote-endpoint = <&e3333_ov5693_out3>;
692                                 };
693                         };
694                         override@27 {
695                                 target = <&vi_port4>;
696                                 _overlay_ {
697                                         status = "okay";
698                                 };
699                         };
700                         override@28 {
701                                 target = <&vi_in4>;
702                                 _overlay_ {
703                                         status = "okay";
704                                         csi-port = <4>;
705                                         bus-width = <2>;
706                                         remote-endpoint = <&e3333_ov5693_out4>;
707                                 };
708                         };
709                         override@29 {
710                                 target = <&vi_port5>;
711                                 _overlay_ {
712                                         status = "okay";
713                                 };
714                         };
715                         override@30 {
716                                 target = <&vi_in5>;
717                                 _overlay_ {
718                                         status = "okay";
719                                         csi-port = <5>;
720                                         bus-width = <2>;
721                                         remote-endpoint = <&e3333_ov5693_out5>;
722                                 };
723                         };
724                         /* Enable TCA6408 GPIO expander */
725                         override@31 {
726                                 target = <&cam_tca6408_21>;
727                                 _overlay_ {
728                                         status = "okay";
729                                 };
730                         };
731                         /* Enable TCA9548 I2C mux */
732                         override@32 {
733                                 target = <&cam_tca9548_77>;
734                                 _overlay_ {
735                                         status = "okay";
736                                 };
737                         };
738                 };
739         };
740 };