AR# 52195

14.3 EDK, AXI DMA: Data mismatch seen on streaming side for C_SG_LENGTH_WIDTH > 12

Description

Whenever I set C_SG_LENGTH_WIDTH > 12 for AXI DMA, I see that data is incorrect.

But for C_SG_LENGTH_WIDTH <= 12, no data mismatch is seen on the streaming side.

How do I resolve this?

Solution

This is a known issue in AXI DMA.

Currently, AXI4 fixed-address read (or keyhole read) transactions do not transfer the correct number of bytes on streaming interfaces when the parameter C_SG_LENGTH_WIDTH is > 12.

To work around the issue, split large transfers into two or more commands so that the C_SG_LENGTH_WIDTH is not > 12.

This issue is currently planned to be fixed starting in EDK 14.4
AR# 52195
Date 09/05/2014
Status Active
Type General Article