spi: sh-msiof: Make sure all DMA operations have completed
authorGeert Uytterhoeven <geert+renesas@glider.be>
Wed, 13 Jun 2018 08:41:15 +0000 (10:41 +0200)
committerMark Brown <broonie@kernel.org>
Mon, 18 Jun 2018 11:47:09 +0000 (12:47 +0100)
commit08ba7ae35b15cd13b965d5fd5a835e0a0cb803e6
treec679e6acecbacc479de48ab5a238a7e89a3ce27e
parent16c10b3bf84df5564683c704039f6199b8359b16
spi: sh-msiof: Make sure all DMA operations have completed

In case of a bi-directional transfer, receive DMA may complete in the
rcar-dmac driver before transmit DMA, due to scheduling latencies.
As the MSIOF driver waits for completion of the receive DMA only, it may
submit the next transmit DMA request before the previous one has
completed.

Make the driver more robust by waiting for the completion of both
receive and transmit DMA, when applicable.

Based on a patch in the BSP by Ryo Kataoka.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-sh-msiof.c