spi: cadence-quadspi: fix dma_unmap_single() call
authorArnd Bergmann <arnd@arndb.de>
Wed, 13 Oct 2021 14:45:55 +0000 (16:45 +0200)
committerMark Brown <broonie@kernel.org>
Wed, 13 Oct 2021 15:46:46 +0000 (16:46 +0100)
There are separate constants for the dma-mapping API and the dmaengine
API, mixing them up causes a warning in some builds:

In file included from drivers/spi/spi-cadence-quadspi.c:12:
drivers/spi/spi-cadence-quadspi.c: In function 'cqspi_versal_indirect_read_dma':
drivers/spi/spi-cadence-quadspi.c:950:55: error: implicit conversion from 'enum dma_transfer_direction' to 'enum dma_data_direction' [-Werror=enum-conversion]
  950 |         dma_unmap_single(dev, dma_addr, bytes_to_dma, DMA_DEV_TO_MEM);
      |                                                       ^~~~~~~~~~~~~~
include/linux/dma-mapping.h:407:70: note: in definition of macro 'dma_unmap_single'
  407 | #define dma_unmap_single(d, a, s, r) dma_unmap_single_attrs(d, a, s, r, 0)
      |                                                                      ^

Fixes: 1a6f854f7daa ("spi: cadence-quadspi: Add Xilinx Versal external DMA support")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Link: https://lore.kernel.org/r/20211013144600.2378037-1-arnd@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-cadence-quadspi.c

index 5bdb1ba..8b3d268 100644 (file)
@@ -947,7 +947,7 @@ failrd:
        writel(CQSPI_REG_INDIRECTWR_CANCEL_MASK,
               reg_base + CQSPI_REG_INDIRECTRD);
 
-       dma_unmap_single(dev, dma_addr, bytes_to_dma, DMA_DEV_TO_MEM);
+       dma_unmap_single(dev, dma_addr, bytes_to_dma, DMA_FROM_DEVICE);
 
        reg = readl(cqspi->iobase + CQSPI_REG_CONFIG);
        reg &= ~CQSPI_REG_CONFIG_DMA_MASK;