diff options
author | Vinod Koul <vkoul@kernel.org> | 2018-08-17 17:58:07 +0530 |
---|---|---|
committer | Vinod Koul <vkoul@kernel.org> | 2018-08-17 17:58:07 +0530 |
commit | 2cc50b9f92dc55a0f8c379a48893d8afde33628b (patch) | |
tree | 32066be78c446291979f74fefb5a2f54f18e8385 /drivers/dma | |
parent | d3df935e35f5be0cf2647e281bda60214c92dc79 (diff) | |
parent | 4cb0e60112168594da2ac8a7752b0250c4387733 (diff) | |
download | op-kernel-dev-2cc50b9f92dc55a0f8c379a48893d8afde33628b.zip op-kernel-dev-2cc50b9f92dc55a0f8c379a48893d8afde33628b.tar.gz |
Merge branch 'topic/ioat' into for-linus
Diffstat (limited to 'drivers/dma')
-rw-r--r-- | drivers/dma/ioat/dma.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/dma/ioat/dma.c b/drivers/dma/ioat/dma.c index 8b5b23a..23fb2fa 100644 --- a/drivers/dma/ioat/dma.c +++ b/drivers/dma/ioat/dma.c @@ -688,6 +688,12 @@ static void ioat_restart_channel(struct ioatdma_chan *ioat_chan) { u64 phys_complete; + /* set the completion address register again */ + writel(lower_32_bits(ioat_chan->completion_dma), + ioat_chan->reg_base + IOAT_CHANCMP_OFFSET_LOW); + writel(upper_32_bits(ioat_chan->completion_dma), + ioat_chan->reg_base + IOAT_CHANCMP_OFFSET_HIGH); + ioat_quiesce(ioat_chan, 0); if (ioat_cleanup_preamble(ioat_chan, &phys_complete)) __cleanup(ioat_chan, phys_complete); |