linux/Documentation
Akinobu Mita 5ea3b1b2f8 cma: add placement specifier for "cma=" kernel parameter
Currently, "cma=" kernel parameter is used to specify the size of CMA,
but we can't specify where it is located.  We want to locate CMA below
4GB for devices only supporting 32-bit addressing on 64-bit systems
without iommu.

This enables to specify the placement of CMA by extending "cma=" kernel
parameter.

Examples:
 1. locate 64MB CMA below 4GB by "cma=64M@0-4G"
 2. locate 64MB CMA exact at 512MB by "cma=64M@512M"

Note that the DMA contiguous memory allocator on x86 assumes that
page_address() works for the pages to allocate.  So this change requires
to limit end address of contiguous memory area upto max_pfn_mapped to
prevent from locating it on highmem area by the argument of
dma_contiguous_reserve().

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Cc: Marek Szyprowski <m.szyprowski@samsung.com>
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: David Woodhouse <dwmw2@infradead.org>
Cc: Don Dutile <ddutile@redhat.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2014-06-04 16:53:57 -07:00
..
2014-04-07 16:36:02 -07:00
2014-06-04 10:02:38 -07:00
2014-06-03 09:11:20 -07:00
2014-03-11 06:55:49 -03:00
2014-05-05 15:32:05 +02:00
2014-02-28 15:12:08 -08:00
2014-06-03 11:09:43 -07:00
2013-04-02 09:39:55 -07:00
2014-02-10 16:01:40 -08:00
2013-11-27 11:03:38 -08:00
2014-05-05 15:32:05 +02:00
2013-01-10 01:27:46 +01:00
2014-06-03 23:13:20 +02:00
2014-05-05 15:32:05 +02:00
2014-05-05 15:32:05 +02:00
2014-05-05 15:32:05 +02:00
2013-10-16 13:35:02 -07:00
2014-05-05 15:32:05 +02:00
2014-04-18 16:59:52 -07:00
2014-04-18 14:20:48 +02:00
2014-05-05 15:32:05 +02:00
2013-11-14 11:04:40 -08:00
2014-03-21 13:16:58 +01:00
2013-12-02 14:48:28 +01:00
2013-12-02 14:48:28 +01:00
2014-03-21 13:16:58 +01:00
2013-12-02 14:45:19 +01:00
2013-10-24 10:51:33 +02:00
2014-05-05 15:32:05 +02:00
2014-05-05 15:32:05 +02:00
2014-05-05 15:32:05 +02:00
2013-09-05 16:36:21 -06:00