I screwed up, the subject prefix should of course be "dmaengine" and not "dma". Vinod can you fix this up, or should I resend? On 09/05/2017 10:16 AM, Lars-Peter Clausen wrote: > In hardware cyclic mode the submitted segment is repeated. This means > hardware cyclic mode can only be used if the transfer has a single segment. > > Signed-off-by: Lars-Peter Clausen <lars@xxxxxxxxxx> > --- > drivers/dma/dma-axi-dmac.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/drivers/dma/dma-axi-dmac.c b/drivers/dma/dma-axi-dmac.c > index 7f0b9aa15867..eb289aa187dd 100644 > --- a/drivers/dma/dma-axi-dmac.c > +++ b/drivers/dma/dma-axi-dmac.c > @@ -220,9 +220,11 @@ static void axi_dmac_start_transfer(struct axi_dmac_chan *chan) > > /* > * If the hardware supports cyclic transfers and there is no callback to > - * call, enable hw cyclic mode to avoid unnecessary interrupts. > + * call and only a single segment, enable hw cyclic mode to avoid > + * unnecessary interrupts. > */ > - if (chan->hw_cyclic && desc->cyclic && !desc->vdesc.tx.callback) > + if (chan->hw_cyclic && desc->cyclic && !desc->vdesc.tx.callback && > + desc->num_sgs == 1) > flags |= AXI_DMAC_FLAG_CYCLIC; > > axi_dmac_write(dmac, AXI_DMAC_REG_X_LENGTH, sg->x_len - 1); > -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html