aboutsummaryrefslogtreecommitdiff
path: root/hw/ide.c
diff options
context:
space:
mode:
authorths <ths@c046a42c-6fe2-441c-8c8c-71466251a162>2007-01-24 01:12:42 +0000
committerths <ths@c046a42c-6fe2-441c-8c8c-71466251a162>2007-01-24 01:12:42 +0000
commit30c4bbace19e802979009cc5c16fb4e14dc6bda6 (patch)
treeebe45e9d1404628f9868d521764ef6f120b80754 /hw/ide.c
parent9c2149c8e06cf6fbf1bd5096a50486abc3b71f17 (diff)
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
Diffstat (limited to 'hw/ide.c')
-rw-r--r--hw/ide.c2
1 files changed, 1 insertions, 1 deletions
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,