aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgatecat <gatecat@ds0.me>2021-08-03 13:05:01 +0100
committerGitHub <noreply@github.com>2021-08-03 13:05:01 +0100
commit0c1ee5fad103b65d0a194596b2006c6622742e05 (patch)
tree4d12d5c2a83108e5556db14e942a5372f5f36fa9
parentef1fbfc651ea328dfb703c3b79d5b9ea123f2f0d (diff)
parent5482b9a0c600ccefe53fcdde1237a68895cf2204 (diff)
downloadnextpnr-0c1ee5fad103b65d0a194596b2006c6622742e05.tar.gz
nextpnr-0c1ee5fad103b65d0a194596b2006c6622742e05.tar.bz2
nextpnr-0c1ee5fad103b65d0a194596b2006c6622742e05.zip
Merge pull request #789 from YosysHQ/gatecat/ecp5-pdp-outreg
ecp5: Copy REGMODE in PDP mode to both A and B ports
-rw-r--r--ecp5/pack.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/ecp5/pack.cc b/ecp5/pack.cc
index 1336c609..d0077375 100644
--- a/ecp5/pack.cc
+++ b/ecp5/pack.cc
@@ -1488,7 +1488,10 @@ class Ecp5Packer
rename_param(ci, "CLKRMUX", "CLKRMUX");
rename_param(ci, "CSDECODE_W", "CSDECODE_A");
rename_param(ci, "CSDECODE_R", "CSDECODE_B");
- rename_param(ci, "REGMODE", "REGMODE_B");
+ std::string outreg = str_or_default(ci->params, ctx->id("REGMODE"), "NOREG");
+ ci->params[ctx->id("REGMODE_A")] = outreg;
+ ci->params[ctx->id("REGMODE_B")] = outreg;
+ ci->params.erase(ctx->id("REGMODE"));
rename_param(ci, "DATA_WIDTH_R", "DATA_WIDTH_B");
if (ci->ports.count(id_RST)) {
autocreate_empty_port(ci, id_RSTA);