UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Visitor kdpatinos
Visitor
473 Views
Registered: ‎03-15-2017

OpenAMP Framework

I have been working in order to understand and run the OpenAMP example.  I am following: https://www.xilinx.com/support/documentation/sw_manuals/xilinx2017_1/ug1186-zynq-openamp-gsg.pdf. I am using the las peta-linux and vivado  2019.1.

Some of the steps seem to be deprecated.

For example:

- Enable userspace firmware loading support:

Device Drivers --->Generic Driver Options ---><*> Userspace firmware loading support

This configuration is not shown in the configuration menu:

 

Screenshot from 2019-06-17 15-36-13.png

- Ensure the OpenAMP applications and rpmsg modules are enabled:

Filesystem Packages ---> misc ---> packagegroup-petalinux-openamp ---> [*] packagegroup-petalinux-openampNote:packagegroup-petalinux-openamp

enables many openamp related sub-components. If you need more fine-grained control, do not set this packagegroup. Instead, enable the following individual components as needed:

rpmsg-echo-test, rpmsg-mat-mul, rpmsg-proxy-app, rpmsg-proxy-module, rpmsg-user-module

In the configuration menu again these options were not shown.

Finally, I got the following issue when I try to run the echo_example:

root@DBS:~# echo image_echo_test > /sys/class/remoteproc/remoteproc0/firmware
root@DBS:~# echo start > /sys/class/remoteproc/remoteproc0/state
remoteproc remoteproc0: powering up remoteproc@0
remoteproc remoteproc0: Booting fw image image_echo_test, size 2684984
remoteproc remoteproc0: bad phdr da 0x3e000000 mem 0x1aa74
remoteproc remoteproc0: Failed to load program segments: -22
remoteproc remoteproc0: Boot failed: -22
-sh: echo: write error: Invalid argument

 

Thank You I appreciate any insight.

Kevin Patino
0 Kudos
3 Replies
Moderator
Moderator
424 Views
Registered: ‎05-10-2017

Re: OpenAMP Framework

Hi Kevin,

Please use the latest document we have for 2019.1 along with the tools you are using

https://www.xilinx.com/support/documentation/sw_manuals/xilinx2019_1/ug1186-zynq-openamp-gsg.pdf

 

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
Visitor andrewmwdi
Visitor
371 Views
Registered: ‎06-25-2019

Re: OpenAMP Framework

That version of the  doc "UG1186 (v2019.1) May 22, 2019"  *is* the problem.

Highlighted
Visitor kdpatinos
Visitor
220 Views
Registered: ‎03-15-2017

Re: OpenAMP Framework

Hello!

I fix that issue, If you are working with other boards you need to be sure and config the dtsi file with the propper RAM information, also you need to change the linker script in the baremetal application.

 

However, Now I got another issue in the baremetal application example. let me show you the logs.

```

remoteproc remoteproc0: powering up remoteproc@0
remoteproc remoteproc0: Booting fw image openamp.elf, size 2703804
Starting application...
Successfully intialize remoteproc.
Initialize remoteproc successfully.
creating remoteproc virtio
virtio_rpmsg_buinitializing rpmsg vdev
initializing rpmsg vdev
Try to create rpmsg endpoint.0
Size of Data = 40, status = 7 , err_flag: 4
Avail_size = 496 1
Data = 0 488695288 , Len = 488695276 488695280
Pointer to buff = 0, tick_count = 15000
ERROR: Failed to create endpoint. : -2005
Stopping application...
remoteproc remoteproc0: registered virt)
remoteproc remoteproc0: remote processor remoteproc@0 is now up
```

 

As you can see the error ERROR: Failed to create endpoint. : -2005 . I have added  aditional information in the logs and the error seems to be realtedwith the virtio size buffer.

 

Could you give any advice how to fix that error?

 

I appreciate your help. Just in case I am working with a PYNQ board and the echo example. I have attached my dtsi file, linker script and example configuration file.

 

Kevin

Kevin Patino
0 Kudos