Branch: refs/heads/main
Home: https://github.com/OpenAMP/openamp-system-reference
Commit: c1849243878fa57686ab67fc8571e0a3dab24c94
https://github.com/OpenAMP/openamp-system-reference/commit/c1849243878fa576…
Author: Ben Levinsky <ben.levinsky(a)amd.com>
Date: 2026-01-26 (Mon, 26 Jan 2026)
Changed paths:
M examples/libmetal/machine/remote/amd_rpu/system/generic/amp_demo_os.h
Log Message:
-----------
examples: libmetal: amd_rpu: baremetal: Fix wait condition
As the resume condition clears the flag, this should check if clear.
Signed-off-by: Ben Levinsky <ben.levinsky(a)amd.com>
Commit: a1606dff2d51f3f00ced4b463ba64fc274eb1899
https://github.com/OpenAMP/openamp-system-reference/commit/a1606dff2d51f3f0…
Author: Ben Levinsky <ben.levinsky(a)amd.com>
Date: 2026-01-26 (Mon, 26 Jan 2026)
Changed paths:
M examples/libmetal/machine/remote/amd_rpu/system/generic/gic_init.c
Log Message:
-----------
examples: libmetal: amd_rpu: baremetal: Use AMD recommended ISR via IPIPSU driver
AMD BSP recommended usage recommends using IPI driver to hook in IPIPSU driver.
Reference example here: https://github.com/xilinx/embeddedsw/blob/master/XilinxProcessorIPLib/drive…
As part of this remove unneeded lines.
Also use config.h provided IPI value to get the IPIPSU instance.
Signed-off-by: Ben Levinsky <ben.levinsky(a)amd.com>
Commit: c5211b46efc4b831df04203fb3886fde75d0e5d8
https://github.com/OpenAMP/openamp-system-reference/commit/c5211b46efc4b831…
Author: Ben Levinsky <ben.levinsky(a)amd.com>
Date: 2026-01-26 (Mon, 26 Jan 2026)
Changed paths:
M examples/libmetal/demos/irq_shmem_demo/README.md
M examples/libmetal/demos/irq_shmem_demo/host/irq_shmem_demo.c
M examples/libmetal/demos/irq_shmem_demo/remote/irq_shmem_demo.c
M examples/libmetal/machine/host/amd_linux_userspace/CMakeLists.txt
M examples/libmetal/machine/host/amd_linux_userspace/README.md
M examples/libmetal/machine/host/amd_linux_userspace/common.h
A examples/libmetal/machine/host/amd_linux_userspace/config.h.in
M examples/libmetal/machine/host/amd_linux_userspace/platform_init.c
M examples/libmetal/machine/remote/amd_rpu/CMakeLists.txt
M examples/libmetal/machine/remote/amd_rpu/README.md
M examples/libmetal/machine/remote/amd_rpu/build_deps.cmake
M examples/libmetal/machine/remote/amd_rpu/common.h
A examples/libmetal/machine/remote/amd_rpu/config.h.in
A examples/libmetal/machine/remote/amd_rpu/linker_files/lscript_r5.ld.in
A examples/libmetal/machine/remote/amd_rpu/linker_files/lscript_r52_generic.ld.in
A examples/libmetal/machine/remote/amd_rpu/linker_files/lscript_versal_net_r5.ld.in
A examples/libmetal/machine/remote/amd_rpu/linker_files/lscript_versal_r5.ld.in
M examples/libmetal/machine/remote/amd_rpu/platform_init.c
M examples/libmetal/machine/remote/amd_rpu/system/generic/gic_init.c
Log Message:
-----------
examples: libmetal: align demo carveouts with OpenAMP layout
Move the libmetal host/remote demo off the legacy single 3ed80000.shm window
to the OpenAMP-style carveouts at 0x09860000 with separate descriptor UIOs
(9860000.shm_desc, 9864000.shm_desc) and payload (9868000.shm), update the
platform init code to open/map the new descriptor regions, add
optional config-driven IPI overrides, and match the RPU defaults to the same
layout.
As part of this, mimic OpenAMP vendor-specific demos in that they will also
support support use of unified CMake-driven symbols. This enables external
tooling to generate a .cmake file from the system device tree that configures
the demo for the target platform without manual edits to source files.
Key changes:
- Add config.h.in templates for both Linux host and RPU remote that use
#cmakedefine to optionally override defaults from common.h
- Separate monolithic SHM_BASE_ADDR/SHM_SIZE into distinct carveouts:
* SHM0_DESC_BASE/SIZE - descriptor ring 0
* SHM1_DESC_BASE/SIZE - descriptor ring 1
* SHM_PAYLOAD_BASE/SIZE - data payload area
- Wrap all platform-specific IPI symbols in #ifndef guards:
* IPI_DEV_NAME, IPI_BASE_ADDR, IPI_MASK
- Wrap all platform-specific TTC symbols in #ifndef guards:
* TTC_DEV_NAME, TTC0_BASE_ADDR, TTC_NODEID
- Include demo-specific specific symbols for IPI, Shared memory and TTC
as provided by configure-time generated config.h file.
- Configure linker script via .cmake metadata too.
Signed-off-by: Ben Levinsky <ben.levinsky(a)amd.com>
Commit: 54d438856c372c5704d5f8640f97e48558388efd
https://github.com/OpenAMP/openamp-system-reference/commit/54d438856c372c57…
Author: Ben Levinsky <ben.levinsky(a)amd.com>
Date: 2026-01-26 (Mon, 26 Jan 2026)
Changed paths:
M examples/libmetal/machine/host/amd_linux_userspace/CMakeLists.txt
R examples/libmetal/machine/host/amd_linux_userspace/ipi-uio.c
Log Message:
-----------
examples: libmetal: amd_linux_userspace: remove UIO unused C file
UIO C file is dead code. remove it.
Signed-off-by: Ben Levinsky <ben.levinsky(a)amd.com>
Commit: a591224d413fb3d7d028e6ce3af1b2bf875d7dee
https://github.com/OpenAMP/openamp-system-reference/commit/a591224d413fb3d7…
Author: Ben Levinsky <ben.levinsky(a)amd.com>
Date: 2026-01-26 (Mon, 26 Jan 2026)
Changed paths:
M examples/libmetal/machine/host/amd_linux_userspace/CMakeLists.txt
Log Message:
-----------
examples: libmetal: amd_linux_userspace: simplify build
Simplify build as it was previously based off legacy Libmetal
Linux AMP Demo.
Streamline it to just pick up and deliver a statically linked
executable.
Signed-off-by: Ben Levinsky <ben.levinsky(a)amd.com>
Compare: https://github.com/OpenAMP/openamp-system-reference/compare/1a21aaefa874...…
To unsubscribe from these emails, change your notification settings at https://github.com/OpenAMP/openamp-system-reference/settings/notifications
Branch: refs/heads/v2025.10
Home: https://github.com/OpenAMP/libmetal
Commit: 37f4b7389a216b301570c05e29814b8b5bbe16d4
https://github.com/OpenAMP/libmetal/commit/37f4b7389a216b301570c05e29814b8b…
Author: Tanmay Shah <tanmay.shah(a)amd.com>
Date: 2026-01-19 (Mon, 19 Jan 2026)
Changed paths:
M cmake/options.cmake
M lib/system/freertos/CMakeLists.txt
M lib/system/generic/CMakeLists.txt
M test/system/freertos/CMakeLists.txt
M test/system/generic/CMakeLists.txt
M test/system/linux/CMakeLists.txt
M test/system/zephyr/CMakeLists.txt
Log Message:
-----------
libmetal: cmake: support machine less build
libmetal can be build without any machine support. It is possible that
vendors implement machine specific interfaces outside of libmetal and
link it with demos during build time. Hence, remove requirement to have
MACHINE and PROJECT_MACHINE variables from the build system. If vendor
prefer to choose 'template' machine, they can pass such option during
cmake configuration.
Signed-off-by: Tanmay Shah <tanmay.shah(a)amd.com>
Commit: ad4b08d4636e342ffe1bd35b0cfe0eb15bf5199f
https://github.com/OpenAMP/libmetal/commit/ad4b08d4636e342ffe1bd35b0cfe0eb1…
Author: Tanmay Shah <tanmay.shah(a)amd.com>
Date: 2026-01-19 (Mon, 19 Jan 2026)
Changed paths:
R lib/system/freertos/xlnx/CMakeLists.txt
Log Message:
-----------
lib: freertos: remove xlnx vendor directory
This directory was removed and re-inroduced by mistake, and should
not exists in the libmetal.
Signed-off-by: Tanmay Shah <tanmay.shah(a)amd.com>
Commit: f281301e4bfd7acede8d3322eddd191a43841631
https://github.com/OpenAMP/libmetal/commit/f281301e4bfd7acede8d3322eddd191a…
Author: Arnaud Pouliquen <arnaud.pouliquen(a)foss.st.com>
Date: 2026-01-19 (Mon, 19 Jan 2026)
Changed paths:
M lib/system/freertos/sys.h
M lib/system/freertos/template/CMakeLists.txt
R lib/system/freertos/template/sys.h
M lib/system/generic/sys.h
M lib/system/generic/template/CMakeLists.txt
R lib/system/generic/template/sys.h
Log Message:
-----------
lib: system: template: remove template/sys.h for generic and freeRTOS
Declare sys_irq_enable() and sys_irq_enable() directly in
lib/system/@PROJECT_SYSTEM@/sys.h.
This allows to declare the machine out of tree of the libmetal but
also to support the in-tree template.
[minor style related fix by tanmay]
Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen(a)foss.st.com>
Signed-off-by: Tanmay Shah <tanmay.shah(a)amd.com>
Compare: https://github.com/OpenAMP/libmetal/compare/dbf9cf5286b4...f281301e4bfd
To unsubscribe from these emails, change your notification settings at https://github.com/OpenAMP/libmetal/settings/notifications
Branch: refs/heads/main
Home: https://github.com/OpenAMP/libmetal
Commit: 5bdf21a54ff3d7fede7d54615c8d21e8d39de308
https://github.com/OpenAMP/libmetal/commit/5bdf21a54ff3d7fede7d54615c8d21e8…
Author: Bowen Wang <wangbowen6(a)xiaomi.com>
Date: 2026-01-13 (Tue, 13 Jan 2026)
Changed paths:
M lib/system/nuttx/mutex.h
Log Message:
-----------
mutex: change the libmetal nuttx mutex to recursive mutex
To avoid the crash when lock are acquired twice, one case is in the
destory process:
we hold the rpdev->lock to iterate the rpdev->endpoints to destory all
the endpoints, but rpmsg_destroy_ept() may send the name service message,
and need acquire the rpdev->lock again to lead crash.
Signed-off-by: Bowen Wang <wangbowen6(a)xiaomi.com>
To unsubscribe from these emails, change your notification settings at https://github.com/OpenAMP/libmetal/settings/notifications
Branch: refs/heads/main
Home: https://github.com/OpenAMP/libmetal
Commit: d3a27c1454085c498226fe70db4c598485c758ad
https://github.com/OpenAMP/libmetal/commit/d3a27c1454085c498226fe70db4c5984…
Author: Arnaud Pouliquen <arnaud.pouliquen(a)foss.st.com>
Date: 2026-01-13 (Tue, 13 Jan 2026)
Changed paths:
M lib/alloc.h
M lib/assert.h
M lib/atomic.h
M lib/cache.h
M lib/compiler.h
M lib/compiler/gcc/atomic.h
M lib/compiler/gcc/compiler.h
M lib/compiler/iar/compiler.h
M lib/condition.h
M lib/config.h
M lib/cpu.h
M lib/device.h
M lib/dma.h
M lib/errno.h
M lib/io.h
M lib/irq.h
M lib/irq_controller.h
M lib/list.h
M lib/log.h
M lib/mutex.h
M lib/processor/aarch64/cpu.h
M lib/processor/ceva/cpu.h
M lib/processor/generic/atomic.h
M lib/processor/generic/cpu.h
M lib/processor/hosted/cpu.c
M lib/processor/hosted/cpu.h
M lib/processor/x86/cpu.h
M lib/processor/x86_64/cpu.h
M lib/processor/xtensa/cpu.h
M lib/shmem.c
M lib/shmem.h
M lib/sleep.h
M lib/softirq.h
M lib/spinlock.h
M lib/sys.h
M lib/system/freertos/alloc.h
M lib/system/freertos/assert.h
M lib/system/freertos/cache.h
M lib/system/freertos/condition.c
M lib/system/freertos/condition.h
M lib/system/freertos/device.c
M lib/system/freertos/init.c
M lib/system/freertos/io.c
M lib/system/freertos/io.h
M lib/system/freertos/irq.c
M lib/system/freertos/mutex.h
M lib/system/freertos/shmem.c
M lib/system/freertos/sleep.h
M lib/system/freertos/sys.h
M lib/system/freertos/template/sys.c
M lib/system/freertos/template/sys.h
M lib/system/freertos/time.c
M lib/system/generic/alloc.h
M lib/system/generic/assert.h
M lib/system/generic/cache.h
M lib/system/generic/condition.c
M lib/system/generic/condition.h
M lib/system/generic/device.c
M lib/system/generic/init.c
M lib/system/generic/io.c
M lib/system/generic/io.h
M lib/system/generic/irq.c
M lib/system/generic/mutex.h
M lib/system/generic/shmem.c
M lib/system/generic/sleep.h
M lib/system/generic/sys.h
M lib/system/generic/template/sys.c
M lib/system/generic/template/sys.h
M lib/system/generic/time.c
M lib/system/linux/alloc.h
M lib/system/linux/assert.h
M lib/system/linux/cache.h
M lib/system/linux/condition.c
M lib/system/linux/condition.h
M lib/system/linux/device.c
M lib/system/linux/init.c
M lib/system/linux/io.h
M lib/system/linux/irq.h
M lib/system/linux/mutex.h
M lib/system/linux/shmem.c
M lib/system/linux/sleep.h
M lib/system/linux/sys.h
M lib/system/linux/time.c
M lib/system/linux/utilities.c
M lib/system/nuttx/alloc.h
M lib/system/nuttx/assert.h
M lib/system/nuttx/cache.h
M lib/system/nuttx/condition.c
M lib/system/nuttx/condition.h
M lib/system/nuttx/device.c
M lib/system/nuttx/init.c
M lib/system/nuttx/io.h
M lib/system/nuttx/irq.c
M lib/system/nuttx/irq.h
M lib/system/nuttx/mutex.h
M lib/system/nuttx/shmem.c
M lib/system/nuttx/sleep.h
M lib/system/nuttx/sys.h
M lib/system/nuttx/time.c
M lib/system/zephyr/alloc.c
M lib/system/zephyr/alloc.h
M lib/system/zephyr/assert.h
M lib/system/zephyr/cache.h
M lib/system/zephyr/condition.c
M lib/system/zephyr/condition.h
M lib/system/zephyr/device.c
M lib/system/zephyr/init.c
M lib/system/zephyr/io.h
M lib/system/zephyr/irq.c
M lib/system/zephyr/log.c
M lib/system/zephyr/log.h
M lib/system/zephyr/mutex.h
M lib/system/zephyr/shmem.c
M lib/system/zephyr/sleep.h
M lib/system/zephyr/sys.c
M lib/system/zephyr/sys.h
M lib/system/zephyr/time.c
M lib/time.h
M lib/utilities.h
M lib/version.h
M test/metal-test.h
M test/system/zephyr/metal-test-internal.h
Log Message:
-----------
lib: fix file headers for doxygen generation
- start by "/**",
- fix file relative path,
- fix typos,
Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen(a)foss.st.com>
Commit: 03f8145fb2cd496a0e1bcdea9ba0e51f51259128
https://github.com/OpenAMP/libmetal/commit/03f8145fb2cd496a0e1bcdea9ba0e51f…
Author: Arnaud Pouliquen <arnaud.pouliquen(a)foss.st.com>
Date: 2026-01-13 (Tue, 13 Jan 2026)
Changed paths:
M lib/compiler/armcc/errno.h
M lib/compiler/iar/errno.h
M lib/device.c
M lib/dma.c
M lib/init.c
M lib/io.c
M lib/irq.c
M lib/log.c
M lib/softirq.c
M lib/system/nuttx/io.c
M lib/version.c
Log Message:
-----------
lib: Add missing file headers for doxygen generation
Add file header on missing .c and *h files to display brief
in documentation.
Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen(a)foss.st.com>
Compare: https://github.com/OpenAMP/libmetal/compare/f01d1bed0383...03f8145fb2cd
To unsubscribe from these emails, change your notification settings at https://github.com/OpenAMP/libmetal/settings/notifications
Branch: refs/heads/main
Home: https://github.com/OpenAMP/openamp-system-reference
Commit: 7d392c6707de6ec9ad875ee0308ecf4eb4eabec1
https://github.com/OpenAMP/openamp-system-reference/commit/7d392c6707de6ec9…
Author: Ben Levinsky <ben.levinsky(a)amd.com>
Date: 2026-01-07 (Wed, 07 Jan 2026)
Changed paths:
M examples/libmetal/machine/remote/amd_rpu/platform_init.c
A examples/libmetal/machine/remote/amd_rpu/system/generic/CMakeLists.txt
A examples/libmetal/machine/remote/amd_rpu/system/generic/README.md
A examples/libmetal/machine/remote/amd_rpu/system/generic/amp_demo_os.h
A examples/libmetal/machine/remote/amd_rpu/system/generic/gic_init.c
A examples/libmetal/machine/remote/amd_rpu/system/generic/main.c
Log Message:
-----------
examples: libmetal: amd_rpu: Add Baremetal Port
Add port that implements, main routine, suspend/resume
and wiring in interrupts.
Signed-off-by: Ben Levinsky <ben.levinsky(a)amd.com>
Commit: 40e9a51d97ff8bdc8d943f55722910494bb96b27
https://github.com/OpenAMP/openamp-system-reference/commit/40e9a51d97ff8bdc…
Author: Ben Levinsky <ben.levinsky(a)amd.com>
Date: 2026-01-07 (Wed, 07 Jan 2026)
Changed paths:
M examples/libmetal/machine/remote/amd_rpu/lscript_sdt.ld
Log Message:
-----------
examples: libmetal: amd_rpu: fix linker script
Ensure that RPU Firmware will boot using FreeRTOS or Baremetal
system by making sure linker script is proper.
Signed-off-by: Ben Levinsky <ben.levinsky(a)amd.com>
Commit: dcd4f7ab7da9252221ac1b9b3140a04c3660d05b
https://github.com/OpenAMP/openamp-system-reference/commit/dcd4f7ab7da92522…
Author: Ben Levinsky <ben.levinsky(a)amd.com>
Date: 2026-01-07 (Wed, 07 Jan 2026)
Changed paths:
M examples/libmetal/machine/remote/amd_rpu/common.h
M examples/libmetal/machine/remote/amd_rpu/platform_init.c
Log Message:
-----------
examples: libmetal: amd_rpu: Set size for shared memory device based on macro
Before the size was hard-coded. Now let macro definition SHM_SIZE
set shared memory region size
Signed-off-by: Ben Levinsky <ben.levinsky(a)amd.com>
Commit: 795f838777b01bb1bd9dddb26246531ef04050ac
https://github.com/OpenAMP/openamp-system-reference/commit/795f838777b01bb1…
Author: Ben Levinsky <ben.levinsky(a)amd.com>
Date: 2026-01-07 (Wed, 07 Jan 2026)
Changed paths:
M examples/libmetal/machine/remote/amd_rpu/platform_init.c
Log Message:
-----------
examples: libmetal: amd_rpu: IRQ Handler now to handle based on registed IRQ
As the IPI_IRQ_VECT_ID system interrupt is what is used to map
the internal IRQ handler, pass this in to metal_irq_handle()
call.
Signed-off-by: Ben Levinsky <ben.levinsky(a)amd.com>
Commit: 276192eca17f4a4cc1a8f32965216f83e453fcd4
https://github.com/OpenAMP/openamp-system-reference/commit/276192eca17f4a4c…
Author: Ben Levinsky <ben.levinsky(a)amd.com>
Date: 2026-01-07 (Wed, 07 Jan 2026)
Changed paths:
M examples/libmetal/machine/remote/amd_rpu/platform_init.c
Log Message:
-----------
examples: libmetal: amd_rpu: Ensure IRQ setup is clean
Wipe pre-existing IRQ kicks before register and enable
of handler for IRQ
Signed-off-by: Ben Levinsky <ben.levinsky(a)amd.com>
Commit: 79cef32ccedc9661753ebf5fd3677e99cf25dd32
https://github.com/OpenAMP/openamp-system-reference/commit/79cef32ccedc9661…
Author: Ben Levinsky <ben.levinsky(a)amd.com>
Date: 2026-01-07 (Wed, 07 Jan 2026)
Changed paths:
M examples/libmetal/machine/remote/amd_rpu/platform_init.c
Log Message:
-----------
examples: libmetal: amd_rpu: Update log for role
As the role for this C file is remote, ensure
metal_err logging reflects this.
Signed-off-by: Ben Levinsky <ben.levinsky(a)amd.com>
Commit: 5c118fb1619e900e32317d8e884ecaa54ef6cdd8
https://github.com/OpenAMP/openamp-system-reference/commit/5c118fb1619e900e…
Author: Ben Levinsky <ben.levinsky(a)amd.com>
Date: 2026-01-07 (Wed, 07 Jan 2026)
Changed paths:
A examples/libmetal/machine/remote/amd_rpu/build_deps.cmake
Log Message:
-----------
examples: libmetal: amd_rpu: Add build dependencies
This was skipped because of .gitignore - add this for compilation
Signed-off-by: Ben Levinsky <ben.levinsky(a)amd.com>
Commit: 2e4b20c37e311809f96c93503dae04a45bf92694
https://github.com/OpenAMP/openamp-system-reference/commit/2e4b20c37e311809…
Author: Ben Levinsky <ben.levinsky(a)amd.com>
Date: 2026-01-07 (Wed, 07 Jan 2026)
Changed paths:
M examples/libmetal/machine/remote/amd_rpu/platform_init.c
Log Message:
-----------
libmetal: amd_rpu: use libmetal logging framework
Same as legacy_apps, define and use platform specific logging handler.
Signed-off-by: Ben Levinsky <ben.levinsky(a)amd.com>
Compare: https://github.com/OpenAMP/openamp-system-reference/compare/b73f5d7ca3e6...…
To unsubscribe from these emails, change your notification settings at https://github.com/OpenAMP/openamp-system-reference/settings/notifications