* [Buildroot] [PATCH v2 0/2] new packages: rpmsg-utils and rpmsg-echo-test
@ 2026-02-08 17:36 Vincent Jardin via buildroot
2026-02-08 17:36 ` [Buildroot] [PATCH v2 1/2] package/rpmsg-utils: new package Vincent Jardin via buildroot
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Vincent Jardin via buildroot @ 2026-02-08 17:36 UTC (permalink / raw)
To: buildroot; +Cc: Romain Naour, Vincent Jardin
Add two new packages from the OpenAMP system reference examples [1]:
rpmsg-utils and rpmsg-echo-test.
Both packages share the same upstream repository and download tarball
(via _DL_SUBDIR = openamp-system-reference), but build from separate
subdirectories (examples/linux/rpmsg-utils and
examples/linux/rpmsg-echo-test respectively) and install distinct
binaries.
As Romain noted, the runtime test setup would require a remoteproc
running in QEMU together with a baremetal/RTOS firmware on the remote
core, which is complex to achieve at this stage. Keeping both as
regular packages for now is the simplest path; a runtime test can be
added later once the QEMU + remoteproc infrastructure will be in place.
[1] https://github.com/OpenAMP/openamp-system-reference
Changes v1 -> v2:
- split into a 2-patch series: rpmsg-utils (new, patch 1/2) and
rpmsg-echo-test (patch 2/2)
- both packages share the same source tarball using _DL_SUBDIR
- fix rpmsg-utils hash filename to match the auto-derived
download name
Vincent Jardin (2):
package/rpmsg-utils: new package
package/rpmsg-echo-test: new package
DEVELOPERS | 2 +
package/Config.in | 2 +
package/rpmsg-echo-test/Config.in | 17 ++++++++
package/rpmsg-echo-test/rpmsg-echo-test.hash | 3 ++
package/rpmsg-echo-test/rpmsg-echo-test.mk | 36 ++++++++++++++++
package/rpmsg-utils/Config.in | 17 ++++++++
package/rpmsg-utils/rpmsg-utils.hash | 4 ++
package/rpmsg-utils/rpmsg-utils.mk | 45 ++++++++++++++++++++
8 files changed, 126 insertions(+)
create mode 100644 package/rpmsg-echo-test/Config.in
create mode 100644 package/rpmsg-echo-test/rpmsg-echo-test.hash
create mode 100644 package/rpmsg-echo-test/rpmsg-echo-test.mk
create mode 100644 package/rpmsg-utils/Config.in
create mode 100644 package/rpmsg-utils/rpmsg-utils.hash
create mode 100644 package/rpmsg-utils/rpmsg-utils.mk
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH v2 1/2] package/rpmsg-utils: new package
2026-02-08 17:36 [Buildroot] [PATCH v2 0/2] new packages: rpmsg-utils and rpmsg-echo-test Vincent Jardin via buildroot
@ 2026-02-08 17:36 ` Vincent Jardin via buildroot
2026-02-08 17:36 ` [Buildroot] [PATCH v2 2/2] package/rpmsg-echo-test: " Vincent Jardin via buildroot
2026-02-08 17:41 ` [Buildroot] [PATCH v2 0/2] new packages: rpmsg-utils and rpmsg-echo-test Vincent Jardin via buildroot
2 siblings, 0 replies; 4+ messages in thread
From: Vincent Jardin via buildroot @ 2026-02-08 17:36 UTC (permalink / raw)
To: buildroot; +Cc: Romain Naour, Vincent Jardin
rpmsg-utils provides user-space utilities for the Linux RPMsg character
driver from the OpenAMP system reference. It includes tools for managing
RPMsg communication channels with remote processors: rpmsg_export_dev,
rpmsg_export_ept, rpmsg_destroy_ept, and rpmsg_ping.
Signed-off-by: Vincent Jardin <vjardin@free.fr>
---
DEVELOPERS | 1 +
package/Config.in | 1 +
package/rpmsg-utils/Config.in | 17 +++++++++++
package/rpmsg-utils/rpmsg-utils.hash | 4 +++
package/rpmsg-utils/rpmsg-utils.mk | 45 ++++++++++++++++++++++++++++
5 files changed, 68 insertions(+)
create mode 100644 package/rpmsg-utils/Config.in
create mode 100644 package/rpmsg-utils/rpmsg-utils.hash
create mode 100644 package/rpmsg-utils/rpmsg-utils.mk
diff --git a/DEVELOPERS b/DEVELOPERS
index 225d1ac917..79581cae66 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -3357,6 +3357,7 @@ F: package/bfscripts/
F: package/dpdk/
F: package/libecoli/
F: package/libyang-cpp/
+F: package/rpmsg-utils/
F: package/sysrepo-cpp/
N: Vincent Prince <vincent.prince.fr@gmail.com>
diff --git a/package/Config.in b/package/Config.in
index 8346ef1a0e..1ccd7f320f 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -587,6 +587,7 @@ endmenu
source "package/rng-tools/Config.in"
source "package/rockchip-mali/Config.in"
source "package/rockchip-rkbin/Config.in"
+ source "package/rpmsg-utils/Config.in"
source "package/rs485conf/Config.in"
source "package/rtc-tools/Config.in"
source "package/rtl8188eu/Config.in"
diff --git a/package/rpmsg-utils/Config.in b/package/rpmsg-utils/Config.in
new file mode 100644
index 0000000000..e801c5695f
--- /dev/null
+++ b/package/rpmsg-utils/Config.in
@@ -0,0 +1,17 @@
+config BR2_PACKAGE_RPMSG_UTILS
+ bool "rpmsg-utils"
+ depends on BR2_USE_MMU # Linux userspace
+ help
+ User-space utilities for the Linux RPMsg character driver,
+ from the OpenAMP system reference examples.
+
+ Installs:
+ - rpmsg_export_dev
+ - rpmsg_export_ept
+ - rpmsg_destroy_ept
+ - rpmsg_ping
+
+ These tools operate on /dev/rpmsg_ctrlX and /dev/rpmsgX
+ devices provided by the Linux RPMsg framework.
+
+ https://github.com/OpenAMP/openamp-system-reference
diff --git a/package/rpmsg-utils/rpmsg-utils.hash b/package/rpmsg-utils/rpmsg-utils.hash
new file mode 100644
index 0000000000..bd4f88a78b
--- /dev/null
+++ b/package/rpmsg-utils/rpmsg-utils.hash
@@ -0,0 +1,4 @@
+# Locally computed
+sha256 8059fbde74f726efd778f1393e75f5b554871ea8a9f51278912838ea414031ca rpmsg-utils-v2025.04.0.tar.gz
+sha256 62345788a019596360c7f4e4026278cc84754de6beafac82ea0de0647b23c6ed LICENSE.md
+sha256 5907fa1cd899be6bd9696603a1d7c671c34dc993436e5f4acf69c78e1fa2e988 examples/linux/rpmsg-utils/LICENSE
diff --git a/package/rpmsg-utils/rpmsg-utils.mk b/package/rpmsg-utils/rpmsg-utils.mk
new file mode 100644
index 0000000000..f40fa9f980
--- /dev/null
+++ b/package/rpmsg-utils/rpmsg-utils.mk
@@ -0,0 +1,45 @@
+################################################################################
+#
+# rpmsg-utils
+#
+################################################################################
+
+RPMSG_UTILS_VERSION = v2025.04.0
+RPMSG_UTILS_SITE = $(call github,OpenAMP,openamp-system-reference,$(RPMSG_UTILS_VERSION))
+RPMSG_UTILS_SUBDIR = examples/linux/rpmsg-utils
+RPMSG_UTILS_DL_SUBDIR = openamp-system-reference
+
+RPMSG_UTILS_LICENSE = BSD-3-Clause
+RPMSG_UTILS_LICENSE_FILES = LICENSE.md $(RPMSG_UTILS_SUBDIR)/LICENSE
+
+define RPMSG_UTILS_BUILD_CMDS
+ $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/$(RPMSG_UTILS_SUBDIR) \
+ CC="$(TARGET_CC)" \
+ LD="$(TARGET_LD)" \
+ CFLAGS="$(TARGET_CFLAGS)" \
+ LDFLAGS="$(TARGET_LDFLAGS)"
+endef
+
+define RPMSG_UTILS_INSTALL_TARGET_CMDS
+ $(INSTALL) -D -m 0755 \
+ $(@D)/$(RPMSG_UTILS_SUBDIR)/rpmsg_export_dev \
+ $(TARGET_DIR)/usr/bin/rpmsg_export_dev
+ $(INSTALL) -D -m 0755 \
+ $(@D)/$(RPMSG_UTILS_SUBDIR)/rpmsg_export_ept \
+ $(TARGET_DIR)/usr/bin/rpmsg_export_ept
+ $(INSTALL) -D -m 0755 \
+ $(@D)/$(RPMSG_UTILS_SUBDIR)/rpmsg_destroy_ept \
+ $(TARGET_DIR)/usr/bin/rpmsg_destroy_ept
+ $(INSTALL) -D -m 0755 \
+ $(@D)/$(RPMSG_UTILS_SUBDIR)/rpmsg_ping \
+ $(TARGET_DIR)/usr/bin/rpmsg_ping
+endef
+
+define RPMSG_UTILS_LINUX_CONFIG_FIXUPS
+ $(call KCONFIG_ENABLE_OPT,CONFIG_RPMSG)
+ $(call KCONFIG_ENABLE_OPT,CONFIG_RPMSG_CHAR)
+ $(call KCONFIG_ENABLE_OPT,CONFIG_RPMSG_CTRL)
+ $(call KCONFIG_ENABLE_OPT,CONFIG_RPMSG_VIRTIO)
+endef
+
+$(eval $(generic-package))
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH v2 2/2] package/rpmsg-echo-test: new package
2026-02-08 17:36 [Buildroot] [PATCH v2 0/2] new packages: rpmsg-utils and rpmsg-echo-test Vincent Jardin via buildroot
2026-02-08 17:36 ` [Buildroot] [PATCH v2 1/2] package/rpmsg-utils: new package Vincent Jardin via buildroot
@ 2026-02-08 17:36 ` Vincent Jardin via buildroot
2026-02-08 17:41 ` [Buildroot] [PATCH v2 0/2] new packages: rpmsg-utils and rpmsg-echo-test Vincent Jardin via buildroot
2 siblings, 0 replies; 4+ messages in thread
From: Vincent Jardin via buildroot @ 2026-02-08 17:36 UTC (permalink / raw)
To: buildroot; +Cc: Romain Naour, Vincent Jardin
Linux userspace RPMsg echo_test demo from the OpenAMP system
reference examples. This application uses the Linux kernel RPMsg
framework to send buffers to a remote processor and verify the
echoed data.
Requires kernel headers >= 4.11 for linux/rpmsg.h.
Signed-off-by: Vincent Jardin <vjardin@free.fr>
---
DEVELOPERS | 1 +
package/Config.in | 1 +
package/rpmsg-echo-test/Config.in | 17 +++++++++
package/rpmsg-echo-test/rpmsg-echo-test.hash | 3 ++
package/rpmsg-echo-test/rpmsg-echo-test.mk | 36 ++++++++++++++++++++
5 files changed, 58 insertions(+)
create mode 100644 package/rpmsg-echo-test/Config.in
create mode 100644 package/rpmsg-echo-test/rpmsg-echo-test.hash
create mode 100644 package/rpmsg-echo-test/rpmsg-echo-test.mk
diff --git a/DEVELOPERS b/DEVELOPERS
index 79581cae66..8e80212776 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -3357,6 +3357,7 @@ F: package/bfscripts/
F: package/dpdk/
F: package/libecoli/
F: package/libyang-cpp/
+F: package/rpmsg-echo-test/
F: package/rpmsg-utils/
F: package/sysrepo-cpp/
diff --git a/package/Config.in b/package/Config.in
index 1ccd7f320f..ef1c979bc2 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -587,6 +587,7 @@ endmenu
source "package/rng-tools/Config.in"
source "package/rockchip-mali/Config.in"
source "package/rockchip-rkbin/Config.in"
+ source "package/rpmsg-echo-test/Config.in"
source "package/rpmsg-utils/Config.in"
source "package/rs485conf/Config.in"
source "package/rtc-tools/Config.in"
diff --git a/package/rpmsg-echo-test/Config.in b/package/rpmsg-echo-test/Config.in
new file mode 100644
index 0000000000..32f3d37156
--- /dev/null
+++ b/package/rpmsg-echo-test/Config.in
@@ -0,0 +1,17 @@
+config BR2_PACKAGE_RPMSG_ECHO_TEST
+ bool "rpmsg-echo-test"
+ depends on BR2_USE_MMU # Linux userspace only
+ depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_11 # linux/rpmsg.h
+ help
+ Linux userspace RPMsg echo_test demo from the OpenAMP
+ system reference examples.
+
+ This application uses the Linux kernel RPMsg framework
+ to send buffers to a remote processor and verify the
+ echoed data (see "echo_test" demo in the OpenAMP docs).
+
+ https://github.com/OpenAMP/openamp-system-reference
+
+comment "rpmsg-echo-test needs a toolchain w/ kernel headers >= 4.11"
+ depends on BR2_USE_MMU
+ depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_11
diff --git a/package/rpmsg-echo-test/rpmsg-echo-test.hash b/package/rpmsg-echo-test/rpmsg-echo-test.hash
new file mode 100644
index 0000000000..41f8ca4bf8
--- /dev/null
+++ b/package/rpmsg-echo-test/rpmsg-echo-test.hash
@@ -0,0 +1,3 @@
+# Locally computed
+sha256 8059fbde74f726efd778f1393e75f5b554871ea8a9f51278912838ea414031ca rpmsg-echo-test-v2025.04.0.tar.gz
+sha256 62345788a019596360c7f4e4026278cc84754de6beafac82ea0de0647b23c6ed LICENSE.md
diff --git a/package/rpmsg-echo-test/rpmsg-echo-test.mk b/package/rpmsg-echo-test/rpmsg-echo-test.mk
new file mode 100644
index 0000000000..051ad4be2b
--- /dev/null
+++ b/package/rpmsg-echo-test/rpmsg-echo-test.mk
@@ -0,0 +1,36 @@
+################################################################################
+#
+# rpmsg-echo-test
+#
+################################################################################
+
+RPMSG_ECHO_TEST_VERSION = v2025.04.0
+RPMSG_ECHO_TEST_SITE = $(call github,OpenAMP,openamp-system-reference,$(RPMSG_ECHO_TEST_VERSION))
+RPMSG_ECHO_TEST_SUBDIR = examples/linux/rpmsg-echo-test
+RPMSG_ECHO_TEST_DL_SUBDIR = openamp-system-reference
+
+RPMSG_ECHO_TEST_LICENSE = BSD-3-Clause
+RPMSG_ECHO_TEST_LICENSE_FILES = LICENSE.md
+
+define RPMSG_ECHO_TEST_BUILD_CMDS
+ $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/$(RPMSG_ECHO_TEST_SUBDIR) \
+ CC="$(TARGET_CC)" \
+ LD="$(TARGET_LD)" \
+ CFLAGS="$(TARGET_CFLAGS)" \
+ LDFLAGS="$(TARGET_LDFLAGS)"
+endef
+
+define RPMSG_ECHO_TEST_INSTALL_TARGET_CMDS
+ $(INSTALL) -D -m 0755 \
+ $(@D)/$(RPMSG_ECHO_TEST_SUBDIR)/echo_test \
+ $(TARGET_DIR)/usr/bin/echo_test
+endef
+
+define RPMSG_ECHO_TEST_LINUX_CONFIG_FIXUPS
+ $(call KCONFIG_ENABLE_OPT,CONFIG_RPMSG)
+ $(call KCONFIG_ENABLE_OPT,CONFIG_RPMSG_CHAR)
+ $(call KCONFIG_ENABLE_OPT,CONFIG_RPMSG_CTRL)
+ $(call KCONFIG_ENABLE_OPT,CONFIG_RPMSG_VIRTIO)
+endef
+
+$(eval $(generic-package))
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [Buildroot] [PATCH v2 0/2] new packages: rpmsg-utils and rpmsg-echo-test
2026-02-08 17:36 [Buildroot] [PATCH v2 0/2] new packages: rpmsg-utils and rpmsg-echo-test Vincent Jardin via buildroot
2026-02-08 17:36 ` [Buildroot] [PATCH v2 1/2] package/rpmsg-utils: new package Vincent Jardin via buildroot
2026-02-08 17:36 ` [Buildroot] [PATCH v2 2/2] package/rpmsg-echo-test: " Vincent Jardin via buildroot
@ 2026-02-08 17:41 ` Vincent Jardin via buildroot
2 siblings, 0 replies; 4+ messages in thread
From: Vincent Jardin via buildroot @ 2026-02-08 17:41 UTC (permalink / raw)
To: buildroot; +Cc: Romain Naour
Hi,
> Add two new packages from the OpenAMP system reference examples [1]:
> rpmsg-utils and rpmsg-echo-test.
The gitlab CI on this serie is avaiable at:
https://gitlab.com/vjardin/buildroot/-/pipelines/2312959013
best regards,
Vincent
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-02-08 17:41 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-08 17:36 [Buildroot] [PATCH v2 0/2] new packages: rpmsg-utils and rpmsg-echo-test Vincent Jardin via buildroot
2026-02-08 17:36 ` [Buildroot] [PATCH v2 1/2] package/rpmsg-utils: new package Vincent Jardin via buildroot
2026-02-08 17:36 ` [Buildroot] [PATCH v2 2/2] package/rpmsg-echo-test: " Vincent Jardin via buildroot
2026-02-08 17:41 ` [Buildroot] [PATCH v2 0/2] new packages: rpmsg-utils and rpmsg-echo-test Vincent Jardin via buildroot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox