Skip to content

Commit

Permalink
dmaengine: ep93xx: Always start from BASE0
Browse files Browse the repository at this point in the history
The current buffer is being reset to zero on device_free_chan_resources()
but not on device_terminate_all(). It could happen that HW is restarted and
expects BASE0 to be used, but the driver is not synchronized and will start
from BASE1. One solution is to reset the buffer explicitly in
m2p_hw_setup().

Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
Cc: stable@vger.kernel.org
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
  • Loading branch information
sverdlin authored and Vinod Koul committed May 24, 2017
1 parent 9a445bb commit 0037ae4
Showing 1 changed file with 2 additions and 0 deletions.
2 changes: 2 additions & 0 deletions drivers/dma/ep93xx_dma.c
Original file line number Diff line number Diff line change
Expand Up @@ -323,6 +323,8 @@ static int m2p_hw_setup(struct ep93xx_dma_chan *edmac)
| M2P_CONTROL_ENABLE;
m2p_set_control(edmac, control);

edmac->buffer = 0;

return 0;
}

Expand Down

0 comments on commit 0037ae4

Please sign in to comment.