]> git.proxmox.com Git - mirror_qemu.git/commitdiff
xilinx_axidma: Fix rx/tx halted bit.
authorPeter Crosthwaite <peter.crosthwaite@xilinx.com>
Tue, 16 Apr 2013 00:26:37 +0000 (10:26 +1000)
committerEdgar E. Iglesias <edgar.iglesias@gmail.com>
Tue, 16 Apr 2013 08:04:23 +0000 (10:04 +0200)
If there is no DMA buffer descriptor, the DMA halts, not idles.

Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
Acked-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
hw/dma/xilinx_axidma.c

index 02700ea4bd080b479a6a7101738287a199cea141..2bbfea15035675b73f61b034002737d9a58f3341 100644 (file)
@@ -276,7 +276,7 @@ static void stream_process_mem2s(struct Stream *s,
         stream_desc_load(s, s->regs[R_CURDESC]);
 
         if (s->desc.status & SDESC_STATUS_COMPLETE) {
-            s->regs[R_DMASR] |= DMASR_IDLE;
+            s->regs[R_DMASR] |= DMASR_HALTED;
             break;
         }
 
@@ -331,7 +331,7 @@ static void stream_process_s2mem(struct Stream *s,
         stream_desc_load(s, s->regs[R_CURDESC]);
 
         if (s->desc.status & SDESC_STATUS_COMPLETE) {
-            s->regs[R_DMASR] |= DMASR_IDLE;
+            s->regs[R_DMASR] |= DMASR_HALTED;
             break;
         }