1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Copyright (c) 2022 Rockchip Electronics Co., Ltd. 4 * 5 */ 6 7&csi2_dphy_hw { 8 status = "okay"; 9}; 10 11&csi2_dphy0 { 12 status = "okay"; 13 14 ports { 15 #address-cells = <1>; 16 #size-cells = <0>; 17 18 port@0 { 19 reg = <0>; 20 #address-cells = <1>; 21 #size-cells = <0>; 22 23 csi_dphy_input0: endpoint@0 { 24 reg = <0>; 25 remote-endpoint = <&sc530ai_out>; 26 data-lanes = <1 2>; 27 }; 28 csi_dphy_input1: endpoint@1 { 29 reg = <1>; 30 remote-endpoint = <&sc3336_out>; 31 data-lanes = <1 2>; 32 }; 33 csi_dphy_input2: endpoint@2 { 34 reg = <2>; 35 remote-endpoint = <&sc4336_out>; 36 data-lanes = <1 2>; 37 }; 38 csi_dphy_input3: endpoint@3 { 39 reg = <3>; 40 remote-endpoint = <&os04a10_out>; 41 data-lanes = <1 2>; 42 }; 43 csi_dphy_input4: endpoint@4 { 44 reg = <4>; 45 remote-endpoint = <&jx_k17_out>; 46 data-lanes = <1 2>; 47 }; 48 }; 49 50 port@1 { 51 reg = <1>; 52 #address-cells = <1>; 53 #size-cells = <0>; 54 55 csi_dphy_output: endpoint@0 { 56 reg = <0>; 57 remote-endpoint = <&mipi_csi2_input>; 58 }; 59 }; 60 }; 61}; 62 63&i2c4 { 64 status = "okay"; 65 clock-frequency = <400000>; 66 pinctrl-names = "default"; 67 pinctrl-0 = <&i2c4m2_xfer>; 68 69 sc530ai: sc530ai@30 { 70 compatible = "smartsens,sc530ai"; 71 status = "okay"; 72 reg = <0x30>; 73 clocks = <&cru MCLK_REF_MIPI0>; 74 clock-names = "xvclk"; 75 reset-gpios = <&gpio3 RK_PC5 GPIO_ACTIVE_HIGH>; 76 pwdn-gpios = <&gpio3 RK_PD2 GPIO_ACTIVE_HIGH>; 77 pinctrl-names = "default"; 78 pinctrl-0 = <&mipi_refclk_out0>; 79 rockchip,camera-module-index = <0>; 80 rockchip,camera-module-facing = "back"; 81 rockchip,camera-module-name = "CMK-OT2115-PC1"; 82 rockchip,camera-module-lens-name = "30IRC-F16"; 83 port { 84 sc530ai_out: endpoint { 85 remote-endpoint = <&csi_dphy_input0>; 86 data-lanes = <1 2>; 87 }; 88 }; 89 }; 90 91 sc3336: sc3336@30 { 92 compatible = "smartsens,sc3336"; 93 status = "okay"; 94 reg = <0x30>; 95 clocks = <&cru MCLK_REF_MIPI0>; 96 clock-names = "xvclk"; 97 reset-gpios = <&gpio3 RK_PC5 GPIO_ACTIVE_HIGH>; 98 pwdn-gpios = <&gpio3 RK_PD2 GPIO_ACTIVE_HIGH>; 99 pinctrl-names = "default"; 100 pinctrl-0 = <&mipi_refclk_out0>; 101 rockchip,camera-module-index = <0>; 102 rockchip,camera-module-facing = "back"; 103 rockchip,camera-module-name = "CMK-OT2119-PC1"; 104 rockchip,camera-module-lens-name = "30IRC-F16"; 105 port { 106 sc3336_out: endpoint { 107 remote-endpoint = <&csi_dphy_input1>; 108 data-lanes = <1 2>; 109 }; 110 }; 111 }; 112 113 sc4336: sc4336@30 { 114 compatible = "smartsens,sc4336"; 115 status = "okay"; 116 reg = <0x30>; 117 clocks = <&cru MCLK_REF_MIPI0>; 118 clock-names = "xvclk"; 119 reset-gpios = <&gpio3 RK_PC5 GPIO_ACTIVE_HIGH>; 120 pwdn-gpios = <&gpio3 RK_PD2 GPIO_ACTIVE_HIGH>; 121 pinctrl-names = "default"; 122 pinctrl-0 = <&mipi_refclk_out0>; 123 rockchip,camera-module-index = <0>; 124 rockchip,camera-module-facing = "back"; 125 rockchip,camera-module-name = "OT01"; 126 rockchip,camera-module-lens-name = "40IRC_F16"; 127 port { 128 sc4336_out: endpoint { 129 remote-endpoint = <&csi_dphy_input2>; 130 data-lanes = <1 2>; 131 }; 132 }; 133 }; 134 135 os04a10: os04a10@36 { 136 compatible = "ovti,os04a10"; 137 status = "okay"; 138 reg = <0x36>; 139 clocks = <&cru MCLK_REF_MIPI0>; 140 clock-names = "xvclk"; 141 reset-gpios = <&gpio3 RK_PC5 GPIO_ACTIVE_LOW>; 142 pwdn-gpios = <&gpio3 RK_PD2 GPIO_ACTIVE_HIGH>; 143 pinctrl-names = "default"; 144 pinctrl-0 = <&mipi_refclk_out0>; 145 rockchip,camera-module-index = <0>; 146 rockchip,camera-module-facing = "back"; 147 rockchip,camera-module-name = "CMK-OT1607-PV1"; 148 rockchip,camera-module-lens-name = "50IRC-F16"; 149 port { 150 os04a10_out: endpoint { 151 remote-endpoint = <&csi_dphy_input3>; 152 data-lanes = <1 2>; 153 }; 154 }; 155 }; 156 157 jx_k17: jx_k17@40 { 158 compatible = "soi,jx_k17"; 159 status = "okay"; 160 reg = <0x40>; 161 clocks = <&cru MCLK_REF_MIPI0>; 162 clock-names = "xvclk"; 163 reset-gpios = <&gpio3 RK_PC5 GPIO_ACTIVE_HIGH>; 164 pwdn-gpios = <&gpio3 RK_PC6 GPIO_ACTIVE_HIGH>; 165 pinctrl-names = "default"; 166 pinctrl-0 = <&mipi_refclk_out0>; 167 rockchip,camera-module-index = <0>; 168 rockchip,camera-module-facing = "back"; 169 rockchip,camera-module-name = "T3801-A"; 170 rockchip,camera-module-lens-name = "22IRC-5M-F18"; 171 port { 172 jx_k17_out: endpoint { 173 remote-endpoint = <&csi_dphy_input4>; 174 data-lanes = <1 2>; 175 }; 176 }; 177 }; 178}; 179 180&mipi0_csi2 { 181 status = "okay"; 182 183 ports { 184 #address-cells = <1>; 185 #size-cells = <0>; 186 187 port@0 { 188 reg = <0>; 189 #address-cells = <1>; 190 #size-cells = <0>; 191 192 mipi_csi2_input: endpoint@1 { 193 reg = <1>; 194 remote-endpoint = <&csi_dphy_output>; 195 }; 196 }; 197 198 port@1 { 199 reg = <1>; 200 #address-cells = <1>; 201 #size-cells = <0>; 202 203 mipi_csi2_output: endpoint@0 { 204 reg = <0>; 205 remote-endpoint = <&cif_mipi_in>; 206 }; 207 }; 208 }; 209}; 210 211&rkcif { 212 status = "okay"; 213}; 214 215&rkcif_mipi_lvds { 216 status = "okay"; 217 218 pinctrl-names = "default"; 219 pinctrl-0 = <&mipi_pins>; 220 port { 221 /* MIPI CSI-2 endpoint */ 222 cif_mipi_in: endpoint { 223 remote-endpoint = <&mipi_csi2_output>; 224 }; 225 }; 226}; 227 228&rkcif_mipi_lvds_sditf { 229 status = "okay"; 230 231 port { 232 /* MIPI CSI-2 endpoint */ 233 mipi_lvds_sditf: endpoint { 234 remote-endpoint = <&isp_in>; 235 }; 236 }; 237}; 238 239&rkisp { 240 status = "okay"; 241}; 242 243&rkisp_vir0 { 244 status = "okay"; 245 246 port@0 { 247 isp_in: endpoint { 248 remote-endpoint = <&mipi_lvds_sditf>; 249 }; 250 }; 251}; 252 253