Message ID | 20200402134721.27863-4-edgar.iglesias@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | dma/xlnx-zdma: Bug fixes | expand |
On Thu, Apr 2, 2020 at 6:50 AM Edgar E. Iglesias <edgar.iglesias@gmail.com> wrote: > > From: "Edgar E. Iglesias" <edgar.iglesias@xilinx.com> > > Clear DMA_DONE when halting the DMA channel. > > Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> Acked-by: Alistair Francis <alistair.francis@wdc.com> Alistair > --- > hw/dma/xlnx-zdma.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/hw/dma/xlnx-zdma.c b/hw/dma/xlnx-zdma.c > index 6a4699757a..dd893bc420 100644 > --- a/hw/dma/xlnx-zdma.c > +++ b/hw/dma/xlnx-zdma.c > @@ -520,6 +520,7 @@ static void zdma_process_descr(XlnxZDMA *s) > if (src_cmd == CMD_HALT) { > zdma_set_state(s, PAUSED); > ARRAY_FIELD_DP32(s->regs, ZDMA_CH_ISR, DMA_PAUSE, 1); > + ARRAY_FIELD_DP32(s->regs, ZDMA_CH_ISR, DMA_DONE, false); > zdma_ch_imr_update_irq(s); > return; > } > -- > 2.20.1 > >
On [2020 Apr 02] Thu 15:47:19, Edgar E. Iglesias wrote: > From: "Edgar E. Iglesias" <edgar.iglesias@xilinx.com> > > Clear DMA_DONE when halting the DMA channel. > > Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> Reviewed-by: Francisco Iglesias <frasse.iglesias@gmail.com> > --- > hw/dma/xlnx-zdma.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/hw/dma/xlnx-zdma.c b/hw/dma/xlnx-zdma.c > index 6a4699757a..dd893bc420 100644 > --- a/hw/dma/xlnx-zdma.c > +++ b/hw/dma/xlnx-zdma.c > @@ -520,6 +520,7 @@ static void zdma_process_descr(XlnxZDMA *s) > if (src_cmd == CMD_HALT) { > zdma_set_state(s, PAUSED); > ARRAY_FIELD_DP32(s->regs, ZDMA_CH_ISR, DMA_PAUSE, 1); > + ARRAY_FIELD_DP32(s->regs, ZDMA_CH_ISR, DMA_DONE, false); > zdma_ch_imr_update_irq(s); > return; > } > -- > 2.20.1 >
diff --git a/hw/dma/xlnx-zdma.c b/hw/dma/xlnx-zdma.c index 6a4699757a..dd893bc420 100644 --- a/hw/dma/xlnx-zdma.c +++ b/hw/dma/xlnx-zdma.c @@ -520,6 +520,7 @@ static void zdma_process_descr(XlnxZDMA *s) if (src_cmd == CMD_HALT) { zdma_set_state(s, PAUSED); ARRAY_FIELD_DP32(s->regs, ZDMA_CH_ISR, DMA_PAUSE, 1); + ARRAY_FIELD_DP32(s->regs, ZDMA_CH_ISR, DMA_DONE, false); zdma_ch_imr_update_irq(s); return; }