Hi Niklas, On Mon, Jan 11, 2016 at 3:17 AM, Niklas Söderlund <niklas.soderlund+renesas@xxxxxxxxxxxx> wrote: > --- a/drivers/dma/sh/rcar-dmac.c > +++ b/drivers/dma/sh/rcar-dmac.c > @@ -13,6 +13,7 @@ > #include <linux/dma-mapping.h> > #include <linux/dmaengine.h> > #include <linux/interrupt.h> > +#include <linux/iommu.h> > #include <linux/list.h> > #include <linux/module.h> > #include <linux/mutex.h> > @@ -1101,6 +1102,24 @@ rcar_dmac_prep_dma_cyclic(struct dma_chan *chan, dma_addr_t buf_addr, > return desc; > } > > +static dma_addr_t __rcar_dmac_dma_map(struct dma_chan *chan, phys_addr_t addr, > + size_t size, enum dma_data_direction dir) > +{ > + struct rcar_dmac_chan *rchan = to_rcar_dmac_chan(chan); > + struct page *page = phys_to_page(addr); > + size_t offset = addr - page_to_phys(page); > + dma_addr_t map = dma_map_page(chan->device->dev, page, offset, size, > + dir); > + > + if (dma_mapping_error(chan->device->dev, map)) { > + dev_err(chan->device->dev, "chan%u: failed to map %zx@%pap", > + rchan->index, size, &addr); > + return 0; Zero may be a valid DMA address. Please use DMA_ERROR_CODE instead. > + } > + > + return map; > +} Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html