From: Nicolas Ferre Date: Wed, 12 Jan 2011 14:39:09 +0000 (+0100) Subject: dmaengine: at_hdmac: flags located in first descriptor X-Git-Tag: v2.6.38-rc1~25^2~5 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=568f7f0c2e597671d3e646e0b85c95c4a5756fef;p=platform%2Fkernel%2Flinux-exynos.git dmaengine: at_hdmac: flags located in first descriptor Place flags on first descriptor of chain instead of last. This is the one used by atc_chain_complete() function while unmapping. Signed-off-by: Nicolas Ferre Signed-off-by: Dan Williams --- diff --git a/drivers/dma/at_hdmac.c b/drivers/dma/at_hdmac.c index e25c4ad..3938db2 100644 --- a/drivers/dma/at_hdmac.c +++ b/drivers/dma/at_hdmac.c @@ -603,7 +603,7 @@ atc_prep_dma_memcpy(struct dma_chan *chan, dma_addr_t dest, dma_addr_t src, /* set end-of-link to the last link descriptor of list*/ set_desc_eol(desc); - desc->txd.flags = flags; /* client is in control of this ack */ + first->txd.flags = flags; /* client is in control of this ack */ return &first->txd; @@ -748,8 +748,8 @@ atc_prep_slave_sg(struct dma_chan *chan, struct scatterlist *sgl, first->txd.cookie = -EBUSY; first->len = total_len; - /* last link descriptor of list is responsible of flags */ - prev->txd.flags = flags; /* client is in control of this ack */ + /* first link descriptor of list is responsible of flags */ + first->txd.flags = flags; /* client is in control of this ack */ return &first->txd;