Add echo_test demo README.
authorWendy Liang <jliang@xilinx.com>
Sat, 2 Jan 2016 06:03:43 +0000 (22:03 -0800)
committerWendy Liang <jliang@xilinx.com>
Tue, 9 Feb 2016 19:55:46 +0000 (11:55 -0800)
Provide a description on how to use the echo_test demo.

Signed-off-by: Wendy Liang <jliang@xilinx.com>
docs/apps/echo_test/README.md [new file with mode: 0644]

diff --git a/docs/apps/echo_test/README.md b/docs/apps/echo_test/README.md
new file mode 100644 (file)
index 0000000..a004bbf
--- /dev/null
@@ -0,0 +1,58 @@
+
+# echo_test
+This readme is about the OpenAMP echo_test demo.
+The 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.
+
+For now, it implements Linux sends the message, and the baremetal echos back.
+
+## Compilation
+
+### Baremetal Compilation
+Option `WITH_ECHO_TEST` is to control if the application will be built.
+By default this option is `ON` when `WITH_APPS` is on.
+
+Here is an example:
+
+```
+$ cmake ../open-amp -DCMAKE_TOOLCHAIN_FILE=zynq7_generic -DWITH_OBSOLETE=on -DWITH_APPS=ON
+```
+
+### Linux Compilation
+
+#### Linux Kernel Compilation
+You 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):
+
+* Your machine's remoteproc kernel driver
+* `obsolete/apps/echo_test/system/linux/kernelspace/rpmsg_user_dev_driver` if you want to run the echo_test app in Linux user space.
+* `obsolete/system/linux/kernelspace/rpmsg_echo_test_kern_app` if you want to run the echo_test app in Linux kernel space.
+
+#### Linux Userspace Compliation
+* Compile `obsolete/apps/echo_test/system/linux/userspace/echo_test` into your Linux OS.
+* If you are running generic(baremetal) system as remoteproc slave, and Linux as remoteproc master, please also add the built generic `echo_test` executable to the firmware of your Linux OS.
+
+## Run the Demo
+
+### Load the Demo
+After Linux boots,
+* Load the machine remoteproc. If Linux runs as remoteproc master, you will need to pass the other processor's echo_test binary as firmware arguement to the remoteproc module.
+* 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.
+* If you run the userspace application demo, load the `rpmsg_user_dev_driver` module.
+* If you run the userspace application demo, you will see the similar output on the console:
+```
+****************************************
+ Please enter command and press enter key
+ ****************************************
+ 1 - Send data to remote core, retrieve the echo and validate its integrity ..
+ 2 - Quit this application ..
+ CMD>
+```
+* Input `1` to send packages.
+* Input `2` to exit the application.
+
+After you run the demo, you will need to unload the kernel modules.
+
+### Unload the Demo
+* If you run the userspace application demo, unload the `rpmsg_user_dev_driver` module.
+* If you run the kernelspace application demo, unload the `rpmsg_echo_test_kern_app` module.
+* Unload the machine remoteproc driver.
+