UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

Reply

DMA / Bridge Subsystem for PCI Express - Missing Blocks of data -

Highlighted
Observer
Posts: 23
Registered: ‎03-13-2018

DMA / Bridge Subsystem for PCI Express - Missing Blocks of data -

[ Edited ]

Using xc7vx690tffg1761-2, XDMA 2017.4_AR70325 (DMA / Bridge Subsystem for PCI Express), 4 lanes 5 GT/s max, AXI Stream 64 bits wide, 1 DMA channel each direction.


In this case the H2C AXIS is looped back through FIFOs (etc.) to the C2H AXIS.


Problem Description:
Linux Fedora 20 3.11.10-301.fc20.x86_64  : Driver for XDMA for Xilinx XDMA IP core

 

When using the dma_streaming_test.sh  with size of 4096, count of 1000 and 1 channel pair,  C2H DMA hangs and the computer needs to be restarted. The first 255 reads work but will not come back from the next read. Killing the process will not work as it is stuck in a loop in transfer_monitor_cyclic.

 

Changing lines 3459 and 3460

 

rc++;
if(rc == 100){
break;
}

 

to use its own variable instead of the result variable rc

 

int a_loop_count = 0;

a_loop_count++;
if(a_loop_count == 100){
break;
}

 

This stops the read from hanging but after comparing the final files there is still 255 blocks of 4096 bytes missing.

 

The correct number of transfers occurs at the AXIS.

 

PLEASE advise,

 

Thanks in advance!

mrpetep1

 

PS may be related:

https://forums.xilinx.com/t5/PCI-Express/C2H-Streaming-XDMA-Linux-Driver-Broken/m-p/833977#M10131

 

Posts: 2,737
Kudos: 350
Solutions: 249
Registered: ‎02-16-2010

Re: DMA / Bridge Subsystem for PCI Express - Missing Blocks of data -

Thanks for reporting the issue and how you have solved it. We will try to reproduce the issue and the resolution and get back.

Could you provide the .xci file of the XDMA IP you have used?
------------------------------------------------------------------------------
Don't forget to reply, give kudo and accept as solution
------------------------------------------------------------------------------
Xilinx Employee
Posts: 715
Registered: ‎05-07-2015

Re: DMA / Bridge Subsystem for PCI Express - Missing Blocks of data -

HI @mrpetep1

 

Please share your xci as requested by venkata. we will test  things at our end.

 

meanwhile , please load the driver by enabling descriptor credit based transfer  and try things at your end once.

  • Software gives descriptor credits for hardware to use
  • once hardware finishes credits it will wait for more credits

 

–Insmod ../driver/xdma.ko enable_credit_mp=1

Thanks
Bharath
--------------------------------------------------​--------------------------------------------
Please mark the Answer as "Accept as solution" if information provided addresses your query/concern.
Give Kudos to a post which you think is helpful.
--------------------------------------------------​-------------------------------------------