Changes

Jump to: navigation, search
Example #2: RPMsg-based application
====Example #2: RPMsg-based application====
As stated before, this example shows a more sophisticated approach that allows for:
* using a standardized communication channel between the two cores(RPMsg)
* exploiting a standardized mechanism to load the firmware of second core.
This approach determines a different initialization process with respect to example #1. In this case the initialization sequence is:
#linux kernel boots, enabling and using both cores
#RPMsg and virtio drivers (compiled as modules) are loaded
#core #2 is released
#FreeRTOS binary image is loaded
#core #2 is started.
In other words, boot process of core #2 is under the control of the Linux o.s. In principle this allows a dynamic use of the core #2 that can be allocated for FreeRTOS application only when it is actually needed.
 
The example performs IRQ latency measurements on FreeRTOS side by using a hardware timer. These measures are collected by the counterpart application running on Linux side and shown on console. Plese follow the steps listed below:
* Place all the binary files into the host tftp directory:
4,650
edits

Navigation menu