From d9d1055ef1426da47b626883fffdc934c5f5ab91 Mon Sep 17 00:00:00 2001 From: David Gibson Date: Mon, 31 Oct 2011 17:06:45 +1100 Subject: [PATCH] Define DMA address and direction types As a preliminary to adding more extensive DMA and IOMMU infrastructure support into qemu, this patch defines a dma_addr_t for storing DMA bus addresses and a DMADirection enum which describes whether a DMA is from an external device to main memory or from main memory to an external device. For now dma_addr_t is just defined to be target_phys_addr_t, but in future, we can change this to support machines where we have bus addresses which don't necessarily have the same format as CPU physical addresses. Signed-off-by: David Gibson Signed-off-by: Anthony Liguori --- dma.h | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/dma.h b/dma.h index 2bdc236c4..56e163a58 100644 --- a/dma.h +++ b/dma.h @@ -18,6 +18,15 @@ typedef struct ScatterGatherEntry ScatterGatherEntry; #if defined(TARGET_PHYS_ADDR_BITS) +typedef target_phys_addr_t dma_addr_t; + +#define DMA_ADDR_FMT TARGET_FMT_plx + +typedef enum { + DMA_DIRECTION_TO_DEVICE = 0, + DMA_DIRECTION_FROM_DEVICE = 1, +} DMADirection; + struct ScatterGatherEntry { target_phys_addr_t base; target_phys_addr_t len;