浏览代码

Merge branch 'fixes' of git://git.infradead.org/users/vkoul/slave-dma

Pull slave-dmaengine fixes from Vinod Koul:
 "Two small fixes for omap dmaengine driver which fixes cyclic suspend
  and resume"

* 'fixes' of git://git.infradead.org/users/vkoul/slave-dma:
  dmaengine: omap-dma: Restore the CLINK_CTRL in resume path
  dmaengine: omap-dma: Add memory barrier to dma_resume path
Linus Torvalds 11 年之前
父节点
当前提交
4092dc8f0b
共有 1 个文件被更改,包括 5 次插入0 次删除
  1. 5 0
      drivers/dma/omap-dma.c

+ 5 - 0
drivers/dma/omap-dma.c

@@ -1017,6 +1017,11 @@ static int omap_dma_resume(struct omap_chan *c)
 		return -EINVAL;
 		return -EINVAL;
 
 
 	if (c->paused) {
 	if (c->paused) {
+		mb();
+
+		/* Restore channel link register */
+		omap_dma_chan_write(c, CLNK_CTRL, c->desc->clnk_ctrl);
+
 		omap_dma_start(c, c->desc);
 		omap_dma_start(c, c->desc);
 		c->paused = false;
 		c->paused = false;
 	}
 	}