Table of Contents |
---|
Xilinx V4L2 driver
The purpose of this page is to describe the Xilinx Linux V4L2 pipeline driver.
Overview
The Xilinx Linux V4L2 pipeline driver(xilinx-vipp.c) represents the whole pipeline with multiple sub-devices. In the V4L2 framework it is a bridge driver. The pipeline can be configured through the media node(/dev/media*), and the control operations such as stream on/off can be performed through the video node(/dev/video*). Both device nodes are created be the pipeline driver. The pipeline driver also includes the wrapper layer of the dmaengine API, in current implementation to the VDMA driver/IP, and this enabled to read/write frames from RAM
...
.
The general description of V4L2 framework is documented here, v4l2-framework.txt.
Linux Kernel defconfig
CONFIG_VIDEO_XILINX should be enabled. The CONFIG_VIDEO_XILINX depends on CONFIG_VIDEO_V4L2, CONFIG_VIDEO_V4L2_SUBDEV_API, and CONFIG_OF.
Device tree binding
The dts node should be defined with correct configuration. The common dts properties are described in video.txt
Code Block | ||
---|---|---|
| ||
axi_video_cap {
compatible = "xlnx,axi-video";
dmas = <&axi_vdma_1 1>, <&axi_vdma_3 1>;
dma-names = "port0", "port1";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
direction = "input";
vcap0_in0: endpoint {
remote-endpoint = <&scaler0_out>;
};
};
port@1 {
reg = <1>;
direction = "input";
vcap0_in1: endpoint {
remote-endpoint = <&switch_out1>;
};
};
};
};
|