0001 // SPDX-License-Identifier: GPL-2.0
0002 /*
0003 * Device Tree Source for the Falcon CSI/DSI sub-board
0004 *
0005 * Copyright (C) 2021 Glider bv
0006 */
0007
0008 &csi40 {
0009 status = "okay";
0010
0011 ports {
0012 #address-cells = <1>;
0013 #size-cells = <0>;
0014
0015 port@0 {
0016 reg = <0>;
0017
0018 csi40_in: endpoint {
0019 clock-lanes = <0>;
0020 data-lanes = <1 2 3 4>;
0021 remote-endpoint = <&max96712_out0>;
0022 };
0023 };
0024 };
0025 };
0026
0027 &csi42 {
0028 status = "okay";
0029
0030 ports {
0031 #address-cells = <1>;
0032 #size-cells = <0>;
0033
0034 port@0 {
0035 reg = <0>;
0036
0037 csi42_in: endpoint {
0038 clock-lanes = <0>;
0039 data-lanes = <1 2 3 4>;
0040 remote-endpoint = <&max96712_out1>;
0041 };
0042 };
0043 };
0044 };
0045
0046 &csi43 {
0047 status = "okay";
0048
0049 ports {
0050 #address-cells = <1>;
0051 #size-cells = <0>;
0052
0053 port@0 {
0054 reg = <0>;
0055
0056 csi43_in: endpoint {
0057 clock-lanes = <0>;
0058 data-lanes = <1 2 3 4>;
0059 remote-endpoint = <&max96712_out2>;
0060 };
0061 };
0062 };
0063 };
0064
0065 &i2c0 {
0066 pca9654_a: gpio@21 {
0067 compatible = "onnn,pca9654";
0068 reg = <0x21>;
0069 gpio-controller;
0070 #gpio-cells = <2>;
0071 };
0072
0073 pca9654_b: gpio@22 {
0074 compatible = "onnn,pca9654";
0075 reg = <0x22>;
0076 gpio-controller;
0077 #gpio-cells = <2>;
0078 };
0079
0080 pca9654_c: gpio@23 {
0081 compatible = "onnn,pca9654";
0082 reg = <0x23>;
0083 gpio-controller;
0084 #gpio-cells = <2>;
0085 };
0086
0087 eeprom@52 {
0088 compatible = "rohm,br24g01", "atmel,24c01";
0089 label = "csi-dsi-sub-board-id";
0090 reg = <0x52>;
0091 pagesize = <8>;
0092 };
0093 };
0094
0095 &i2c1 {
0096 gmsl0: gmsl-deserializer@49 {
0097 compatible = "maxim,max96712";
0098 reg = <0x49>;
0099 enable-gpios = <&pca9654_a 0 GPIO_ACTIVE_HIGH>;
0100
0101 ports {
0102 #address-cells = <1>;
0103 #size-cells = <0>;
0104
0105 port@4 {
0106 reg = <4>;
0107 max96712_out0: endpoint {
0108 clock-lanes = <0>;
0109 data-lanes = <1 2 3 4>;
0110 remote-endpoint = <&csi40_in>;
0111 };
0112 };
0113 };
0114 };
0115
0116 gmsl1: gmsl-deserializer@4b {
0117 compatible = "maxim,max96712";
0118 reg = <0x4b>;
0119 enable-gpios = <&pca9654_b 0 GPIO_ACTIVE_HIGH>;
0120
0121 ports {
0122 #address-cells = <1>;
0123 #size-cells = <0>;
0124
0125 port@4 {
0126 reg = <4>;
0127 max96712_out1: endpoint {
0128 clock-lanes = <0>;
0129 data-lanes = <1 2 3 4>;
0130 lane-polarities = <0 0 0 0 1>;
0131 remote-endpoint = <&csi42_in>;
0132 };
0133 };
0134 };
0135 };
0136
0137 gmsl2: gmsl-deserializer@6b {
0138 compatible = "maxim,max96712";
0139 reg = <0x6b>;
0140 enable-gpios = <&pca9654_c 0 GPIO_ACTIVE_HIGH>;
0141
0142 ports {
0143 #address-cells = <1>;
0144 #size-cells = <0>;
0145
0146 port@4 {
0147 reg = <4>;
0148 max96712_out2: endpoint {
0149 clock-lanes = <0>;
0150 data-lanes = <1 2 3 4>;
0151 lane-polarities = <0 0 0 0 1>;
0152 remote-endpoint = <&csi43_in>;
0153 };
0154 };
0155 };
0156 };
0157 };
0158
0159 &isp0 {
0160 status = "okay";
0161 };
0162
0163 &isp2 {
0164 status = "okay";
0165 };
0166
0167 &isp3 {
0168 status = "okay";
0169 };
0170
0171 &vin00 {
0172 status = "okay";
0173 };
0174
0175 &vin01 {
0176 status = "okay";
0177 };
0178
0179 &vin02 {
0180 status = "okay";
0181 };
0182
0183 &vin03 {
0184 status = "okay";
0185 };
0186
0187 &vin04 {
0188 status = "okay";
0189 };
0190
0191 &vin05 {
0192 status = "okay";
0193 };
0194
0195 &vin06 {
0196 status = "okay";
0197 };
0198
0199 &vin07 {
0200 status = "okay";
0201 };
0202
0203 &vin16 {
0204 status = "okay";
0205 };
0206
0207 &vin17 {
0208 status = "okay";
0209 };
0210
0211 &vin18 {
0212 status = "okay";
0213 };
0214
0215 &vin19 {
0216 status = "okay";
0217 };
0218
0219 &vin20 {
0220 status = "okay";
0221 };
0222
0223 &vin21 {
0224 status = "okay";
0225 };
0226
0227 &vin22 {
0228 status = "okay";
0229 };
0230
0231 &vin23 {
0232 status = "okay";
0233 };
0234
0235 &vin24 {
0236 status = "okay";
0237 };
0238
0239 &vin25 {
0240 status = "okay";
0241 };
0242
0243 &vin26 {
0244 status = "okay";
0245 };
0246
0247 &vin27 {
0248 status = "okay";
0249 };
0250
0251 &vin28 {
0252 status = "okay";
0253 };
0254
0255 &vin29 {
0256 status = "okay";
0257 };
0258
0259 &vin30 {
0260 status = "okay";
0261 };
0262
0263 &vin31 {
0264 status = "okay";
0265 };