🐛 fix: Step 1 JTAG check uses shared vivado path finder + build_tool_command
Root cause (2 bugs): 1. check_zynq_jtag() used config.vitis_path which no longer exists (config now uses xilinx_path) → always got empty path → 'Vivado not found' 2. _get_vivado_path() only checked hardcoded Linux paths, no version scanning, no .bat support on Windows Fix: - Added get_vivado_path() in vitis_checker.py (consistent with get_xsct_path, get_program_flash_path, etc.) - Uses _find_executable() shared logic: scans Vivado/*/bin + Vitis/*/bin, picks newest version, supports .bat on Windows - zynq_checker.py now uses get_vivado_path() + build_tool_command() for proper environment setup (settings64 sourcing on Linux) - Removed obsolete _get_vivado_path() + unused shutil import
This commit is contained in:
@@ -317,6 +317,19 @@ def get_bootgen_path(vitis_path: str = "", xilinx_root: str = "") -> str | None:
|
||||
return _find_executable("bootgen", vitis_path, platform.system().lower(), xilinx_root)
|
||||
|
||||
|
||||
def get_vivado_path(vitis_path: str = "", xilinx_root: str = "") -> str | None:
|
||||
"""Find the Vivado executable (JTAG operations via hw_server).
|
||||
|
||||
Args:
|
||||
vitis_path: Legacy Vitis installation directory.
|
||||
xilinx_root: Xilinx root directory.
|
||||
|
||||
Returns:
|
||||
Path to vivado executable, or None.
|
||||
"""
|
||||
return _find_executable("vivado", vitis_path, platform.system().lower(), xilinx_root)
|
||||
|
||||
|
||||
# ── Tool version detection ───────────────────────────────────────────
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user