From: ths Date: Wed, 24 Jan 2007 01:12:42 +0000 (+0000) Subject: Fix DMA timeouts on FreeBSD, by Carlo Marcelo Arenas Belon. X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=30c4bbace19e802979009cc5c16fb4e14dc6bda6;p=qemu.git Fix DMA timeouts on FreeBSD, by Carlo Marcelo Arenas Belon. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2349 c046a42c-6fe2-441c-8c8c-71466251a162 --- diff --git a/hw/ide.c b/hw/ide.c index afa06f8044..8c9b6e6ddb 100644 --- a/hw/ide.c +++ b/hw/ide.c @@ -2230,7 +2230,6 @@ static void ide_dma_start(IDEState *s, BlockDriverCompletionFunc *dma_cb) return; bm->ide_if = s; bm->dma_cb = dma_cb; - bm->cur_addr = bm->addr; bm->cur_prd_last = 0; bm->cur_prd_addr = 0; bm->cur_prd_len = 0; @@ -2363,6 +2362,7 @@ static void bmdma_addr_writel(void *opaque, uint32_t addr, uint32_t val) printf("%s: 0x%08x\n", __func__, val); #endif bm->addr = val & ~3; + bm->cur_addr = bm->addr; } static void bmdma_map(PCIDevice *pci_dev, int region_num,