1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2# Copyright (C) 2024 Collabora Ltd. 3%YAML 1.2 4--- 5$id: http://devicetree.org/schemas/media/i2c/maxim,max96714.yaml# 6$schema: http://devicetree.org/meta-schemas/core.yaml# 7 8title: Maxim MAX96714 GMSL2 to CSI-2 Deserializer 9 10maintainers: 11 - Julien Massot <julien.massot@collabora.com> 12 13description: 14 The MAX96714 deserializer converts GMSL2 serial inputs into MIPI 15 CSI-2 D-PHY formatted output. The device allows the GMSL2 link to 16 simultaneously transmit bidirectional control-channel data while forward 17 video transmissions are in progress. The MAX96714 can connect to one 18 remotely located serializer using industry-standard coax or STP 19 interconnects. The device cans operate in pixel or tunnel mode. In pixel mode 20 the MAX96714 can select individual video stream, while the tunnel mode forward all 21 the MIPI data received by the serializer. 22 23 The GMSL2 serial link operates at a fixed rate of 3Gbps or 6Gbps in the 24 forward direction and 187.5Mbps in the reverse direction. 25 MAX96714F only supports a fixed rate of 3Gbps in the forward direction. 26 27properties: 28 compatible: 29 oneOf: 30 - const: maxim,max96714f 31 - items: 32 - enum: 33 - maxim,max96714 34 - const: maxim,max96714f 35 36 reg: 37 maxItems: 1 38 39 powerdown-gpios: 40 maxItems: 1 41 description: 42 Specifier for the GPIO connected to the PWDNB pin. 43 44 ports: 45 $ref: /schemas/graph.yaml#/properties/ports 46 47 properties: 48 port@0: 49 $ref: /schemas/graph.yaml#/properties/port 50 unevaluatedProperties: false 51 description: GMSL Input 52 properties: 53 endpoint: 54 $ref: /schemas/media/video-interfaces.yaml# 55 unevaluatedProperties: false 56 description: 57 Endpoint for GMSL2-Link port. 58 59 port@1: 60 $ref: /schemas/graph.yaml#/$defs/port-base 61 unevaluatedProperties: false 62 description: CSI-2 Output port 63 64 properties: 65 endpoint: 66 $ref: /schemas/media/video-interfaces.yaml# 67 unevaluatedProperties: false 68 69 properties: 70 data-lanes: 71 minItems: 1 72 maxItems: 4 73 74 lane-polarities: 75 minItems: 1 76 maxItems: 5 77 78 link-frequencies: 79 maxItems: 1 80 81 required: 82 - data-lanes 83 84 required: 85 - port@1 86 87 i2c-gate: 88 $ref: /schemas/i2c/i2c-gate.yaml 89 unevaluatedProperties: false 90 description: 91 The MAX96714 will pass through and forward the I2C requests from the 92 incoming I2C bus over the GMSL2 link. Therefore it supports an i2c-gate 93 subnode to configure a serializer. 94 95 port0-poc-supply: 96 description: Regulator providing Power over Coax for the GMSL port 97 98required: 99 - compatible 100 - reg 101 - ports 102 103additionalProperties: false 104 105examples: 106 - | 107 #include <dt-bindings/gpio/gpio.h> 108 #include <dt-bindings/media/video-interfaces.h> 109 110 i2c { 111 #address-cells = <1>; 112 #size-cells = <0>; 113 114 deserializer@28 { 115 compatible = "maxim,max96714f"; 116 reg = <0x28>; 117 powerdown-gpios = <&main_gpio0 37 GPIO_ACTIVE_LOW>; 118 119 ports { 120 #address-cells = <1>; 121 #size-cells = <0>; 122 port@0 { 123 reg = <0>; 124 max96714_gmsl_in: endpoint { 125 remote-endpoint = <&max96917f_gmsl_out>; 126 }; 127 }; 128 129 port@1 { 130 reg = <1>; 131 max96714_csi_out: endpoint { 132 data-lanes = <1 2 3 4>; 133 link-frequencies = /bits/ 64 <400000000>; 134 remote-endpoint = <&csi_in>; 135 }; 136 }; 137 }; 138 139 i2c-gate { 140 #address-cells = <1>; 141 #size-cells = <0>; 142 143 serializer@40 { 144 compatible = "maxim,max96717f"; 145 reg = <0x40>; 146 gpio-controller; 147 #gpio-cells = <2>; 148 #clock-cells = <0>; 149 150 ports { 151 #address-cells = <1>; 152 #size-cells = <0>; 153 154 port@0 { 155 reg = <0>; 156 max96717f_csi_in: endpoint { 157 data-lanes = <1 2>; 158 lane-polarities = <1 0 1>; 159 remote-endpoint = <&sensor_out>; 160 }; 161 }; 162 163 port@1 { 164 reg = <1>; 165 max96917f_gmsl_out: endpoint { 166 remote-endpoint = <&max96714_gmsl_in>; 167 }; 168 }; 169 }; 170 }; 171 }; 172 }; 173 }; 174... 175