linux-stable/Documentation/devicetree/bindings/media/i2c/adv7180.yaml
Fabio Estevam 28d1e47694 media: dt-bindings: adv7180: Introduce 'adv,force-bt656-4' property
Captured NTSC video would be out of sync when using the adv7280 with
the BT.656-4 protocol. Certain registers (0x04, 0x31, 0xE6) need to
be configured properly to ensure BT.656-4 compatibility.

Introduce the 'adv,force-bt656-4' property to allow the ADV7280
behavior to be consistent with the ADV7180, where BT.656-4 timing
is used by default.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
2021-07-22 11:40:46 +02:00

179 lines
4.1 KiB
YAML

# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/media/i2c/adv7180.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Analog Devices ADV7180 analog video decoder family
maintainers:
- Lars-Peter Clausen <lars@metafoo.de>
description:
The adv7180 family devices are used to capture analog video to different
digital interfaces like MIPI CSI-2 or parallel video.
properties:
compatible:
items:
- enum:
- adi,adv7180
- adi,adv7180cp
- adi,adv7180st
- adi,adv7182
- adi,adv7280
- adi,adv7280-m
- adi,adv7281
- adi,adv7281-m
- adi,adv7281-ma
- adi,adv7282
- adi,adv7282-m
reg:
maxItems: 1
powerdown-gpios:
maxItems: 1
reset-gpios:
maxItems: 1
adv,force-bt656-4:
description:
Indicates that the output is a BT.656-4 compatible stream.
type: boolean
port:
$ref: /schemas/graph.yaml#/$defs/port-base
unevaluatedProperties: false
properties:
endpoint:
$ref: /schemas/media/video-interfaces.yaml#
unevaluatedProperties: false
ports: true
additionalProperties: false
required:
- compatible
- reg
allOf:
- if:
properties:
compatible:
enum:
- adi,adv7180
- adi,adv7182
- adi,adv7280
- adi,adv7280-m
- adi,adv7281
- adi,adv7281-m
- adi,adv7281-ma
- adi,adv7282
- adi,adv7282-m
then:
required:
- port
- if:
properties:
compatible:
contains:
const: adi,adv7180cp
then:
properties:
ports:
$ref: /schemas/graph.yaml#/properties/ports
properties:
port@3:
$ref: /schemas/graph.yaml#/properties/port
description: Output port
patternProperties:
"^port@[0-2]$":
$ref: /schemas/graph.yaml#/properties/port
description: Input port
required:
- port@3
required:
- ports
- if:
properties:
compatible:
contains:
const: adi,adv7180st
then:
properties:
ports:
$ref: /schemas/graph.yaml#/properties/ports
properties:
port@6:
$ref: /schemas/graph.yaml#/properties/port
description: Output port
patternProperties:
"^port@[0-5]$":
$ref: /schemas/graph.yaml#/properties/port
description: Input port
required:
- port@6
required:
- ports
examples:
- |
i2c {
#address-cells = <1>;
#size-cells = <0>;
composite-in@20 {
compatible = "adi,adv7180";
reg = <0x20>;
port {
adv7180: endpoint {
bus-width = <8>;
remote-endpoint = <&vin1ep>;
};
};
};
};
- |
i2c {
#address-cells = <1>;
#size-cells = <0>;
composite-in@20 {
compatible = "adi,adv7180cp";
reg = <0x20>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
adv7180_in: endpoint {
remote-endpoint = <&composite_con_in>;
};
};
port@3 {
reg = <3>;
adv7180_out: endpoint {
remote-endpoint = <&vin4_in>;
};
};
};
};
};