Perform the following steps to use board file linter:
- Board developers are required to add document type declaration (DOCTYPE) in
the XML files when checking validity. Following is an example DOCTYPE
<!DOCTYPE board SYSTEM "/proj/xbuilds/<2020.2>_daily_latest/installs/lin64/Vivado/2020.2/data/boards/board_schemas/current/board.dtd">
- The DOCTYPE declaration must be removed before the XML files are actually published. This is because the DOCTYPE refers a path (Vivado installation) that is not valid for users.
- If the board developer fails to include a DOCTYPE, Vivado triggers a
Warning: [Board 49-117] Board file '/home/mccrohan/tmp/board.xml' did not contain a DOCTYPE declaration or the DOCTYPE declaration did not reference a valid DTD so XML validation is ignored for this file.
- Launch Vivado and run
validate_board_filesin the Tcl console.
validate_board_filesis a new Tcl command to invoke linter. It currently takes one parameter, which is the name of a directory containing the board XML files (board.xml, preset.xml, part0_pins.xml).
Description: Check whether the XML files describing a board in the given directory are valid. The XML files must contain an appropriate DOCTYPE declaration to be fully validated. Examples: <!DOCTYPE board SYSTEM "board.dtd"> <!-- for board.xml --> <!DOCTYPE ip_presets SYSTEM "preset.dtd" <!-- for preset.xml --> <!DOCTYPE part_info SYSTEM "part0_pins.dtd" <!-- for part0_pins.xml --> Syntax: validate_board_files [-quiet] [-verbose] [<dir>...] Returns: ok if all board files are valid Usage: Name Description ----------------------- [-quiet] Ignore command errors [-verbose] Suspend message limits during command execution [<dir>] The name of a directory containing the board files (board.xml, part0_pins.xml, preset.xml) to be checked Categories: Object, Project, XPS, Board