blob: 8946be15427118e7cc92aa937e29b3aa8907246c [file] [log] [blame]
# Copyright (C) 2017-2020 The Project X-Ray Authors
#
# Use of this source code is governed by a ISC-style
# license that can be found in the LICENSE file or at
# https://opensource.org/licenses/ISC
#
# SPDX-License-Identifier: ISC
# Sweep all values of $prop on given I/O $port
# Write out bitstream for all legal values
set vals [list_property_value $prop $port]
foreach {val} $vals {
puts $val
# Not all listable properties are settable
# Its easiest to try setting and see if it sticks
set_property -quiet $prop $val $port
set got [get_property $prop $port]
if {"$got" != "$val"} {
puts " Skipping: wanted $val, got $got"
continue
}
if {[catch {write_bitstream -force design_$val.bit} issue]} {
puts "WARNING failed to write: $issue"
continue
}
# Only write checkpoints for acceptable bitstreams
write_checkpoint -force design_$val.dcp
}