Zynq Ult VCU TRD User Guide
30
UG1250 (v2019.1) May 29, 2019
Chapter 3:
APU Software Platform
interrupt, an interrupt handler, previously installed by the driver, is called and the finished
transfer can be acknowledged accordingly by the OS. After the interrupt is raised, the host
side DMA application writes the read_transfer_done bit in the user space registers. Based on
the read_transfer_done, the pcie_endpoint_client driver running on the client copies the
buffer to the user space to perform the next operation.
XDMA Host Linux Driver
The XDMA driver consists of these user accessible devices:
• xdma0_control (to access XDMA registers)
• xdma0_user (to access the AXI-Lite Master interface)
• xdma0_bypass (to access the DMA-Bypass interface)
• xdma0_h2c_0, xdma0_c2h_0 (to access each channel)
The vcu_trd_pcie design XDMA is configured in Memory mode and has one read and write
channel. For additional information on the XDMA drivers, refer to Xilinx Answer
.
XDMA Host Application
The XDMA host application transfers files from host to client in chunks of buffers using
DMA memory-based transfers. The application receives transcoded buffers from the client
by using PCIe DMA transfers and creating a new transcoded file.
PCIe Endpoint Client Driver
The PCIe endpoint client driver creates buffers for write/read data from user space and
passes that buffer address to the XDMA host application to trigger transfers between host
and client. The driver provides IOCTL calls for acquiring the transferring file length from the
host to start and stop the data transfer using user space registers in the XDMA.
Software Stack
The APU Linux multimedia software stack is divided into an application layer and a platform
layer. The application layer is purely implemented in the Linux user-space whereas the
platform layer contains middleware (user-space libraries) and operating system (OS)
components (kernel-space drivers).
shows a simplified version of the Linux
software stack. This chapter focuses on the application layer implemented in the
user-space.