The libmetal library is maintained by the OpenAMP open source community. It provides common user APIs to access devices, handle device interrupts, and request memory across different operating environments.
libmetal is available for the following operating systems/software configurations:
- Linux (Linux user space based on Uniform I/O (UIO) and Virtual Function I/O (VFIO) support in the kernel.)
- FreeRTOS
- Bare-metal environments
Note: VFIO support is no longer supported in the next
release (2024.1).
The following architecture diagram shows how the application accesses the libmetal library:
Figure 1. Libmetal Architecture
See the AMD Libmetal Source Code for more details on the libmetal APIs.
Note: For new feature information on Libmetal (newer than
2019), see the AMD wiki at https://wiki.xilinx.com/openamp.