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