61 lines
1.4 KiB
Plaintext
61 lines
1.4 KiB
Plaintext
|
Video Multiplexer
|
||
|
=================
|
||
|
|
||
|
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 that is described by
|
||
|
the bindings in Documentation/devicetree/bindings/mux/mux-controller.txt
|
||
|
|
||
|
Required properties:
|
||
|
- compatible : should be "video-mux"
|
||
|
- mux-controls : mux controller node to use for operating the mux
|
||
|
- #address-cells: should be <1>
|
||
|
- #size-cells: should be <0>
|
||
|
- port@*: 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.
|
||
|
|
||
|
Optionally, #address-cells, #size-cells, and port nodes can be grouped under a
|
||
|
ports node as described in Documentation/devicetree/bindings/graph.txt.
|
||
|
|
||
|
Example:
|
||
|
|
||
|
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>;
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|