diff options
author | David Gibson <david@gibson.dropbear.id.au> | 2011-10-31 17:06:45 +1100 |
---|---|---|
committer | Anthony Liguori <aliguori@us.ibm.com> | 2011-11-01 16:52:05 -0500 |
commit | d9d1055ef1426da47b626883fffdc934c5f5ab91 (patch) | |
tree | d8336db95ea93efbc6ca7836571ac704de4f7e6d | |
parent | 7f540ab5248a62c6ca4f6346a3564d0eff0069db (diff) | |
download | qemu-d9d1055ef1426da47b626883fffdc934c5f5ab91.zip qemu-d9d1055ef1426da47b626883fffdc934c5f5ab91.tar.gz qemu-d9d1055ef1426da47b626883fffdc934c5f5ab91.tar.bz2 |
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 <david@gibson.dropbear.id.au>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
-rw-r--r-- | dma.h | 9 |
1 files changed, 9 insertions, 0 deletions
@@ -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; |