107 lines
2.1 KiB
YAML
107 lines
2.1 KiB
YAML
# SPDX-License-Identifier: GPL-2.0
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/media/video-mux.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Video Multiplexer
|
|
|
|
maintainers:
|
|
- Sakari Ailus <sakari.ailus@linux.intel.com>
|
|
- Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
|
|
description:
|
|
Video multiplexers allow to select between multiple input ports. Video
|
|
received on the active input port is passed through to the output port. Muxes
|
|
described by this binding are controlled by a multiplexer controller.
|
|
|
|
properties:
|
|
compatible:
|
|
const: video-mux
|
|
|
|
mux-controls:
|
|
maxItems: 1
|
|
|
|
'#address-cells':
|
|
const: 1
|
|
|
|
'#size-cells':
|
|
const: 0
|
|
|
|
ports:
|
|
$ref: /schemas/graph.yaml#/properties/ports
|
|
|
|
patternProperties:
|
|
'^port@':
|
|
$ref: /schemas/graph.yaml#/properties/port
|
|
|
|
required:
|
|
- port@0
|
|
- port@1
|
|
- port@2
|
|
|
|
patternProperties:
|
|
'^port@':
|
|
$ref: /schemas/graph.yaml#/properties/port
|
|
description:
|
|
At least three port nodes containing endpoints connecting to the source
|
|
and sink devices according to of_graph bindings. The last port is the
|
|
output port, all others are inputs.
|
|
|
|
required:
|
|
- compatible
|
|
- mux-controls
|
|
|
|
oneOf:
|
|
- required:
|
|
- ports
|
|
- required:
|
|
- port@0
|
|
- port@1
|
|
- port@2
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
|
|
mux: mux-controller {
|
|
compatible = "gpio-mux";
|
|
#mux-control-cells = <0>;
|
|
|
|
mux-gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>;
|
|
};
|
|
|
|
video-mux {
|
|
compatible = "video-mux";
|
|
mux-controls = <&mux>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
port@0 {
|
|
reg = <0>;
|
|
|
|
mux_in0: endpoint {
|
|
remote-endpoint = <&video_source0_out>;
|
|
};
|
|
};
|
|
|
|
port@1 {
|
|
reg = <1>;
|
|
|
|
mux_in1: endpoint {
|
|
remote-endpoint = <&video_source1_out>;
|
|
};
|
|
};
|
|
|
|
port@2 {
|
|
reg = <2>;
|
|
|
|
mux_out: endpoint {
|
|
remote-endpoint = <&capture_interface_in>;
|
|
};
|
|
};
|
|
};
|
|
...
|