Skip to content

Appowner Testing Pull Request

saikrishnamaddali edited this page Apr 30, 2019 · 6 revisions

Test your Xitem in Vivado

Now before sending your changes in a pull request, optionally you can validate the local changes. Below steps ensures that your newly created board xitem gets loaded and detected by the Vivado.

A) Setup download location

mkdir <WORKING_DIR>/MY_STORE_ROOT_DIR
cd <WORKING_DIR>

B) Launch Vivado Tcl Console and invoke following commands

#Contact Xilinx to get the parameters to enable this feature, Write an email to : '[email protected]'
#set it here
set_param ...

#Download one copy of store metadata file
set_property LOCAL_ROOT_DIR "<WORKING_DIR>/MY_STORE_ROOT_DIR" [xhub::get_xstores xilinx_board_store]
xhub::refresh_catalog [xhub::get_xstores xilinx_board_store]

C) Patch newly created board to downloaded store

#Invoke commands in bash shell
mkdir <WORKING_DIR>/MY_STORE_ROOT_DIR/XilinxBoardStore/Vivado/<version>/boards/<MY_COMPANY>/<MY_NEW_BOARD_SHORT_NAME>
cp -r <WORKING_DIR>/MY_GIT_REPO1/XilinxBoardStore/boards/<MY_COMPANY>/<MY_NEW_BOARD_SHORT_NAME>/* <WORKING_DIR>/MY_STORE_ROOT_DIR/XilinxBoardStore/Vivado/<version>/boards/<MY_COMPANY>/<MY_NEW_BOARD_SHORT_NAME>/

D) Update store catalog file

The store catalog file refers to a meta data file which defines and filters supported xitems for each xilinx products and release, its driven from xstore.json file for the store

To add a entry in store catalog file, use the following python script:

Utility-script-to-add-xitem-entry-in-store-catalog-file

Typical Command Usage :

#Invoke commands in bash shell
#Type 'python ./utility/add_xitem_entry.py --help' for more details.

python <WORKING_DIR>/MY_GIT_REPO1/XilinxBoardStore/utility/add_xitem_entry.py --store_dir <WORKING_DIR>/MY_STORE_ROOT_DIR/XilinxBoardStore/ --xitem_file <WORKING_DIR>/MY_STORE_ROOT_DIR/XilinxBoardStore/boards/<MY_COMPANY>/<MY_NEW_BOARD_SHORT_NAME>/xitem.json  --description "Adding <MY_NEW_BOARD_SHORT_NAME> <BOARD_REVISION> to the XilinxBoardStore" --product Vivado --version "<VIVADO-RELEASE_VERSION e.g 2018.1>" 

E) Trigger refresh from Vivado Tcl Console

set_property LOCAL_ROOT_DIR “” [xhub::get_xstores xilinx_board_store]
set_property LOCAL_ROOT_DIR "<WORKING_DIR>/MY_STORE_ROOT_DIR" [xhub::get_xstores xilinx_board_store]

#Check if newly added board appears in the command list
join [xhub::get_xitems -of_objects [xhub::get_xstores xilinx_board_store]] \n