diff options
author | David Gibson <david@gibson.dropbear.id.au> | 2012-06-27 14:50:41 +1000 |
---|---|---|
committer | Anthony Liguori <aliguori@us.ibm.com> | 2012-06-27 16:33:25 -0500 |
commit | 10ca2943aab6646839769d78f80b0d5499efcbe9 (patch) | |
tree | a5b6dccc0b5aafb5d3d9ddef3532f8ca53c2bc5b /hw/ide/ahci.h | |
parent | c65bcef30659442a45ed0842de80d246d0162fd7 (diff) | |
download | qemu-10ca2943aab6646839769d78f80b0d5499efcbe9.zip qemu-10ca2943aab6646839769d78f80b0d5499efcbe9.tar.gz qemu-10ca2943aab6646839769d78f80b0d5499efcbe9.tar.bz2 |
ide/ahci: Use universal DMA helper functions
The AHCI device can provide both PCI and SysBus AHCI device
emulations. For this reason, it wasn't previously converted to use
the pci_dma_*() helper functions. Now that we have universal DMA
helper functions, this converts AHCI to use them.
The DMAContext is obtained from pci_dma_context() in the PCI case and
set to NULL in the SysBus case (i.e. we assume for now that a SysBus
AHCI has no IOMMU translation).
Cc: Kevin Wolf <kwolf@redhat.com>
Cc: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Diffstat (limited to 'hw/ide/ahci.h')
-rw-r--r-- | hw/ide/ahci.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/hw/ide/ahci.h b/hw/ide/ahci.h index ec1b6a5..1200a56 100644 --- a/hw/ide/ahci.h +++ b/hw/ide/ahci.h @@ -299,6 +299,7 @@ typedef struct AHCIState { uint32_t idp_index; /* Current IDP index */ int ports; qemu_irq irq; + DMAContext *dma; } AHCIState; typedef struct AHCIPCIState { @@ -329,7 +330,7 @@ typedef struct NCQFrame { uint8_t reserved10; } QEMU_PACKED NCQFrame; -void ahci_init(AHCIState *s, DeviceState *qdev, int ports); +void ahci_init(AHCIState *s, DeviceState *qdev, DMAContext *dma, int ports); void ahci_uninit(AHCIState *s); void ahci_reset(AHCIState *s); |