On 12/20/2011 03:38 PM, Somebody in the thread at some point said:
Hi -
Is it expected CMA and high memory should work OK? I see there's a note in the CMA log about "implement support for contiguous memory areas placed in HIGHMEM zone", but it's ambiguous if it should be ignoring highmem or is expected to blow chunks.
If it's expected to blow chunks, is there a hack or workaround that will allow us to have both HIGHMEM and CMA on OMAP4?
I'm aware of this issue, I hope to post a fix ASAP I finish some of my urgent bug fixing related to our project. In meantime I suggest using 2G/2G memory split as a workaround (Kernel Features -> Memory split -> 2G/2G user/kernel split).
Thanks a lot for the helpful reply Marek.
I made a workaround hack earlier using CONFIG_ZONE_DMA to restrict it to the non-Himem area for DMA.
http://git.linaro.org/gitweb?p=landing-teams/working/ti/kernel.git%3Ba=patch...
but your suggestion is more elegant. I'm unsure of the ramifications of the 2G / 2G scheme so I'll give it a try later.
CMA is looking like it's going to be very cool... the camera driver wanted a 10MB allocation and before CMA patches, it looked intractably stuck with 2MB max... afterwards, no problemo.
-Andy