Introduction
The v++ --package
, or -p
step, packages the final product at the end of the
v++
compile and link build process. This is a
required step for all embedded platforms, including Versal devices, AI Engine, and
Zynq devices.
The various options of --package
include the following:
--package.aie_debug_port
--package.aie_debug_port <arg>
Where <arg>
specifies a
TCP port where emulator will listen for incoming connections from the debugger to
debug Versal
AI Engine cores.
For example:
v++ -l --package.aie_debug_port 1440
--package.bl31_elf
--package.bl31_elf <arg>
Where <arg>
specifies the
absolute or relative path to Arm trusted FW
ELF that will execute on A72 #0 core.
For example:
v++ -l --package.bl31_elf ./arm_trusted.elf
--package.boot_mode
--package.boot_mode <arg>
Where <arg>
specifies
<ospi | qspi | sd>
Boot mode used for
running the application in emulation or on hardware.
For example:
v++ -l --package.boot_mode sd
--package.defer_aie_run
--package.defer_aie_run
Where this option specifies that the Versal AI Engine cores will be enabled by an embedded processor (PS) application. When not specified, the tool will generate CDO commands to enable the AI Engine cores during PDI load instead.
For example:
v++ -l --package.defer_aie_run
--package.domain
--package.domain <arg>
Where <arg>
specifies a
domain name.
For example:
v++ -l --package.domain xrt
--package.dtb
--package.dtb <arg>
Where <arg>
specifies the
absolute or relative path to device tree binary (DTB) used for loading Linux on the
APU.
For example:
v++ -l --package.dtb ./device_tree.image
--package.enable_aie_debug
--package.enable_aie_debug
When enabled, the tool generates CDO commands to stop the AI Engine cores during PDI load.
For example:
v++ -l --package.enable_aie_debug
--package.image_format
--package.image_format <arg>
Where <arg>
specifies
<ext4 | fat32>
output image file
format.
- ext4: Linux file system
- fat32: Windows file system
For example:
v++ -l --package.image_format fat32
--package.kernel_image
--package.kernel_image <arg>
Where <arg>
specifies the absolute
or relative path to a Linux kernel image file. Overrides the existing image
available in the platform. The platform image file is available for download from
xilinx.com. Refer to the Vitis Software Platform Installation for more information.
For example:
v++ -l --package.kernel_image ./kernel_image
--package.no_image
--package.no_image
Bypass SD card image creation. Valid for --package.boot_mode sd
.
--package.out_dir
--package.out_dir <arg>
Where <arg>
specifies the
absolute or relative path to the output directory of the --package
command.
For example:
v++ -l --package.out_dir ./out_dir
--package.ps_debug_port
--package.ps_debug_port <arg>
Where <arg>
specifies the
TCP port where emulator will listen for incoming connections from the debugger to
debug PS cores.
For example:
v++ -l --package.debug_port 3200
--package.ps_elf
--package.ps_elf <arg>
Where <arg>
specifies
<ps.elf,core>
.
- ps.elf: Specifies the ELF file for the PS core.
-
core
: Indicates the PS core it should run on.
For example:
v++ -l --package.ps_elf a72_0.elf,a72-0
--package.rootfs
--package.rootfs <arg>
Where <arg>
specifies the
absolute or relative path to a processed Linux root file system file. The platform
RootFS file is available for download from Xilinx.com. Refer to the Vitis Software Platform Installation for more information.
For example:
v++ -l --package.rootfs ./rootfs.ext4
--package.sd_dir
--package.sd_dir <arg>
Where <arg>
specifies a folder to
package into the sd_card
directory/image. The
contents of the directory are copied to a sub-folder of the sd_card
folder.
For example:
v++ -l --package.sd_dir ./test_data
--package.sd_file
--package.sd_file <arg>
Where <arg>
specifies an
ELF or other data file to package into the sd_card
directory/image. This option can be used repeatedly to specify
multiple files to add to the sd_card
.
For example:
v++ -l --package.sd_file ./arm_trusted.elf
--package.uboot
--package.uboot <arg>
Where <arg>
specifies a
path to U-boot ELF file which overrides a platform U-boot.
For example:
v++ -l --package.uboot ./uboot.elf