diff --git a/drivers/dma/bcm2835-dma.c b/drivers/dma/bcm2835-dma.c index 811909e942862..6c1b2da367a4a 100644 --- a/drivers/dma/bcm2835-dma.c +++ b/drivers/dma/bcm2835-dma.c @@ -18,7 +18,6 @@ * Copyright 2012 Marvell International Ltd. */ #include -#include #include #include #include @@ -1024,12 +1023,14 @@ static struct dma_async_tx_descriptor *bcm2835_dma_prep_slave_sg( if (direction == DMA_DEV_TO_MEM) { if (c->cfg.src_addr_width != DMA_SLAVE_BUSWIDTH_4_BYTES) return NULL; - src = phys_to_dma(chan->device->dev, c->cfg.src_addr); + src = dma_map_resource(chan->device->dev, DMA_SLAVE_BUSWIDTH_4_BYTES, + c->cfg.src_addr, DMA_FROM_DEVICE, 0); info |= BCM2835_DMA_S_DREQ | BCM2835_DMA_D_INC; } else { if (c->cfg.dst_addr_width != DMA_SLAVE_BUSWIDTH_4_BYTES) return NULL; - dst = phys_to_dma(chan->device->dev, c->cfg.dst_addr); + dst = dma_map_resource(chan->device->dev, DMA_SLAVE_BUSWIDTH_4_BYTES, + c->cfg.dst_addr, DMA_TO_DEVICE, 0); info |= BCM2835_DMA_D_DREQ | BCM2835_DMA_S_INC; } @@ -1099,13 +1100,15 @@ static struct dma_async_tx_descriptor *bcm2835_dma_prep_dma_cyclic( if (direction == DMA_DEV_TO_MEM) { if (c->cfg.src_addr_width != DMA_SLAVE_BUSWIDTH_4_BYTES) return NULL; - src = phys_to_dma(chan->device->dev, c->cfg.src_addr); + src = dma_map_resource(chan->device->dev, DMA_SLAVE_BUSWIDTH_4_BYTES, + c->cfg.src_addr, DMA_FROM_DEVICE, 0); dst = buf_addr; info |= BCM2835_DMA_S_DREQ | BCM2835_DMA_D_INC; } else { if (c->cfg.dst_addr_width != DMA_SLAVE_BUSWIDTH_4_BYTES) return NULL; - dst = phys_to_dma(chan->device->dev, c->cfg.dst_addr); + dst = dma_map_resource(chan->device->dev, DMA_SLAVE_BUSWIDTH_4_BYTES, + c->cfg.dst_addr, DMA_TO_DEVICE, 0); src = buf_addr; info |= BCM2835_DMA_D_DREQ | BCM2835_DMA_S_INC;