summaryrefslogtreecommitdiffstats
path: root/dma/ipe_private.h
diff options
context:
space:
mode:
authorSuren A. Chilingaryan <csa@suren.me>2015-05-05 23:13:45 +0200
committerSuren A. Chilingaryan <csa@suren.me>2015-05-05 23:13:45 +0200
commit9ccacea308f336d10c8a94d393b261539a6970bf (patch)
treeb7bb277bdbedcc58f3128993dcc4cadd129b7e56 /dma/ipe_private.h
parentc39ac7a604d9f01f602f88f5770b5832e79fcdde (diff)
downloadpcitool-9ccacea308f336d10c8a94d393b261539a6970bf.tar.gz
pcitool-9ccacea308f336d10c8a94d393b261539a6970bf.tar.bz2
pcitool-9ccacea308f336d10c8a94d393b261539a6970bf.tar.xz
pcitool-9ccacea308f336d10c8a94d393b261539a6970bf.zip
Support gen3 DMA engine and provide work-arround for hardware mishandling last_descriptor_read register
Diffstat (limited to 'dma/ipe_private.h')
-rw-r--r--dma/ipe_private.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/dma/ipe_private.h b/dma/ipe_private.h
index f6aa2f7..82ea73a 100644
--- a/dma/ipe_private.h
+++ b/dma/ipe_private.h
@@ -3,6 +3,7 @@
#include "dma.h"
+#define IPEDMA_64BIT_MODE 1 /**< 64-bit mode addressing is required to support PCIe gen3 */
#define IPEDMA_CORES 1
#define IPEDMA_TLP_SIZE 32
#define IPEDMA_PAGE_SIZE 4096
@@ -11,6 +12,8 @@
#define IPEDMA_DESCRIPTOR_SIZE 128
#define IPEDMA_DESCRIPTOR_ALIGNMENT 64
+#define IPEDMA_BUG_LAST_READ /**< We should forbid writting the second last available DMA buffer (the last is forbidden by design) */
+
//#define IPEDMA_BUG_DMARD /**< No register read during DMA transfer */
//#define IPEDMA_DETECT_PACKETS /**< Using empty_deceted flag */
#define IPEDMA_SUPPORT_EMPTY_DETECTED /**< Avoid waiting for data when empty_detected flag is set in hardware */