1// SPDX-License-Identifier: GPL-2.0-only OR MIT 2/** 3 * DT Overlay for dual RPi Camera V2.1 (Sony IMX219) interfaced with CSI2 4 * on J721E SK, AM68 SK or AM69-SK board. 5 * https://datasheets.raspberrypi.org/camera/camera-v2-schematic.pdf 6 * 7 * Copyright (C) 2024 Texas Instruments Incorporated - https://www.ti.com/ 8 */ 9 10/dts-v1/; 11/plugin/; 12 13#include <dt-bindings/gpio/gpio.h> 14#include "k3-pinctrl.h" 15 16&{/} { 17 clk_imx219_fixed: imx219-xclk { 18 compatible = "fixed-clock"; 19 #clock-cells = <0>; 20 clock-frequency = <24000000>; 21 }; 22}; 23 24&csi_mux { 25 idle-state = <1>; 26}; 27 28/* CAM0 I2C */ 29&cam0_i2c { 30 #address-cells = <1>; 31 #size-cells = <0>; 32 imx219_0: imx219-0@10 { 33 compatible = "sony,imx219"; 34 reg = <0x10>; 35 36 clocks = <&clk_imx219_fixed>; 37 clock-names = "xclk"; 38 39 port { 40 csi2_cam0: endpoint { 41 remote-endpoint = <&csi2rx0_in_sensor>; 42 link-frequencies = /bits/ 64 <456000000>; 43 clock-lanes = <0>; 44 data-lanes = <1 2>; 45 }; 46 }; 47 }; 48}; 49 50/* CAM1 I2C */ 51&cam1_i2c { 52 #address-cells = <1>; 53 #size-cells = <0>; 54 imx219_1: imx219-1@10 { 55 compatible = "sony,imx219"; 56 reg = <0x10>; 57 58 clocks = <&clk_imx219_fixed>; 59 clock-names = "xclk"; 60 61 port { 62 csi2_cam1: endpoint { 63 remote-endpoint = <&csi2rx1_in_sensor>; 64 link-frequencies = /bits/ 64 <456000000>; 65 clock-lanes = <0>; 66 data-lanes = <1 2>; 67 }; 68 }; 69 }; 70}; 71 72 73&cdns_csi2rx0 { 74 ports { 75 #address-cells = <1>; 76 #size-cells = <0>; 77 78 csi0_port0: port@0 { 79 reg = <0>; 80 status = "okay"; 81 82 csi2rx0_in_sensor: endpoint { 83 remote-endpoint = <&csi2_cam0>; 84 bus-type = <4>; /* CSI2 DPHY. */ 85 clock-lanes = <0>; 86 data-lanes = <1 2>; 87 }; 88 }; 89 90 csi0_port1: port@1 { 91 reg = <1>; 92 status = "disabled"; 93 }; 94 95 csi0_port2: port@2 { 96 reg = <2>; 97 status = "disabled"; 98 }; 99 100 csi0_port3: port@3 { 101 reg = <3>; 102 status = "disabled"; 103 }; 104 105 csi0_port4: port@4 { 106 reg = <4>; 107 status = "disabled"; 108 }; 109 }; 110}; 111 112&dphy0 { 113 status = "okay"; 114}; 115 116&ti_csi2rx0 { 117 status = "okay"; 118}; 119 120&cdns_csi2rx1 { 121 ports { 122 #address-cells = <1>; 123 #size-cells = <0>; 124 125 csi1_port0: port@0 { 126 reg = <0>; 127 status = "okay"; 128 129 csi2rx1_in_sensor: endpoint { 130 remote-endpoint = <&csi2_cam1>; 131 bus-type = <4>; /* CSI2 DPHY. */ 132 clock-lanes = <0>; 133 data-lanes = <1 2>; 134 }; 135 }; 136 137 csi1_port1: port@1 { 138 reg = <1>; 139 status = "disabled"; 140 }; 141 142 csi1_port2: port@2 { 143 reg = <2>; 144 status = "disabled"; 145 }; 146 147 csi1_port3: port@3 { 148 reg = <3>; 149 status = "disabled"; 150 }; 151 152 csi1_port4: port@4 { 153 reg = <4>; 154 status = "disabled"; 155 }; 156 }; 157}; 158 159&dphy1 { 160 status = "okay"; 161}; 162 163&ti_csi2rx1 { 164 status = "okay"; 165}; 166