This is an automated email from the ASF dual-hosted git repository. xiaoxiang pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/nuttx.git
commit 7dfc62bac5b7a0238356c7eac26c13243fdf9291 Author: Bowen Wang <[email protected]> AuthorDate: Mon Jan 5 14:49:20 2026 +0800 qemuv7a/v8a-rpserver/proxy: remove "_ivshmem" suffix and update documents Now the qemu-armv7a:rpserver_ivshmem, qemu-armv7a:rpproxy_ivshmem and qemu-armv8a:rpserver_ivshmem, qemu-armv8a:rpproxy_ivshmem are not only based on the ivshmem device but also the virtio-serial, so remove the "_ivshmem" suffix and update documents. Signed-off-by: Bowen Wang <[email protected]> --- .../arm/qemu/boards/qemu-armv7a/index.rst | 24 ++++++++++--------- .../arm64/qemu/boards/qemu-armv8a/index.rst | 27 ++++++++++++---------- .../configs/{rpproxy_ivshmem => rpproxy}/defconfig | 0 .../{rpserver_ivshmem => rpserver}/defconfig | 0 .../configs/{rpproxy_ivshmem => rpproxy}/defconfig | 0 .../{rpserver_ivshmem => rpserver}/defconfig | 0 6 files changed, 28 insertions(+), 23 deletions(-) diff --git a/Documentation/platforms/arm/qemu/boards/qemu-armv7a/index.rst b/Documentation/platforms/arm/qemu/boards/qemu-armv7a/index.rst index 7937d788c59..073b55a8c73 100644 --- a/Documentation/platforms/arm/qemu/boards/qemu-armv7a/index.rst +++ b/Documentation/platforms/arm/qemu/boards/qemu-armv7a/index.rst @@ -71,33 +71,35 @@ ACRN hypervisor but won't work with Jailhouse hypervisor which uses ``ivshmem-v2 Please refer to the official `Qemu ivshmem documentation <https://www.qemu.org/docs/master/system/devices/ivshmem.html>`_ for more information. -This is an example implementation for OpenAMP based on the Inter-VM share memory(ivshmem):: +This is an example implementation for OpenAMP that supports multiple transport +mechanisms including Inter-VM shared memory (ivshmem) and RPMSG port UART:: - rpproxy_ivshmem: Remote slave(client) proxy process. - rpserver_ivshmem: Remote master(host) server process. + rpproxy: Remote slave(client) proxy process. + rpserver: Remote master(host) server process. -Steps for Using NuttX as IVSHMEM host and guest +Steps for Using NuttX as OpenAMP host and guest 1. Build images - a. Build rpserver_ivshmem:: + a. Build rpserver:: - $ cmake -B server -DBOARD_CONFIG=qemu-armv7a:rpserver_ivshmem -GNinja + $ cmake -B server -DBOARD_CONFIG=qemu-armv7a:rpserver -GNinja $ cmake --build server - b. Build rpproxy_ivshmem:: + b. Build rpproxy:: - $ cmake -B proxy -DBOARD_CONFIG=qemu-armv7a:rpproxy_ivshmem -GNinja + $ cmake -B proxy -DBOARD_CONFIG=qemu-armv7a:rpproxy -GNinja $ cmake --build proxy 2. Bringup firmware via Qemu: - The Inter-VM Shared Memory device basic syntax is:: + The configuration supports both ivshmem and RPMSG port UART transports. + For ivshmem, use the following device syntax:: -device ivshmem-plain,id=shmem0,memdev=shmmem-shmem0,addr=0xb \ -object memory-backend-file,id=shmmem-shmem0,mem-path=/dev/shm/ivshmem0,size=4194304,share=yes - a. Start rpserver_ivshmem:: + a. Start rpserver:: $ qemu-system-arm -cpu cortex-a7 -nographic -machine virt,highmem=off \ -object memory-backend-file,id=shmmem-shmem0,mem-path=/dev/shm/ivshmem0,size=4194304,share=yes \ @@ -107,7 +109,7 @@ Steps for Using NuttX as IVSHMEM host and guest -device virtconsole,chardev=foo \ -kernel server/nuttx -nographic - b. Start rpproxy_ivshmem:: + b. Start rpproxy:: $ qemu-system-arm -cpu cortex-a7 -nographic -machine virt,highmem=off \ -object memory-backend-file,discard-data=on,id=shmmem-shmem0,mem-path=/dev/shm/ivshmem0,size=4194304,share=yes \ diff --git a/Documentation/platforms/arm64/qemu/boards/qemu-armv8a/index.rst b/Documentation/platforms/arm64/qemu/boards/qemu-armv8a/index.rst index e46b0238f09..30179d6b81d 100644 --- a/Documentation/platforms/arm64/qemu/boards/qemu-armv8a/index.rst +++ b/Documentation/platforms/arm64/qemu/boards/qemu-armv8a/index.rst @@ -413,38 +413,41 @@ hypervisor but won't work with Jailhouse hypervisor which uses ``ivshmem-v2``. Please refer to the official `Qemu ivshmem documentation <https://www.qemu.org/docs/master/system/devices/ivshmem.html>`_ for more information. -This is an example implementation for OpenAMP based on the Inter-VM share -memory(ivshmem):: +This is an example implementation for OpenAMP that supports multiple transport +mechanisms including Inter-VM shared memory (ivshmem) and RPMSG port UART:: - rpproxy_ivshmem: Remote slave(client) proxy process. - rpserver_ivshmem: Remote master(host) server process. + rpproxy: Remote slave(client) proxy process. + rpserver: Remote master(host) server process. -Steps for Using NuttX as IVSHMEM host and guest +Steps for Using NuttX as OpenAMP host and guest 1. Build images - a. Build ``rpserver_ivshmem`` + a. Build ``rpserver`` .. code:: console - $ cmake -B server -DBOARD_CONFIG=qemu-armv8a:rpserver_ivshmem -GNinja + $ cmake -B server -DBOARD_CONFIG=qemu-armv8a:rpserver -GNinja $ cmake --build server - b. Build ``rpproxy_ivshmem`` + b. Build ``rpproxy`` .. code:: console - $ cmake -B proxy -DBOARD_CONFIG=qemu-armv8a:rpproxy_ivshmem -GNinja + $ cmake -B proxy -DBOARD_CONFIG=qemu-armv8a:rpproxy -GNinja $ cmake --build proxy 2. Bringup firmware via Qemu: - The Inter-VM Shared Memory device basic syntax is:: + The configuration supports both ivshmem and RPMSG port UART transports. + For ivshmem, use the following device syntax:: -device ivshmem-plain,id=shmem0,memdev=shmmem-shmem0,addr=0xb \ -object memory-backend-file,id=shmmem-shmem0,mem-path=/dev/shm/ivshmem0,size=4194304,share=yes - a. Start ``rpserver_ivshmem`` + For RPMSG port UART, the virtconsole device is used as shown in the examples below. + + a. Start ``rpserver`` .. code:: console @@ -455,7 +458,7 @@ Steps for Using NuttX as IVSHMEM host and guest -chardev socket,path=/tmp/rpmsg_port_uart_socket,server=on,wait=off,id=foo \ -device virtconsole,chardev=foo - b. Start ``rpproxy_ivshmem`` + b. Start ``rpproxy`` .. code:: console diff --git a/boards/arm/qemu/qemu-armv7a/configs/rpproxy_ivshmem/defconfig b/boards/arm/qemu/qemu-armv7a/configs/rpproxy/defconfig similarity index 100% rename from boards/arm/qemu/qemu-armv7a/configs/rpproxy_ivshmem/defconfig rename to boards/arm/qemu/qemu-armv7a/configs/rpproxy/defconfig diff --git a/boards/arm/qemu/qemu-armv7a/configs/rpserver_ivshmem/defconfig b/boards/arm/qemu/qemu-armv7a/configs/rpserver/defconfig similarity index 100% rename from boards/arm/qemu/qemu-armv7a/configs/rpserver_ivshmem/defconfig rename to boards/arm/qemu/qemu-armv7a/configs/rpserver/defconfig diff --git a/boards/arm64/qemu/qemu-armv8a/configs/rpproxy_ivshmem/defconfig b/boards/arm64/qemu/qemu-armv8a/configs/rpproxy/defconfig similarity index 100% rename from boards/arm64/qemu/qemu-armv8a/configs/rpproxy_ivshmem/defconfig rename to boards/arm64/qemu/qemu-armv8a/configs/rpproxy/defconfig diff --git a/boards/arm64/qemu/qemu-armv8a/configs/rpserver_ivshmem/defconfig b/boards/arm64/qemu/qemu-armv8a/configs/rpserver/defconfig similarity index 100% rename from boards/arm64/qemu/qemu-armv8a/configs/rpserver_ivshmem/defconfig rename to boards/arm64/qemu/qemu-armv8a/configs/rpserver/defconfig
