All this code is meant to run on the remote processor application (not Linux)? And is to be used with the existing remoteproc/rpmsg drivers in current Linux kernels? And in the case of a Zynq-7000, specifically zynq_remoteproc?
I have FreeRTOS running with Linux in AMP configuration based on ug978. If I were to replace the remoteproc/rpmsg code in my FreeRTOS application with open-amp, would it be transparent to the Linux side (or would I have to modify something on the Linux side)? Are there any benefits to doing so right now?
Also, when I looked at open-amp in mid-2015, there was a document (from Mentor if I recall correctly) describing running an RTOS as the master and Linux as the slave. I no longer see this document and wondering if there are any current/planned developments into that kind of AMP configuration?
Thank you for your input.
OpenAMP implements the full vring and rpmsg. There is no much share buffer management
in the ug978 as it is just a demo to use the zynq remoteproc driver.
It is up to your application, with OpenAMP, you have richer features of vring/rpmsg, and you
can have community support. With ug978, the FreeRTOS side implementation is limited not
extendable but very simple.
> Also, when I looked at open-amp in mid-2015, there was a document (from
> Mentor if I recall correctly) describing running an RTOS as the master and Linux
> as the slave. I no longer see this document and wondering if there are any
> current/planned developments into that kind of AMP configuration?
[Wendy] The reason to remove the getting started guide to the repo is because it is tightly
Coupled to the specific version of PetaLinux as the first drop from Mentor is tested with that
version of PetaLinux. The OpenAMP reference guide is still in the
Repo: https://github.com/OpenAMP/open-amp/tree/master/docs
We have some vendor independent getting started document but need to improve.
If you are looking for new Zynq specific one, you can check here:
http://www.xilinx.com/support/documentation/sw_manuals/xilinx2016_2/ug1186-zynq-openamp-gsg.pdf
On Thursday, July 28, 2016 at 9:33:36 AM UTC-7, Jiaying Liang wrote:OpenAMP implements the full vring and rpmsg. There is no much share buffer management
in the ug978 as it is just a demo to use the zynq remoteproc driver.It is up to your application, with OpenAMP, you have richer features of vring/rpmsg, and you
can have community support. With ug978, the FreeRTOS side implementation is limited not
extendable but very simple.What are some examples of features that are missing from ug978 implementation? What is share buffer management?
> Also, when I looked at open-amp in mid-2015, there was a document (from
> Mentor if I recall correctly) describing running an RTOS as the master and Linux
> as the slave. I no longer see this document and wondering if there are any
> current/planned developments into that kind of AMP configuration?
[Wendy] The reason to remove the getting started guide to the repo is because it is tightly
Coupled to the specific version of PetaLinux as the first drop from Mentor is tested with that
version of PetaLinux. The OpenAMP reference guide is still in the
Repo: https://github.com/OpenAMP/open-amp/tree/master/docs
We have some vendor independent getting started document but need to improve.If you are looking for new Zynq specific one, you can check here:
http://www.xilinx.com/support/documentation/sw_manuals/xilinx2016_2/ug1186-zynq-openamp-gsg.pdfSo is there anything currently in the pipeline for RTOS master/Linux slave documentation or reference implementation?
On Fri, Jul 29, 2016 at 9:51 AM, <wendy...@xilinx.com> wrote:
> Flow in ug978 is no longer officially supported. rpmsg uses vring to
> management the shared buffers. OpenAMP vring
> implementation follows the virtio specification. ug978 doesn't have it.
> besides, OpenAMP implements RPMSG and remoteproc, ug978
> doesn't have this implementation, it just understand the RPMSG
> format.
Do you have suggestion for migrating from ug978 implementation to
OpenAMP? Should I use release 2016.04 of OpenAMP or is master much
better now? It seems I need to take the code under lib/ and remove
the machine specific files that don't apply to my system (Zynq), is
that the gist of it? I would be doing this in Xilinx SDK 2015.03.
Or alternatively, should I use the OpenAMP example application
templates that are in Xilinx SDK? What is relationship between the
OpenAMP application templates in Xilinx SDK and OpenAMP repo/releases?
The SDK templates don't seem to follow the code structure of the
OpenAMP repo (at least not in SDK 2015.03).