|
Name |
|
Date |
Size |
#Lines |
LOC |
| .. | | - | - |
| README.md | D | 11-Mar-2024 | 2.6 KiB | 59 | 43 |
README.md
1
2# echo_test
3This readme is about the OpenAMP echo_test demo.
4The echo_test is about one processor sends message to the other one, and the other one echo back the message. The processor which sends the message will verify the echo message.
5
6For now, it implements Linux sends the message, and the baremetal echos back.
7
8## Compilation
9
10### Baremetal Compilation
11Option `WITH_ECHO_TEST` is to control if the application will be built.
12By default this option is `ON` when `WITH_APPS` is on.
13
14Here is an example:
15
16```
17$ cmake ../open-amp -DCMAKE_TOOLCHAIN_FILE=zynq7_generic -DWITH_OBSOLETE=on -DWITH_APPS=ON
18```
19
20### Linux Compilation
21
22#### Linux Kernel Compilation
23You will need to manually compile the following kernel modules with your Linux kernel (Please refer to Linux kernel documents for how to add kernel module):
24
25* Your machine's remoteproc kernel driver
26* `obsolete/apps/echo_test/system/linux/kernelspace/rpmsg_user_dev_driver` if you want to run the echo_test app in Linux user space.
27* `obsolete/system/linux/kernelspace/rpmsg_echo_test_kern_app` if you want to run the echo_test app in Linux kernel space.
28
29#### Linux Userspace Compliation
30* Compile `obsolete/apps/echo_test/system/linux/userspace/echo_test` into your Linux OS.
31* If you are running generic(baremetal) system as remoteproc remote, and Linux as remoteproc host, please also add the built generic `echo_test` executable to the firmware of your Linux OS.
32
33## Run the Demo
34
35### Load the Demo
36After Linux boots,
37* Load the machine remoteproc. If Linux runs as remoteproc host, you will need to pass the other processor's echo_test binary as firmware argument to the remoteproc module.
38* If you run the Linux kernel application demo, load the `rpmsg_echo_test_kern_app` module. You will see the kernel application send the message to remote and the remote reply back and the kernel application will verify the result.
39* If you run the userspace application demo, load the `rpmsg_user_dev_driver` module.
40* If you run the userspace application demo, you will see the similar output on the console:
41```
42****************************************
43 Please enter command and press enter key
44 ****************************************
45 1 - Send data to remote core, retrieve the echo and validate its integrity ..
46 2 - Quit this application ..
47 CMD>
48```
49* Input `1` to send packages.
50* Input `2` to exit the application.
51
52After you run the demo, you will need to unload the kernel modules.
53
54### Unload the Demo
55* If you run the userspace application demo, unload the `rpmsg_user_dev_driver` module.
56* If you run the kernelspace application demo, unload the `rpmsg_echo_test_kern_app` module.
57* Unload the machine remoteproc driver.
58
59