You are here: Digi Embedded Yocto > System development > Linux v3.14 Board Support Package > Devices and interfaces > Video interfaces > Video Processing Unit (VPU)

Video Processing Unit (VPU)

The Video Processing Unit (VPU) is a multi-standard video codec (encoder/decoder) capable of simultaneously handling multiple streams by time multiplexing.

The VPU software can be divided into two parts: the kernel driver and the user-space library.

Kernel configuration

You can manage the VPU driver support through the kernel configuration option:

This option is enabled as built-in on the default ConnectCore 6 SBC kernel configuration file.

Platform driver mapping

The VPU drivers for the i.MX6 are located at:

File Description
include/linux/mxc_vpu.h Header file defining IOCTLs and memory structures
drivers/mxc/vpu/mxc_vpu.c Device management and file operation interface implementation

Device tree bindings and customization

The i.MX6 VPU device tree binding is documented at Documentation/devicetree/bindings/media/coda.txt.

The VPU is defined in the i.MX6 CPU device tree file.

Definition of the VPU interface

Common i.MX6 device tree
vpu: vpu@02040000 {
                compatible = "fsl,imx6-vpu";
                reg = <0x02040000 0x3c000>;
                reg-names = "vpu_regs";
                interrupts = <0 3 IRQ_TYPE_EDGE_RISING>,
                             <0 12 IRQ_TYPE_LEVEL_HIGH>;
                interrupt-names = "vpu_jpu_irq", "vpu_ipi_irq";
                clocks = <&clks IMX6QDL_CLK_VPU_AXI>,
                     <&clks IMX6QDL_CLK_MMDC_CH0_AXI>,
                     <&clks IMX6QDL_CLK_OCRAM>;
                clock-names = "vpu_clk", "mmdc_ch0_axi", "ocram";
                iramsize = <0x21000>;
                iram = <&ocram>;
                resets = <&src 1>;
                power-domains = <&gpc 1>;
};

The VPU interface is enabled by default.

IOMUX configuration

The VPU is a CPU-internal subsystem. No IOMUX configuration is necessary.

 

© 2017 Digi International Inc. All rights reserved.
Video Processing Unit (VPU) updated on 24 April 2017 11:48:27 PM