xlnx-config is command line tool used to manage and manipulate the hardware platform for Xilinx ZCU102/4/6 boards running Certified Ubuntu 20.04 LTS for Xilinx Devices. Xlnx-config provides two main functions as detailed below.
Platform Management The main purpose of the xlnx-config snap is It can be used to load custom hardware platforms (targeted reference designs (TRDs), custom platforms, etc) other than the standard standard platforms delivered as part of the Certified Ubuntu for Xilinx Devices Image.
boot and FPGA assets for applications running on Xilinx hardware: it takes care of installing, switching, and removing the boot firmware and programmable logic (PL) image, which include first stage bootloader, bitstream, PMU firmware, xclbin files, etc.
Xclbin Access for Snaps Xlnx-config provides a way for strictly confined applications snaps to access the xclbin currently present in the system. Since snap applications are strictly confined, they don’t access to many system resources. However, xlnx-config is a “classic” snap which means it has more access to the system than a typical snap. We use the concept of a “content plug” to provide the xclbin (and possibly other system resources) to “consumer snaps” from the xlnx-config “producer” snap.
When application snaps that need access to the xclbin are installed, they automatically connect to the xlnx-config assets directory through the content interface as specified in the snapcraft build file for the application snap. This allows files (ex: dpu.xclbin) to be shared through the interface.