This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

stream dma problem on ti816x

Expert 2990 points

Hi

I developed  a pcie driver for fpga which is used to capture video. I used kmalloc to allocated two buffer as dma buffer.

For handling the cache coherency correctly, before dma start,pci_map_single(pdev,addr,length,PCI_DMA_FROMDEVICE)  will be called,

after dma stop,pci_unmap_single() will be called. So the driver can capture video smoothly.

However when I didn't use the  pci_map_single and pci_unmap_single(),It also can get a smooth video.

So I am very confusing whether the pci_map_single and pci_unmap_single() have use.

My kernel is linux-psp-04.04.00.01.

  • Hi Quan,

    Are you using EZSDK or RDK? Is the DM816x PCIe module used as RC (Root Complex) or EP (End Point)?

    Below you will find some links that might be in help:

    http://processors.wiki.ti.com/index.php/TI81XX_PSP_PCI_Express_Endpoint_Driver_User_Guide

    http://processors.wiki.ti.com/index.php/TI81XX_PSP_PCI_Express_Root_Complex_Driver_User_Guide

    http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/717/p/229421/806012.aspx

    http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/716/p/220934/781170.aspx

    Regards,

    Pavel