Download Versal common image from AMD website download page, place it under your
WorkSpacedirectory, and extract the common image.
tar xvf ../xilinx-versal-common-v2023.2.tar.gz .
Create the device tree file Device tree describes the hardware components of the system.
createdtscommand can generate the device tree file according to the hardware configurations from XSA file. If there are any settings not available in XSA, for example, any driver nodes that do not have corresponding hardware, or the user has their own design hardware, the user needs to add customization settings in
Besides, uboot in common image does not have default environment variables. So update the bootargs manually. A pre-prepared system-user.dtsi file, which adds pre-defined bootargs is under
WorkSpacedirectory and follow below steps to generate the DTB file.
cd WorkSpace source <Vitis_Install_Directory>/settings64.sh xsct
createdtscommand in XSCT console like the following:
createdts -hw <full path>/vck190_custom.xsa -out . -zocl \ -platform-name mydevice -git-branch xlnx_rel_v2023.2 -board versal-vck190-reva-x-ebm-02-reva -dtsi system-user.dtsi -compile
Note: If you target VEK280, please specify the XSA to vek280_custom.xsa and board to versal-vek280-revb.
-hwoption is your XSA file generated in step1 located in your Vivado Project directory named
vck190_custom.xsa. Besides, the following information would show in XSCT console. Ignore the following warning and that means you succeed to get system.dtb file, which is located in
pl.dtsi:9.21-46.4: Warning (unit_address_vs_reg): /amba_pl@0: node has a unit name, but no reg property pl.dtsi:41.26-45.5: Warning (simple_bus_reg): /amba_pl@0/misc_clk_0: missing or empty reg/ranges property
exitin console to exit XSCT console.
Create Vitis platform
Install SDK tool by typing
sh xilinx-versal-common-v2023.2/sdk.sh -d xilinx-versal-common-v2023.2/ -yin console. Option
-dis to specify the directory where to install. Option
-ymeans confirmation. So it gets installed in
Run Vitis by typing
vitis -w .in the console. -w is to specify the workspace.
.means the current workspace.
In the Vitis IDE, select File > New Component > Platform to create a platform component.
Enter the Component name. For this example, type
vck190_custom, click Next.
Note: If you target VEK280, please update component name to vek280_custom.
In the XSA selecting page, click Browse button, select the XSA file generated by the Vivado. In this case, it is
Your Vivado Project Directory>/vck190_custom.xsaor
vek280_custom.xsa. Click Next.
Set the operating system to linux and set the processor to psv_cortexa72. Click Next.
Review the summary and click Finish.
Click the linux On psv_cortexa72 domain.
Update the Display Name to
xrtby clicking the entry bar and inputting the name. It is indicated that this is a Linux domain has XRT installed and can run acceleration applications.
Set Bif file: Click the button as shown in the following diagram and generate BIF file. The BIF file is generated in the resource directory.
Pre-Built Image Directory: Browse to extracted common image path directory:
xilinx-versal-common-v2023.2/and click OK. Bootgen looks for boot components referred by BIF in this directory to generate
DTB file: Browse to the DTB file location we created just now. It is under
mydevice/psv_cortexa72_0/device_tree_domain/bsp/. Select system.dtb and click OK
FAT32 Partition Directory: if you have additional file to be stored in FAT32 partition diretory you can browse to the file. If not please omit this.
QEMU Data: This Directory is used to add additional file for emulation. User can set it according to your requirement.
In the flow navigator, click the drop-down button to select the component. In this case, select vck190_custom component and click the Build button to build the platform.
Note: If there are additional QEMU settings, update
After this step2, the platform creation process is completed. Next, run an application to validate this platform.