mirror of
https://github.com/torvalds/linux.git
synced 2026-05-24 15:12:13 +02:00
dt-bindings: media: add Maxim MAX96717 GMSL2 Serializer
Add DT bindings for Maxim MAX96717 GMSL2 Serializer. Reviewed-by: Conor Dooley <conor.dooley@microchip.com> Signed-off-by: Julien Massot <julien.massot@collabora.com> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
This commit is contained in:
parent
91eef099f8
commit
1bcbc00878
157
Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
Normal file
157
Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml
Normal file
|
|
@ -0,0 +1,157 @@
|
|||
# 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>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
...
|
||||
Loading…
Reference in New Issue
Block a user