History

dmaengine: dw_dma: fix endianess for DT xlate function

As reported by Wu Fengguang's build robot tracking sparse warnings, the dma_spec arguments in the dw_dma_xlate are already byte swapped on little-endian platforms and must not get swapped again. This code is currently not used anywhere, but will be used in Linux 3.10 when the ARM SPEAr platform starts using the generic DMA DT binding.

Arnd Bergmann committed 13 years ago

Commit f73bb9b1 parent 8bb96601 file · +3 −3Browse files

Unified · Split

drivers/dma/dw_dmac.c+3−3
@@ -1276,9 +1276,9 @@ static struct dma_chan *dw_dma_xlate(struct of_phandle_args *dma_spec, · 1275 unmodified lines
1276 if (dma_spec->args_count != 3)1276 if (dma_spec->args_count != 3)
1277 return NULL;1277 return NULL;
1278 1278
1279 fargs.req = be32_to_cpup(dma_spec->args+0);1279 fargs.req = dma_spec->args[0];
1280 fargs.src = be32_to_cpup(dma_spec->args+1);1280 fargs.src = dma_spec->args[1];
1281 fargs.dst = be32_to_cpup(dma_spec->args+2);1281 fargs.dst = dma_spec->args[2];
1282 1282
1283 if (WARN_ON(fargs.req >= DW_DMA_MAX_NR_REQUESTS ||1283 if (WARN_ON(fargs.req >= DW_DMA_MAX_NR_REQUESTS ||
1284 fargs.src >= dw->nr_masters ||1284 fargs.src >= dw->nr_masters ||