User:Uglybear/sandbox

OpenAMP (Open Asymmetric Multi Processing) is an open-source software framework which provides software components that simplify the development of software applications for AMP systems, and ease porting of those applications on different hardware environment. This is achieved by relying on the Linux remoteproc and rpmsg frameworks, allowing easy OS interaction between Linux and RTOS / bare-metal environments.

The framework provides the following key capabilities:
 * 1) Provides Life Cycle Management (loading, boot, shut-down) of remote compute resources and their associated software contexts, compatible with Linux remoteproc framework
 * 2) Inter OS/ Inter Processor Communication capabilities, compatible with Linux rpmsg framework
 * 3) Stand alone library usable with RTOS and bare-metal software environments, to communicate with Linux remote processor subsystem (remoteproc / rpmsg)
 * 4) Rely on shared memory protocol – Virtio/rpmsg
 * 5) Proxy technologies emulate Linux processes IOs on a remote processor

OpenAMP can be used to connect processors as well as to connect separate Virtualized environmen via their Trustzone.

Major solution and RTOS vendors such as Mentor or Micrium as well as major hardware vendors NXP and Xilinx are actively contributing to the project and/or providing their own customized implementation.

The Multicore Association (MCA) announced in January 2016 the formation of a group to help guide and standardize OpenAMP, supported by MCA members Express Logic, Mentor Graphics, Micrium, NXP, Wind River, and Xilinx.

Supported Hardware
System-On-Chip (SoC) with AMP architecture can take advantage of OpenAMP, e.g:
 * 1) NXP i.MX 6 SoloX processor
 * 2) Xilinx Zynq and ZynqMP Ultrascale MPSoC

History
Computer magazine LWN.net described the first generic AMP framework for Linux in October 2011

The GitHUB OpenAMP project initial commit seems to originate around October 2014

The Multicore Association (MCA) announced in January 2016 the formation of a group to help guide and standardize OpenAMP.

License
The OpenAMP project is released as open-source software and is available under BSD license.