blob: d1e8ba6e368ec1f032a5200fb082c110157a08f8 [file] [log] [blame]
# 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,max96717.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: MAX96717 CSI-2 to GMSL2 Serializer
maintainers:
- Julien Massot <julien.massot@collabora.com>
description:
The MAX96717 serializer converts MIPI CSI-2 D-PHY formatted input
into GMSL2 serial outputs. The device allows the GMSL2 link to
simultaneously transmit bidirectional control-channel data while forward
video transmissions are in progress. The MAX96717 can connect to one
remotely located deserializer using industry-standard coax or STP
interconnects. The device cans operate in pixel or tunnel mode. In pixel mode
the MAX96717 can select the MIPI datatype, while the tunnel mode forward all the MIPI
data received by the serializer.
The MAX96717 supports Reference Over Reverse (channel),
to generate a clock output for the sensor from the GMSL reverse channel.
The GMSL2 serial link operates at a fixed rate of 3Gbps or 6Gbps in the
forward direction and 187.5Mbps in the reverse direction.
MAX96717F only supports a fixed rate of 3Gbps in the forward direction.
properties:
compatible:
oneOf:
- const: maxim,max96717f
- items:
- enum:
- maxim,max96717
- const: maxim,max96717f
'#gpio-cells':
const: 2
description:
First cell is the GPIO pin number, second cell is the flags. The GPIO pin
number must be in range of [0, 10].
gpio-controller: true
'#clock-cells':
const: 0
reg:
maxItems: 1
ports:
$ref: /schemas/graph.yaml#/properties/ports
properties:
port@0:
$ref: /schemas/graph.yaml#/$defs/port-base
unevaluatedProperties: false
description: CSI-2 Input port
properties:
endpoint:
$ref: /schemas/media/video-interfaces.yaml#
unevaluatedProperties: false
properties:
data-lanes:
minItems: 1
maxItems: 4
lane-polarities:
minItems: 1
maxItems: 5
required:
- data-lanes
port@1:
$ref: /schemas/graph.yaml#/properties/port
unevaluatedProperties: false
description: GMSL Output port
required:
- port@1
i2c-gate:
$ref: /schemas/i2c/i2c-gate.yaml
unevaluatedProperties: false
description:
The MAX96717 will forward the I2C requests from the
incoming GMSL2 link. Therefore, it supports an i2c-gate
subnode to configure a sensor.
required:
- compatible
- reg
- ports
additionalProperties: false
examples:
- |
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/media/video-interfaces.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
serializer: 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 3 4>;
remote-endpoint = <&sensor_out>;
};
};
port@1 {
reg = <1>;
max96917f_gmsl_out: endpoint {
remote-endpoint = <&deser_gmsl_in>;
};
};
};
i2c-gate {
#address-cells = <1>;
#size-cells = <0>;
sensor@10 {
compatible = "st,st-vgxy61";
reg = <0x10>;
reset-gpios = <&serializer 0 GPIO_ACTIVE_LOW>;
clocks = <&serializer>;
VCORE-supply = <&v1v2>;
VDDIO-supply = <&v1v8>;
VANA-supply = <&v2v8>;
port {
sensor_out: endpoint {
data-lanes = <1 2 3 4>;
remote-endpoint = <&max96717f_csi_in>;
};
};
};
};
};
};
...