spi/s3c64xx: use correct dma_transfer_direction type
There is a subtle difference between dma_transfer_direction and dma_data_direction: the former is used by the dmaengine framework, while the latter is used by the dma-mapping API. Although the purpose is comparable, the actual values are different and must not be mixed. In this case, the driver just wants to use dma_transfer_direction. Without this patch, building s3c6400_defconfig results in: drivers/spi/spi-s3c64xx.c: In function 's3c64xx_spi_dmacb': drivers/spi/spi-s3c64xx.c:239:21: warning: comparison between 'enum dma_data_direction' and 'enum dma_transfer_direction' [-Wenum-compare] As pointed out by Kukjin Kim, this also changes the use of constants from DMA_FROM_DEVICE/DMA_TO_DEVICE to DMA_DEV_TO_MEM/DMA_MEM_TO_DEV. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Kukjin Kim <kgene.kim@samsung.com> Cc: Ben Dooks <ben-linux@fluff.org> Cc: Grant Likely <grant.likely@secretlab.ca> Cc: linux-arm-kernel@lists.infradead.org Cc: linux-samsung-soc@vger.kernel.org Cc: spi-devel-general@lists.sourceforge.net
This commit is contained in:
@@ -132,7 +132,7 @@
|
|||||||
|
|
||||||
struct s3c64xx_spi_dma_data {
|
struct s3c64xx_spi_dma_data {
|
||||||
unsigned ch;
|
unsigned ch;
|
||||||
enum dma_data_direction direction;
|
enum dma_transfer_direction direction;
|
||||||
enum dma_ch dmach;
|
enum dma_ch dmach;
|
||||||
struct property *dma_prop;
|
struct property *dma_prop;
|
||||||
};
|
};
|
||||||
@@ -1065,11 +1065,11 @@ static int __devinit s3c64xx_spi_get_dmares(
|
|||||||
|
|
||||||
if (tx) {
|
if (tx) {
|
||||||
dma_data = &sdd->tx_dma;
|
dma_data = &sdd->tx_dma;
|
||||||
dma_data->direction = DMA_TO_DEVICE;
|
dma_data->direction = DMA_MEM_TO_DEV;
|
||||||
chan_str = "tx";
|
chan_str = "tx";
|
||||||
} else {
|
} else {
|
||||||
dma_data = &sdd->rx_dma;
|
dma_data = &sdd->rx_dma;
|
||||||
dma_data->direction = DMA_FROM_DEVICE;
|
dma_data->direction = DMA_DEV_TO_MEM;
|
||||||
chan_str = "rx";
|
chan_str = "rx";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user