Use PIO mode instead if size is smaller than fifo size, since
dma may be less efficient.

Signed-off-by: Robin Gong <[email protected]>
---
 drivers/spi/spi-imx.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/spi/spi-imx.c b/drivers/spi/spi-imx.c
index 037abbb..dd1ce12 100644
--- a/drivers/spi/spi-imx.c
+++ b/drivers/spi/spi-imx.c
@@ -224,6 +224,9 @@ static bool spi_imx_can_dma(struct spi_master *master, 
struct spi_device *spi,
        if (spi_imx->slave_mode)
                return false;
 
+       if (transfer->len < spi_imx->devtype_data->fifo_size)
+               return false;
+
        spi_imx->dynamic_burst = 0;
 
        return true;
-- 
2.7.4

Reply via email to