(Cc linux-omap, please refere to a copy of Russell's initial message: http://lists.infradead.org/pipermail/linux-arm-kernel/2010-December/036463.html) Monday 03 January 2011 19:28:36 Janusz Krzysztofik wrote: > I'll try to prepare for review a followup patch that updates those > <{mach,plat}/memory.h> and similiar include files which provided > their own non-default CONSISTENT_DMA_SIZE values. Below is an example of how a build time configuration for OMAP could be updated. However, more looking at this, I think that a finer control of reserved memory area sizes, yet better selected at run time for a specific machine or board type, could be benefitial in case of kernels intended to run on multiple board types, like those built with omap1_defconfig, or even on multiple machine types, like in omap2plus_defconfig case. Signed-off-by: Janusz Krzysztofik <jkrzyszt@xxxxxxxxxxxx> --- --- linux-2.6.37-rc7/arch/arm/plat-omap/include/plat/memory.h.orig 2011-01-07 02:37:44.000000000 +0100 +++ linux-2.6.37-rc7/arch/arm/plat-omap/include/plat/memory.h 2011-01-07 03:01:25.000000000 +0100 @@ -86,17 +86,21 @@ #endif /* CONFIG_ARCH_OMAP15XX */ /* Override the ARM default */ -#ifdef CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE +#ifndef CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE +#define CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE 0 +#endif -#if (CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE == 0) +#if (CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE == 0) && \ + (defined(CONFIG_SND_OMAP_SOC) || defined(CONFIG_SND_OMAP_SOC_MODULE)) #undef CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE -#define CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE 2 +#define CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE 1 #endif -#define CONSISTENT_DMA_SIZE \ - (((CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE + 1) & ~1) * 1024 * 1024) +#define CONSISTENT_WC_SIZE \ + (CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE * 1024 * 1024) -#endif +#define CONSISTENT_DMA_SIZE \ + ((CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE % 2 ? 1 : 2) * 1024 * 1024) #endif --- linux-2.6.37-rc7/drivers/video/omap/Kconfig.orig 2010-12-24 13:42:46.000000000 +0100 +++ linux-2.6.37-rc7/drivers/video/omap/Kconfig 2011-01-07 01:56:45.000000000 +0100 @@ -85,9 +85,10 @@ config FB_OMAP_CONSISTENT_DMA_SIZE range 1 14 default 2 help - Increase the DMA consistent memory size according to your video + Increase the DMA writecombine memory size according to your video memory needs, for example if you want to use multiple planes. - The size must be 2MB aligned. + Note that 256kB can be consumed by OMAP sound driver if active. + Specifying an odd number reduces DMA coherent memory from 2 to 1MB. If unsure say 1. config FB_OMAP_DMA_TUNE -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html