Hello,
Below are considerations regarding the issue.
Usually SoC peripherals, allocate memory using dma_alloc_coherent() ;
this kernel function return contiguous memory area.
To preserve contiguous memory region :
$ echo 1 > /proc/sys/vm/lowmem_reserve_ratio
Setting the parameter in this way, the Kernel will prevent application and file
caching to fragment “too much” memory. However it will limit the amount of
memory that applications can allocate.
For Dropping Caches :
$ echo 3 > /proc/sys/vm/drop_caches
This will free all system caches, but this can impact other applications running
in the system, requiring them to load the files they use each time the caches
are dropped.
There are tools for avoiding file caching of a specific application like the
pagecache-management
https://code.google.com/p/pagecache-mangagement
This is an open source project not maintained and not supported by Freescale,
which could anyway help in the intent.
Have a great day,
Yuri
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------