To repeat, a BSP (or Domain) is a collection of drivers, libraries and processor specific configuration that users can use to base their application project upon. In Vitis Classic, the non-default BSP settings where contained in a MSS (Microprocessor Software Specification) file such as the OS settings, drivers, and (or) libraries. As mentioned above, the non-default settings are contained in the MSS file. The metadata was compiled from a few different source files. For example, the OS settings where populated from the standalone bsp MDD file, and any non-default settings (ie user settings in GUI) where contained in the MSS under the OS section. The same flow was used in the driver, where each driver had its parameters maintained in the MDD file, and if user changed these from default it would be stored in the MSS file. Same for the Libraries. In Vitis Unified IDE, the MSS/MDD/MLD are no longer used. Instead of the MSS the bsp.yaml created by the Lopper framework using the SDT will contain this information. The bsp.yaml will contain the os_info, os_config, proc, proc_config, drv_info, library_info, library_config. The metadata here is used to populate BSP GUI in Vitis Unified GUI. Any changes made to the bsp.yaml will be reflected in the GUI.
In Vitis Unified the parameters are all CMake driven. So, intead of the MSS/MDD/MLD each standalone bsp, driver or library will have a CMake file with cache variables and their options. Vitis Unified IDE is using those CMake cache data to populate the bsp.yaml. The bsp.yaml will be dynamically generated every time the Domain is built. Any modifications to the bsp.yaml will be overwritten.