cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Explorer
Explorer
923 Views
Registered: ‎10-18-2017

Linux Framebuffer API

Jump to solution

Hello, I am trying to coordinate V4L2 video input with Xilinx's DRM Pipeline documented here.

https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18842520/Xilinx+DRM+KMS+driver

I have been using a ZCU104 board and have been looking at the ZCU102 TRD here

https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18841774/Zynq+UltraScale+MPSoC+Base+TRD+2018.2

It looks like all of the encoder hardware is the same, based on the user guides. (Both use TI SN65DP159RGZ re-timer).

I have been looking at the FrameBuffer Read Wiki here. 

https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18842128/Video+Framebuffer+Read

It looks like to work with the IP, one must use the Linux DMA API. The wiki says that to test the IP one should reference the Video Mixer test procedure. In the TRD, it looks like they have a Video Mixer that connects to the HDMI TX IP. Reading through their DRM/V4L2 source code for the TRD, it looks like they create some buffers, register them with the DRM API, then simply mmap V4L2 buffers to them. If the right command arguments are provided, then it just loops, ioctl'ing in new data from the cameras and writing it to DRM buffers. Can this also be done with FrameBufferRead IP? Why is there a need for DMA API?

 

Essentially, why is the wiki saying that there needs to be DRM Client Code when the interface is completely implemented using DMA Client?

0 Kudos
1 Solution

Accepted Solutions
Highlighted
Moderator
Moderator
828 Views
Registered: ‎11-09-2015

Hi @johnfrye11 ,

I haven't been in the full details of the use of the frame buffer under linux so what I will say is just a guess.

The main goal of the TRDs or reference design is to show a working design. They do not always use the best method. In general, I would recommend to use APIs if there are any available.

Regards,


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**

View solution in original post

1 Reply
Highlighted
Moderator
Moderator
829 Views
Registered: ‎11-09-2015

Hi @johnfrye11 ,

I haven't been in the full details of the use of the frame buffer under linux so what I will say is just a guess.

The main goal of the TRDs or reference design is to show a working design. They do not always use the best method. In general, I would recommend to use APIs if there are any available.

Regards,


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**

View solution in original post