summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Liu <r64343@freescale.com>2013-06-28 10:04:22 +0800
committerJason Liu <r64343@freescale.com>2013-06-28 16:35:11 +0800
commitf2467c9e62bce495bf7133dbc2fb9420324773d3 (patch)
tree4198468d7015700116be728919aa5a78c986a794
parentbc32a149c0e342b2b4d69947cc86b5821ca470b1 (diff)
ENGR00268891 MM:remove the experimental CMA defconfig
The CMA support marked as the experimental in the kernel Kconfig. After turns it on, we found many memory issues. Since this CMA support on the 3.5.7 kernel is not mature enough, just turn it off and use back the consistent remap DMA. Signed-off-by: Jason Liu <r64343@freescale.com>
-rw-r--r--arch/arm/Kconfig11
-rw-r--r--arch/arm/configs/imx_v6_v7_defconfig2
-rw-r--r--arch/arm/mm/dma-mapping.c2
3 files changed, 11 insertions, 4 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 84fc56e27220..d99dc1169c06 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1725,9 +1725,10 @@ config HW_PERF_EVENTS
source "mm/Kconfig"
config FORCE_MAX_ZONEORDER
- int "Maximum zone order" if ARCH_SHMOBILE
+ int "Maximum zone order" if ARCH_SHMOBILE || ARCH_MXC
range 11 64 if ARCH_SHMOBILE
default "9" if SA1111
+ default "14" if ARCH_MXC
default "11"
help
The kernel memory allocator divides physically contiguous memory
@@ -1740,6 +1741,14 @@ config FORCE_MAX_ZONEORDER
This config option is actually maximum order plus one. For example,
a value of 11 means that the largest free memory block is 2^10 pages.
+config CONSISTENT_DMA_SIZE_IN_MB
+ int "consistent dma size in MBytes"
+ default "184" if ARCH_MXC
+ default "2"
+ help
+ The option provides the arch related consistent dma size in MBytes,
+ if the number is 2 which means the consitend dma size will be 2MB.
+
config LEDS
bool "Timer and CPU usage LEDs"
depends on ARCH_CDB89712 || ARCH_EBSA110 || \
diff --git a/arch/arm/configs/imx_v6_v7_defconfig b/arch/arm/configs/imx_v6_v7_defconfig
index b52d3c2c775e..43b6da271e14 100644
--- a/arch/arm/configs/imx_v6_v7_defconfig
+++ b/arch/arm/configs/imx_v6_v7_defconfig
@@ -81,8 +81,6 @@ CONFIG_CFG80211=y
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
# CONFIG_STANDALONE is not set
-CONFIG_CMA=y
-CONFIG_CMA_SIZE_MBYTES=184
CONFIG_IMX_WEIM=y
CONFIG_CONNECTOR=y
CONFIG_MTD=y
diff --git a/arch/arm/mm/dma-mapping.c b/arch/arm/mm/dma-mapping.c
index 85acb8ea6712..df2b52ebc3d2 100644
--- a/arch/arm/mm/dma-mapping.c
+++ b/arch/arm/mm/dma-mapping.c
@@ -226,7 +226,7 @@ static void __dma_free_buffer(struct page *page, size_t size)
*/
static pte_t **consistent_pte;
-#define DEFAULT_CONSISTENT_DMA_SIZE SZ_2M
+#define DEFAULT_CONSISTENT_DMA_SIZE (CONFIG_CONSISTENT_DMA_SIZE_IN_MB * SZ_1M)
static unsigned long consistent_base = CONSISTENT_END - DEFAULT_CONSISTENT_DMA_SIZE;