2

Currently, I am developing my Own Video Frame Buffer Driver with help of Linux PCIe and Virtual Frame Buffer Driver.

My Custom Driver works fine on 720X480P Video Resolution but getting some slow on 720P Video Resolution.

I have just directly mapped frame buffer memory with DDR2 Memory coming with PCIe Interface on FPGA System.

DMA Controller Stuffs are implemented in FPGA System.

How can I develop DMA Read/Write Operation in my own frame buffer driver to solve my slow frame rate issue?

Please let me know if anyone has idea about this.

Ritesh Prajapati
  • 953
  • 2
  • 13
  • 22
  • 1
    You have to develop DMA driver first using DMAengine framework. Afterwards you may use DMA API to get channel and make a request to transfer data. – 0andriy Jun 25 '15 at 08:04
  • 1
    Do you have any idea how to create DMA Engine Framework in driver? – Ritesh Prajapati Jun 26 '15 at 11:45
  • 1
    You are mistaken, the DMAengine framework is used by DMA controller drivers, i.e. DMA controller implemented in FPGA, and by DMA slaves, which is in your case is video / fb driver. You have to implement the both parts. And yes, I did this few times. – 0andriy Jul 01 '15 at 17:05
  • 1
    Thanks for providing information. Can you please provide me some links or documents to implement both parts? – Ritesh Prajapati Jul 02 '15 at 04:08
  • https://www.kernel.org/doc/Documentation/dmaengine/ – 0andriy Jul 08 '15 at 12:41
  • I have assigned DMA Mater Read and Write control to BAR 0 Region with start address and offset in FPGA Design. Now, Can i access that Region directly like onchip or some other memory access? – Ritesh Prajapati Jul 25 '15 at 05:18

0 Answers0