# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) # Copyright (C) 2024 Collabora Ltd. %YAML 1.2 --- $id: http://devicetree.org/schemas/media/i2c/maxim,max96714.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Maxim MAX96714 GMSL2 to CSI-2 Deserializer maintainers: - Julien Massot description: The MAX96714 deserializer converts GMSL2 serial inputs into MIPI CSI-2 D-PHY formatted output. The device allows the GMSL2 link to simultaneously transmit bidirectional control-channel data while forward video transmissions are in progress. The MAX96714 can connect to one remotely located serializer using industry-standard coax or STP interconnects. The device cans operate in pixel or tunnel mode. In pixel mode the MAX96714 can select individual video stream, while the tunnel mode forward all the MIPI data received by the serializer. The GMSL2 serial link operates at a fixed rate of 3Gbps or 6Gbps in the forward direction and 187.5Mbps in the reverse direction. MAX96714F only supports a fixed rate of 3Gbps in the forward direction. properties: compatible: oneOf: - const: maxim,max96714f - items: - enum: - maxim,max96714 - const: maxim,max96714f reg: maxItems: 1 powerdown-gpios: maxItems: 1 description: Specifier for the GPIO connected to the PWDNB pin. ports: $ref: /schemas/graph.yaml#/properties/ports properties: port@0: $ref: /schemas/graph.yaml#/properties/port unevaluatedProperties: false description: GMSL Input properties: endpoint: $ref: /schemas/media/video-interfaces.yaml# unevaluatedProperties: false description: Endpoint for GMSL2-Link port. port@1: $ref: /schemas/graph.yaml#/$defs/port-base unevaluatedProperties: false description: CSI-2 Output port properties: endpoint: $ref: /schemas/media/video-interfaces.yaml# unevaluatedProperties: false properties: data-lanes: minItems: 1 maxItems: 4 lane-polarities: minItems: 1 maxItems: 5 link-frequencies: maxItems: 1 required: - data-lanes required: - port@1 i2c-gate: $ref: /schemas/i2c/i2c-gate.yaml unevaluatedProperties: false description: The MAX96714 will pass through and forward the I2C requests from the incoming I2C bus over the GMSL2 link. Therefore it supports an i2c-gate subnode to configure a serializer. port0-poc-supply: description: Regulator providing Power over Coax for the GMSL port required: - compatible - reg - ports additionalProperties: false examples: - | #include #include i2c { #address-cells = <1>; #size-cells = <0>; deserializer@28 { compatible = "maxim,max96714f"; reg = <0x28>; powerdown-gpios = <&main_gpio0 37 GPIO_ACTIVE_LOW>; ports { #address-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; max96714_gmsl_in: endpoint { remote-endpoint = <&max96917f_gmsl_out>; }; }; port@1 { reg = <1>; max96714_csi_out: endpoint { data-lanes = <1 2 3 4>; link-frequencies = /bits/ 64 <400000000>; remote-endpoint = <&csi_in>; }; }; }; i2c-gate { #address-cells = <1>; #size-cells = <0>; serializer@40 { compatible = "maxim,max96717f"; reg = <0x40>; gpio-controller; #gpio-cells = <2>; #clock-cells = <0>; ports { #address-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; max96717f_csi_in: endpoint { data-lanes = <1 2>; lane-polarities = <1 0 1>; remote-endpoint = <&sensor_out>; }; }; port@1 { reg = <1>; max96917f_gmsl_out: endpoint { remote-endpoint = <&max96714_gmsl_in>; }; }; }; }; }; }; }; ...