fpga: tools: Fix part selection in setupenv
The script setupenv_base.sh, which is used to setup the development environmnet in the open source toolchain, adds some functions to the shell that are used to interact with vivado. Some of the functions were looking in the wrong argument for the product name. This commit fixes the bug. In addition, supplying an incorrect part name returned a rather opaque error message. This commit also fixes the error handling so that the intended error message is displayed. Signed-off-by: Sam O'Brien <sam.obrien@ni.com> Original-commit: 471de61e4d9e53a038942f21f61d4b481b5f9853
This commit is contained in:
@@ -325,8 +325,8 @@ function viv_create_ip {
|
||||
ip_name=$1
|
||||
ip_dir=$(readlink -f $2)
|
||||
ip_vlnv=$3
|
||||
part_name=$(python $REPO_BASE_PATH/tools/scripts/viv_gen_part_id.py "${PRODUCT_ID_MAP[$2]}")
|
||||
if [[ -z $part_name ]]; then
|
||||
part_name=$(python $REPO_BASE_PATH/tools/scripts/viv_gen_part_id.py "${PRODUCT_ID_MAP[$4]}")
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo "ERROR: Invalid product name $4. Supported: ${!PRODUCT_ID_MAP[@]}"
|
||||
return 1
|
||||
fi
|
||||
@@ -376,6 +376,10 @@ function viv_modify_bd {
|
||||
|
||||
bd_path=$(readlink -f $1)
|
||||
part_name=$(python $REPO_BASE_PATH/tools/scripts/viv_gen_part_id.py "${PRODUCT_ID_MAP[$2]}")
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo "ERROR: Invalid product name $2. Supported: ${!PRODUCT_ID_MAP[@]}"
|
||||
return 1
|
||||
fi
|
||||
if [[ -f $bd_path ]]; then
|
||||
$VIVADO_EXEC -mode gui -source $(resolve_viv_path $VIV_IP_UTILS) -nolog -nojournal -tclargs modify $part_name $(resolve_viv_path $bd_path)
|
||||
else
|
||||
@@ -396,6 +400,10 @@ function viv_modify_tcl_bd {
|
||||
|
||||
src_path=$(readlink -f $1)
|
||||
part_name=$(python $REPO_BASE_PATH/tools/scripts/viv_gen_part_id.py "${PRODUCT_ID_MAP[$2]}")
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo "ERROR: Invalid product name $2. Supported: ${!PRODUCT_ID_MAP[@]}"
|
||||
return 1
|
||||
fi
|
||||
bd_ip_repo="${src_path%/top*}/lib/vivado_ipi"
|
||||
if [[ -f $src_path ]]; then
|
||||
$VIVADO_EXEC -mode gui -source $(resolve_viv_path $VIV_IP_UTILS) -nolog -nojournal -tclargs modify_bdtcl $part_name $(resolve_viv_path $src_path) $(resolve_viv_path $bd_ip_repo)
|
||||
@@ -416,8 +424,8 @@ function viv_ls_ip {
|
||||
return 1
|
||||
fi
|
||||
|
||||
part_name=$(python $REPO_BASE_PATH/tools/scripts/viv_gen_part_id.py "${PRODUCT_ID_MAP[$2]}")
|
||||
if [[ -z $part_name ]]; then
|
||||
part_name=$(python $REPO_BASE_PATH/tools/scripts/viv_gen_part_id.py "${PRODUCT_ID_MAP[$1]}")
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo "ERROR: Invalid product name $1. Supported: ${!PRODUCT_ID_MAP[@]}"
|
||||
return 1
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user