xref: /openbmc/linux/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml (revision 2612e3bbc0386368a850140a6c9b990cd496a5ec)
166bdc2bfSNiklas Söderlund# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
266bdc2bfSNiklas Söderlund# Copyright (C) 2021 Renesas Electronics Corp.
366bdc2bfSNiklas Söderlund%YAML 1.2
466bdc2bfSNiklas Söderlund---
566bdc2bfSNiklas Söderlund$id: http://devicetree.org/schemas/media/i2c/maxim,max96712.yaml#
666bdc2bfSNiklas Söderlund$schema: http://devicetree.org/meta-schemas/core.yaml#
766bdc2bfSNiklas Söderlund
866bdc2bfSNiklas Söderlundtitle: Quad GMSL2 to CSI-2 Deserializer with GMSL1 Compatibility
966bdc2bfSNiklas Söderlund
1066bdc2bfSNiklas Söderlundmaintainers:
1166bdc2bfSNiklas Söderlund  - Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
1266bdc2bfSNiklas Söderlund
1366bdc2bfSNiklas Söderlunddescription: |
1466bdc2bfSNiklas Söderlund  The MAX96712 deserializer converts GMSL2 or GMSL1 serial inputs into MIPI
1566bdc2bfSNiklas Söderlund  CSI-2 D-PHY or C-PHY formatted outputs. The device allows each link to
1666bdc2bfSNiklas Söderlund  simultaneously transmit bidirectional control-channel data while forward
1766bdc2bfSNiklas Söderlund  video transmissions are in progress. The MAX96712 can accommodate as many as
1866bdc2bfSNiklas Söderlund  four remotely located sensors using industry-standard coax or STP
1966bdc2bfSNiklas Söderlund  interconnects.
2066bdc2bfSNiklas Söderlund
2166bdc2bfSNiklas Söderlund  Each GMSL2 serial link operates at a fixed rate of 3Gbps or 6Gbps in the
2266bdc2bfSNiklas Söderlund  forward direction and 187.5Mbps in the reverse direction. In GMSL1 mode, the
2366bdc2bfSNiklas Söderlund  MAX96712 can be paired with first-generation 3.12Gbps or 1.5Gbps GMSL1
2466bdc2bfSNiklas Söderlund  serializers or operate up to 3.12Gbps with GMSL2 serializers in GMSL1 mode.
2566bdc2bfSNiklas Söderlund
2666bdc2bfSNiklas Söderlundproperties:
2766bdc2bfSNiklas Söderlund  compatible:
2866bdc2bfSNiklas Söderlund    const: maxim,max96712
2966bdc2bfSNiklas Söderlund
3066bdc2bfSNiklas Söderlund  reg:
3166bdc2bfSNiklas Söderlund    description: I2C device address
3266bdc2bfSNiklas Söderlund    maxItems: 1
3366bdc2bfSNiklas Söderlund
3466bdc2bfSNiklas Söderlund  enable-gpios: true
3566bdc2bfSNiklas Söderlund
3666bdc2bfSNiklas Söderlund  ports:
3766bdc2bfSNiklas Söderlund    $ref: /schemas/graph.yaml#/properties/ports
3866bdc2bfSNiklas Söderlund
3966bdc2bfSNiklas Söderlund    properties:
4066bdc2bfSNiklas Söderlund      port@0:
4166bdc2bfSNiklas Söderlund        $ref: /schemas/graph.yaml#/properties/port
4266bdc2bfSNiklas Söderlund        description: GMSL Input 0
4366bdc2bfSNiklas Söderlund
4466bdc2bfSNiklas Söderlund      port@1:
4566bdc2bfSNiklas Söderlund        $ref: /schemas/graph.yaml#/properties/port
4666bdc2bfSNiklas Söderlund        description: GMSL Input 1
4766bdc2bfSNiklas Söderlund
4866bdc2bfSNiklas Söderlund      port@2:
4966bdc2bfSNiklas Söderlund        $ref: /schemas/graph.yaml#/properties/port
5066bdc2bfSNiklas Söderlund        description: GMSL Input 2
5166bdc2bfSNiklas Söderlund
5266bdc2bfSNiklas Söderlund      port@3:
5366bdc2bfSNiklas Söderlund        $ref: /schemas/graph.yaml#/properties/port
5466bdc2bfSNiklas Söderlund        description: GMSL Input 3
5566bdc2bfSNiklas Söderlund
5666bdc2bfSNiklas Söderlund      port@4:
5766bdc2bfSNiklas Söderlund        $ref: /schemas/graph.yaml#/$defs/port-base
5866bdc2bfSNiklas Söderlund        unevaluatedProperties: false
5966bdc2bfSNiklas Söderlund        description: CSI-2 Output
6066bdc2bfSNiklas Söderlund
6166bdc2bfSNiklas Söderlund        properties:
6266bdc2bfSNiklas Söderlund          endpoint:
6366bdc2bfSNiklas Söderlund            $ref: /schemas/media/video-interfaces.yaml#
6466bdc2bfSNiklas Söderlund            unevaluatedProperties: false
6566bdc2bfSNiklas Söderlund
6666bdc2bfSNiklas Söderlund            properties:
6766bdc2bfSNiklas Söderlund              data-lanes: true
68*290cebd1SNiklas Söderlund              bus-type:
69*290cebd1SNiklas Söderlund                enum:
70*290cebd1SNiklas Söderlund                  - 1 # MEDIA_BUS_TYPE_CSI2_CPHY
71*290cebd1SNiklas Söderlund                  - 4 # MEDIA_BUS_TYPE_CSI2_DPHY
7266bdc2bfSNiklas Söderlund
7366bdc2bfSNiklas Söderlund            required:
7466bdc2bfSNiklas Söderlund              - data-lanes
75*290cebd1SNiklas Söderlund              - bus-type
7666bdc2bfSNiklas Söderlund
7766bdc2bfSNiklas Söderlund    required:
7866bdc2bfSNiklas Söderlund      - port@4
7966bdc2bfSNiklas Söderlund
8066bdc2bfSNiklas Söderlundrequired:
8166bdc2bfSNiklas Söderlund  - compatible
8266bdc2bfSNiklas Söderlund  - reg
8366bdc2bfSNiklas Söderlund  - ports
8466bdc2bfSNiklas Söderlund
8566bdc2bfSNiklas SöderlundadditionalProperties: false
8666bdc2bfSNiklas Söderlund
8766bdc2bfSNiklas Söderlundexamples:
8866bdc2bfSNiklas Söderlund  - |
8966bdc2bfSNiklas Söderlund    #include <dt-bindings/gpio/gpio.h>
90*290cebd1SNiklas Söderlund    #include <dt-bindings/media/video-interfaces.h>
9166bdc2bfSNiklas Söderlund
9266bdc2bfSNiklas Söderlund    i2c@e6508000 {
9366bdc2bfSNiklas Söderlund            #address-cells = <1>;
9466bdc2bfSNiklas Söderlund            #size-cells = <0>;
9566bdc2bfSNiklas Söderlund
9666bdc2bfSNiklas Söderlund            reg = <0 0xe6508000>;
9766bdc2bfSNiklas Söderlund
9866bdc2bfSNiklas Söderlund            gmsl0: gmsl-deserializer@49 {
9966bdc2bfSNiklas Söderlund                    compatible = "maxim,max96712";
10066bdc2bfSNiklas Söderlund                    reg = <0x49>;
10166bdc2bfSNiklas Söderlund                    enable-gpios = <&pca9654_a 0 GPIO_ACTIVE_HIGH>;
10266bdc2bfSNiklas Söderlund
10366bdc2bfSNiklas Söderlund                    ports {
10466bdc2bfSNiklas Söderlund                            #address-cells = <1>;
10566bdc2bfSNiklas Söderlund                            #size-cells = <0>;
10666bdc2bfSNiklas Söderlund
10766bdc2bfSNiklas Söderlund                            port@4 {
10866bdc2bfSNiklas Söderlund                                    reg = <4>;
10966bdc2bfSNiklas Söderlund                                    max96712_out0: endpoint {
110*290cebd1SNiklas Söderlund                                            bus-type = <MEDIA_BUS_TYPE_CSI2_DPHY>;
11166bdc2bfSNiklas Söderlund                                            clock-lanes = <0>;
11266bdc2bfSNiklas Söderlund                                            data-lanes = <1 2 3 4>;
11366bdc2bfSNiklas Söderlund                                            remote-endpoint = <&csi40_in>;
11466bdc2bfSNiklas Söderlund                                    };
11566bdc2bfSNiklas Söderlund                            };
11666bdc2bfSNiklas Söderlund                    };
11766bdc2bfSNiklas Söderlund            };
11866bdc2bfSNiklas Söderlund    };
119