On 07/30/2013 01:46 PM, Geert Uytterhoeven wrote:
linux-embed...@vger.kernel.org

Hi Geert,

Thanks a lot for the pointer.

Astonishingly that list a a lot less busy than this here :-(

Just to let you (and others) know:

We found out that the idea I had (dedicating one of multiple CPUs in a chip for AMP-non-Linux use, while the other run SMP Linux) seems to be viable and doable, but seemingly not very widely supported by the Kernel developers.

You can easily exclude a dedicated CPU from SMP, but seemingly the scheduler might need some tweaking to prevent performance degrading. (I failed to understand why this should be the case.)

In fact dedicated AMP even is fully supported by ARM Cortex A9 hardware:
- The interrupt sources seemingly can be dynamically assigned to any core. So setting aside a core for AMP with dedicated interrupts for embedded Hardware should be no problem. - Each CPU features an "AMP" bit in a configuration register. With that the 1st level cache synchronization is switched off.

The cache synchronization would be the major latency risk imposed by the other processors to the dedicated AMP CPU. By switching it off, you can calculate the max latency by just considering the bus scheduling latency (besides the "local" issues). For communication between the Linux- and the AMP- systems you would need to use a non-cached memory region similar to DMA and of course Linux can't modify the other AMP's memory regions on the fly.

Thanks again,
-Michael
_______________________________________________
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to