The SDK batchmode command set is listed below. The command list has been greatly improved upon from the command set available in the 2015.4 release.
In Vivado 2015.4, to create a usable script, users had to use both the SDK batch mode, and HSI API. However, in Vivado 2016.1, users should be able to just use the SDK batchmode commands to create their scripts.
The advantage of using the SDK batch mode over HSI is that projects created here are eclipse aware, meaning that the projects can be opened in the SDK GUI.
The table below can be used for porting existing scripts to 2016.1, or for starting a new script from scratch.
There are also a few use-cases provided for ease of use.
For more help on these commands, type "SDK batchmode" into the SDK 2016.1 help.
|2015.4 Command||2016.1 Command||Details|
|N/A||openhw||Open a hardware design|
|N/A||closehw||Close a hardware design|
|N/A||openbsp||Opens a BSP|
|N/A||closebsp||Closes a BSP|
|N/A||updatemss||Update the .mss file with the changes done in BSP|
|N/A||getaddrmap||Get the address map of the IP connect to the processor|
|N/A||getperipherals||Get list of all peripherals in hardware design|
|set_user_repo_path||repo||Software repositories command|
|N/A||configbsp||Configure the parameters of BSP|
|N/A||setlib||Set library and version in BSP|
|N/A||removelib||Remove library From BSP|
|N/A||getlibs||Get libraries from BSP|
|N/A||setdriver||Set driver and version in BSP|
|N/A||getdrivers||Get drivers from BSP|
|N/A||setosversion||Get OS version from BSP|
|N/A||getos||Get OS details from BSP|
|set_workspace||setws||Set the SDK workspace|
|get_workspace||getws||Get the SDK workspace|
|create_hw_project||createhw||Create a Hardware platform|
|create_bsp_project||createbsp||Create BSP project|
|create_app_project||createapp||Create an application project|
|import_projects||importprojects||Import projects to workspace|
|import_sources||importsources||Import source to application project|
|get_projects||getprojects||Get projects from workspace|
|delete_projects||deleteprojects||Delete projects from workspace|
|get_build_config||configapp||Configure settings for applications projects|
|N/A||petalinux-boot||Boots MicroBlaze/Zynq/Zynq MPSoC with PetaLinux Images through JTAG/QEMU|
|N/A||petalinux-build||Builds PetaLinux Project, or specified Component|
|N/A||petalinux-config||Configures the project or the specified component with menuconfig.|
|N/A||petalinux-create||Create new PetaLinux project or Component|
|N/A||petalinux-package||packages various image format, firmware, prebuilt and bsps|
|N/A||petalinux-install-path||Add PetaLinux install path|
|N/A||petalinux-util||provides the misc utilities|
Use-Case 1: Creating Project applications using the Application templates.
In this use-case, the FSBL is created for the CortexA53 processor:
Note: Here, the xilffs and xilsecure libraries will be automatically added to the BSP.
Note: To add the debug switch, use the following command before the projects-build command:
Use-Case 2: Modifying the BSP settings.
In this use-case, a Hello World application is built targeting the MicroBlaze processor. The STDIN/OUT OS parameters are changed to use the MDM_0.
Note: To get the BSP name, use the getprojects command.
Note: To get a list of the peripherals, use the getperipherals <path-to-HDF> command.
Note: To update a parameter, use the command below:
Use-Case 3: Changing compiler options of an Application project
In this use-case, the compiler option -std=c99 is added.
Use-case 4: Creating a Linux Image
In this use-case, we will create a Linux Image for the Zynq UltraScale.
Note: The PetaLinux commands are only available on Linux OS, and PetaLinux is pre-installed.
Use-case 5: Passing compiler symbol
In this use-case, we will create a simple MicroBlaze project, and passing a compiler symbol to the application (test):
Use-case 6: Creating a bootable BOOT.BIN file
In this use-case, we will target the CortexA53 and create a FSBL, and a Hello World application. Next, we will target the PSU MicroBlaze and create the PSU Firmware.
Finally, we use bootgen to create a bootable BIN file that can be placed directly on the SD Card.
Note: the bootgen.bif file is shown below: