summary refs log tree commit diff stats
path: root/hw
diff options
context:
space:
mode:
authorHervé Poussineau <hpoussin@reactos.org>2012-07-09 12:02:23 +0200
committerBlue Swirl <blauwirbel@gmail.com>2012-07-14 10:11:41 +0000
commit7246e160763306d254772353adb8e0836c3eac5b (patch)
tree18b2b654fc265e3c4122e1cb75b0c566c851ba24 /hw
parent1b26eaa1382b333ef447ca27ff7ce166393cb46d (diff)
downloadfocaccia-qemu-7246e160763306d254772353adb8e0836c3eac5b.tar.gz
focaccia-qemu-7246e160763306d254772353adb8e0836c3eac5b.zip
esp: delay Transfer Information command if dma is not enabled
The same mechanism is already in place for some select commands.

Signed-off-by: Hervé Poussineau <hpoussin@reactos.org>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Diffstat (limited to 'hw')
-rw-r--r--hw/esp.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/hw/esp.c b/hw/esp.c
index aff8de6839..ac91f00351 100644
--- a/hw/esp.c
+++ b/hw/esp.c
@@ -435,6 +435,11 @@ static void handle_ti(ESPState *s)
 {
     uint32_t dmalen, minlen;
 
+    if (s->dma && !s->dma_enabled) {
+        s->dma_cb = handle_ti;
+        return;
+    }
+
     dmalen = s->rregs[ESP_TCLO] | (s->rregs[ESP_TCMID] << 8);
     if (dmalen==0) {
       dmalen=0x10000;