From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:42670) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QyzOz-0006L1-Be for qemu-devel@nongnu.org; Thu, 01 Sep 2011 01:01:22 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QyzOx-0000bS-Uk for qemu-devel@nongnu.org; Thu, 01 Sep 2011 01:01:21 -0400 Received: from ozlabs.org ([203.10.76.45]:51409) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QyzOx-0000aE-4Q for qemu-devel@nongnu.org; Thu, 01 Sep 2011 01:01:19 -0400 From: David Gibson Date: Thu, 1 Sep 2011 15:01:03 +1000 Message-Id: <1314853263-2086-11-git-send-email-david@gibson.dropbear.id.au> In-Reply-To: <1314853263-2086-1-git-send-email-david@gibson.dropbear.id.au> References: <1314853263-2086-1-git-send-email-david@gibson.dropbear.id.au> Subject: [Qemu-devel] [PATCH 10/10] intel-hda: Use PCI DMA stub functions List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: joerg.roedel@amd.com, aliguori@us.ibm.com, rth@twiddle.net, agraf@suse.de, eduard.munteanu@linux360.ro This updates the intel-hda device emulation to use the explicit PCI DMA functions, instead of directly calling physical memory access functions. Signed-off-by: David Gibson --- hw/intel-hda.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/hw/intel-hda.c b/hw/intel-hda.c index 4272204..392bfc5 100644 --- a/hw/intel-hda.c +++ b/hw/intel-hda.c @@ -24,6 +24,7 @@ #include "audiodev.h" #include "intel-hda.h" #include "intel-hda-defs.h" +#include "dma.h" /* --------------------------------------------------------------------- */ /* hda bus */ @@ -425,8 +426,7 @@ static bool intel_hda_xfer(HDACodecDevice *dev, uint32_t stnr, bool output, dprint(d, 3, "dma: entry %d, pos %d/%d, copy %d\n", st->be, st->bp, st->bpl[st->be].len, copy); - cpu_physical_memory_rw(st->bpl[st->be].addr + st->bp, - buf, copy, !output); + pci_dma_rw(&d->pci, st->bpl[st->be].addr + st->bp, buf, copy, !output); st->lpib += copy; st->bp += copy; buf += copy; @@ -470,7 +470,7 @@ static void intel_hda_parse_bdl(IntelHDAState *d, IntelHDAStream *st) g_free(st->bpl); st->bpl = g_malloc(sizeof(bpl) * st->bentries); for (i = 0; i < st->bentries; i++, addr += 16) { - cpu_physical_memory_read(addr, buf, 16); + pci_dma_read(&d->pci, addr, buf, 16); st->bpl[i].addr = le64_to_cpu(*(uint64_t *)buf); st->bpl[i].len = le32_to_cpu(*(uint32_t *)(buf + 8)); st->bpl[i].flags = le32_to_cpu(*(uint32_t *)(buf + 12)); -- 1.7.5.4