On Fri, 17 Feb 2012 20:30:34 +0100 Marek Szyprowski m.szyprowski@samsung.com wrote:
This patch adds support for CMA to dma-mapping subsystem for x86 architecture that uses common pci-dma/pci-nommu implementation. This allows to test CMA on KVM/QEMU and a lot of common x86 boxes.
...
--- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -31,6 +31,7 @@ config X86 select ARCH_WANT_OPTIONAL_GPIOLIB select ARCH_WANT_FRAME_POINTERS select HAVE_DMA_ATTRS
- select HAVE_DMA_CONTIGUOUS if !SWIOTLB select HAVE_KRETPROBES select HAVE_OPTPROBES select HAVE_FTRACE_MCOUNT_RECORD
I don't think it's compilable at all for x86_64, because that platform selects SWIOTLB.
After a while I got it to compile for i386. arm didn't go so well, partly because arm allmodconfig is presently horked (something to do with Kconfig not setting PHYS_OFFSET) and partly because arm defconfig doesn't permit CMA to be set. Got bored, gave up.
The patchset collides pretty seriously with pending dma api changes and pending arm changes in linux-next, so I didn't apply anything. This will all need to be looked at, please.
I'll make do with reading the patches for now ;)