aboutsummaryrefslogtreecommitdiffstats
path: root/ecp5/pack.cc
diff options
context:
space:
mode:
Diffstat (limited to 'ecp5/pack.cc')
-rw-r--r--ecp5/pack.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/ecp5/pack.cc b/ecp5/pack.cc
index 66cb81b2..cbf882a8 100644
--- a/ecp5/pack.cc
+++ b/ecp5/pack.cc
@@ -2316,7 +2316,9 @@ class Ecp5Packer
set_iologic_mode(iol, "IREG_OREG");
bool drives_iologic = false;
for (auto user : ci->ports.at(ctx->id("Z")).net->users)
- if (is_iologic_input_cell(ctx, user.cell) && user.port == ctx->id("D"))
+ if (is_iologic_input_cell(ctx, user.cell) &&
+ (user.port == ctx->id("D") ||
+ (user.cell->type == ctx->id("TRELLIS_FF") && user.port == ctx->id("DI"))))
drives_iologic = true;
if (drives_iologic) {
// Reconnect to PIO which the packer expects later on