AMP  Version 1.0.0
Asymmetric Multiprocessing
 All Files Pages
RPMsg-Lite

According to the RPMsg-Lite User's Guide, RPMsg-Lite is a "lightweight implementation of the Remote Processor Messaging (RPMsg) protocol. The RPMsg protocol defines a standardized binary interface used to communicate between multiple cores in a heterogeneous multicore system"

The complete documentation, together with the API description is available from the above mentioned GitHub repository.

Usage

This section describes what you need to do to enable communication via RPMsg-Lite in both cores.

Linux

The board support pages available on keil.com/mdk5/ds-mdk/install explain how to add the required modules to your Linux kernel. You need to have the RPMSG_MULTIENDPOINT module and Python (for the example) installed.

RTOS/bare-metal

Create a Cortex-M project with DS-MDK as described in the Getting Started Guide.

You need to add the software component ::AMP:RPMSG in its RPMsg-Lite variant:

comp_sel_rpmsg-lite.png
Select ::AMP:RPMSG RPMsg-Lite variant

Write your application using the RPMsg-Lite API that is available in the RPMsg-Lite User's Guide.

Example projects

Example projects using the RPMsg-Lite framework are already available in the device family pack of the following devices:

For proper operation, you need:

  • the example.py Python script
  • a bare-metal or RTOS application running on the Cortex-M class processor called either "RPMSG-Lite CMSIS-RTOS"
rpmsg-lite_examples.png

The applications are available for a wide range of supporting development boards. Please consult the documentation of the device family packs for more information on the examples.