On Tuesday 18 June 2013, Hiroshi Doyu wrote:
I'm guessing that this kind of unification usually takes some time since we need to factor out the common code from the different ${ARCH}/mm/dma-mapping.c. Also some of ${ARCH} has IOMMU support in it. So if we want to develop our 64-bit ARM with working DMA mapping API during this transition, the step to take would be:
1, Copy arch/arm/mm/dma-mapping.c arch/arm64/mm/dma-mapping.c(+swiotlb)
Please don't.
2, Adapt arch/arm64/mm/dma-mapping.c(+swiotlb) to 64bit compatible. 3, Factor out the common code from them into mm/dma-mapping.c
I would suggest moving the ARM dma-mapping.c code to /mm or /lib right away and then generalizing it there. Whoever wants to add support for their architecture can modify the code to add whatever changes they require.
Arnd