diff --git a/drivers/spi/atmel_spi.c b/drivers/spi/atmel_spi.c
index ca9dab5..825371f 100644
--- a/drivers/spi/atmel_spi.c
+++ b/drivers/spi/atmel_spi.c
@@ -463,7 +463,7 @@ static void atmel_spi_next_xfer(struct spi_master *master,

        as->current_transfer = xfer;

-       if (atmel_spi_use_dma(xfer)) {
+       if (atmel_spi_use_dma(xfer) && xfer->len <= BUFFER_SIZE) {
                if (!atmel_spi_next_xfer_dma(master, xfer))
                        return;
                else
