aboutsummaryrefslogtreecommitdiffstats
path: root/ecp5
diff options
context:
space:
mode:
authorDavid Shah <dave@ds0.me>2020-07-13 17:30:24 +0100
committerDavid Shah <dave@ds0.me>2020-07-13 17:30:24 +0100
commit467d26d9e698d49c7fd723005b26e454ddcc8998 (patch)
tree7e01578ce47adabfb7d7de657cb136dd1542e575 /ecp5
parent5f241f6baafd8e2e63f6058116d391707d410af0 (diff)
downloadnextpnr-467d26d9e698d49c7fd723005b26e454ddcc8998.tar.gz
nextpnr-467d26d9e698d49c7fd723005b26e454ddcc8998.tar.bz2
nextpnr-467d26d9e698d49c7fd723005b26e454ddcc8998.zip
ecp5: Add a warning for unknown LPF IOBUF attrs
Signed-off-by: David Shah <dave@ds0.me>
Diffstat (limited to 'ecp5')
-rw-r--r--ecp5/lpf.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/ecp5/lpf.cc b/ecp5/lpf.cc
index 18c81237..8b972380 100644
--- a/ecp5/lpf.cc
+++ b/ecp5/lpf.cc
@@ -31,6 +31,11 @@ static const std::unordered_set<std::string> sysconfig_keys = {
"COMPRESS_CONFIG", "CONFIG_MODE", "INBUF",
};
+static const std::unordered_set<std::string> iobuf_keys = {
+ "IO_TYPE", "BANK", "BANK_VCC", "VREF", "PULLMODE", "DRIVE", "SLEWRATE",
+ "CLAMP", "OPENDRAIN", "DIFFRESISTOR", "DIFFDRIVE", "HYSTERESIS", "TERMINATION",
+};
+
bool Arch::applyLPF(std::string filename, std::istream &in)
{
auto isempty = [](const std::string &str) {
@@ -145,6 +150,9 @@ bool Arch::applyLPF(std::string filename, std::istream &in)
"expected syntax 'IOBUF PORT <port name> <attr>=<value>...' (on line %d)\n",
lineno);
std::string key = setting.substr(0, eqpos), value = setting.substr(eqpos + 1);
+ if (!iobuf_keys.count(key))
+ log_warning("IOBUF '%s' attribute '%s' is not recognised (on line %d)\n",
+ cell.c_str(), key.c_str(), lineno);
fnd_cell->second->attrs[id(key)] = value;
}
}