diff mbox

[RFC] Avoid aliasing mappings in DMA coherent allocator

Message ID 201101090206.34096.jkrzyszt@tis.icnet.pl (mailing list archive)
State New, archived
Delegated to: Tomi Valkeinen
Headers show

Commit Message

Janusz Krzysztofik Jan. 9, 2011, 1:06 a.m. UTC
None
diff mbox

Patch

--- 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