spi: rspi: Fix leaking of unused DMA descriptors
If dmaengine_prep_slave_sg() or dmaengine_submit() fail, we may leak
unused DMA descriptors.
As per Documentation/dmaengine.txt, once a DMA descriptor has been
obtained, it must be submitted. Hence:
  - First prepare and submit all DMA descriptors,
  - Prepare the SPI controller for DMA,
  - Start DMA by calling dma_async_issue_pending(),
  - Make sure to call dmaengine_terminate_all() on all descriptors that
    haven't completed.
Reported-by:  Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by:
Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by:  Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by:
Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by:  Mark Brown <broonie@linaro.org>
Mark Brown <broonie@linaro.org>
Loading
Please register or sign in to comment
