spi: imx: reorder HW operations enable order to avoid possible RX data loss
authorAnton Bondarenko <anton.bondarenko.sama@gmail.com>
Sat, 5 Dec 2015 16:57:00 +0000 (17:57 +0100)
committerMark Brown <broonie@kernel.org>
Mon, 7 Dec 2015 19:53:35 +0000 (19:53 +0000)
commitfab44ef1adcc585440c07c90539e2b9e2cded4bf
tree4f6ae2d976239fe7267c40abb1fb20202cbc76bc
parente47b33c0765400d38ebaf57908f00abab2488f74
spi: imx: reorder HW operations enable order to avoid possible RX data loss

The overflow may happen due to rescheduling for another task and/or interrupt
if we enable SPI HW before starting RX DMA. So RX DMA enabled first to make
sure data would be read out from FIFO ASAP. TX DMA enabled next to start
filling TX FIFO with new data. And finaly SPI HW enabled to start actual
data transfer.

The risk rise in case of heavy system load and high SPI clock.

Signed-off-by: Anton Bondarenko <anton.bondarenko.sama@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-imx.c