From 2cd94c8a1b4184b48ecbc16b353dcbb513053285 Mon Sep 17 00:00:00 2001 From: Mark Brown Date: Sun, 27 Jan 2013 14:35:04 +0800 Subject: [PATCH] spi: Ensure memory used for spi_write_then_read() is DMA safe Use GFP_DMA in order to ensure that the memory we allocate for transfers in spi_write_then_read() can be DMAed. On most platforms this will have no effect. Signed-off-by: Mark Brown Signed-off-by: Grant Likely --- drivers/spi/spi.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c index 2edbe1903804..d1e0a316826d 100644 --- a/drivers/spi/spi.c +++ b/drivers/spi/spi.c @@ -1661,7 +1661,8 @@ int spi_write_then_read(struct spi_device *spi, * using the pre-allocated buffer or the transfer is too large. */ if ((n_tx + n_rx) > SPI_BUFSIZ || !mutex_trylock(&lock)) { - local_buf = kmalloc(max((unsigned)SPI_BUFSIZ, n_tx + n_rx), GFP_KERNEL); + local_buf = kmalloc(max((unsigned)SPI_BUFSIZ, n_tx + n_rx), + GFP_KERNEL | GFP_DMA); if (!local_buf) return -ENOMEM; } else { -- 2.39.5