File Index
Files and directories
Sign in
FILE

video-mux.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/media/video-mux.yaml YAML
  1# SPDX-License-Identifier: GPL-2.0
  2%YAML 1.2
  3---
  4$id: http://devicetree.org/schemas/media/video-mux.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Video Multiplexer
  8
  9maintainers:
 10  - Sakari Ailus <sakari.ailus@linux.intel.com>
 11  - Laurent Pinchart <laurent.pinchart@ideasonboard.com>
 12
 13description:
 14  Video multiplexers allow to select between multiple input ports. Video
 15  received on the active input port is passed through to the output port. Muxes
 16  described by this binding are controlled by a multiplexer controller.
 17
 18properties:
 19  compatible:
 20    const: video-mux
 21
 22  mux-controls:
 23    maxItems: 1
 24
 25  '#address-cells':
 26    const: 1
 27
 28  '#size-cells':
 29    const: 0
 30
 31  ports:
 32    $ref: /schemas/graph.yaml#/properties/ports
 33
 34    patternProperties:
 35      '^port@':
 36        $ref: /schemas/graph.yaml#/properties/port
 37
 38    required:
 39      - port@0
 40      - port@1
 41      - port@2
 42
 43patternProperties:
 44  '^port@':
 45    $ref: /schemas/graph.yaml#/properties/port
 46    description:
 47      At least three port nodes containing endpoints connecting to the source
 48      and sink devices according to of_graph bindings. The last port is the
 49      output port, all others are inputs.
 50
 51required:
 52  - compatible
 53  - mux-controls
 54
 55oneOf:
 56  - required:
 57      - ports
 58  - required:
 59      - port@0
 60      - port@1
 61      - port@2
 62
 63additionalProperties: false
 64
 65examples:
 66  - |
 67    #include <dt-bindings/gpio/gpio.h>
 68
 69    mux: mux-controller {
 70        compatible = "gpio-mux";
 71        #mux-control-cells = <0>;
 72
 73        mux-gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>;
 74    };
 75
 76    video-mux {
 77        compatible = "video-mux";
 78        mux-controls = <&mux>;
 79        #address-cells = <1>;
 80        #size-cells = <0>;
 81
 82        port@0 {
 83            reg = <0>;
 84
 85            mux_in0: endpoint {
 86                remote-endpoint = <&video_source0_out>;
 87            };
 88        };
 89
 90        port@1 {
 91            reg = <1>;
 92
 93            mux_in1: endpoint {
 94                remote-endpoint = <&video_source1_out>;
 95            };
 96        };
 97
 98        port@2 {
 99            reg = <2>;
100
101            mux_out: endpoint {
102                remote-endpoint = <&capture_interface_in>;
103            };
104        };
105    };
106...
~/ Read-only file preview.