aboutsummaryrefslogtreecommitdiffstats
path: root/ecp5/bitstream.cc
diff options
context:
space:
mode:
authorYRabbit <rabbit@yrabbit.cyou>2021-07-07 08:36:45 +1000
committerYRabbit <rabbit@yrabbit.cyou>2021-07-07 08:36:45 +1000
commit5f018df4e463a37f5a63aeb9bd7a55988e4f2027 (patch)
treefac6d37cd3954f44475d904094a3af231fc664f6 /ecp5/bitstream.cc
parentfd7734f0006d6522dea1ea4ea29750c8bafc77c4 (diff)
parentc696e885736ed052bd1d5e8fd91b42ee3bc6af9f (diff)
downloadnextpnr-5f018df4e463a37f5a63aeb9bd7a55988e4f2027.tar.gz
nextpnr-5f018df4e463a37f5a63aeb9bd7a55988e4f2027.tar.bz2
nextpnr-5f018df4e463a37f5a63aeb9bd7a55988e4f2027.zip
Merge branch 'master' into io_port
Diffstat (limited to 'ecp5/bitstream.cc')
-rw-r--r--ecp5/bitstream.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/ecp5/bitstream.cc b/ecp5/bitstream.cc
index c92de083..a544f2b7 100644
--- a/ecp5/bitstream.cc
+++ b/ecp5/bitstream.cc
@@ -1019,6 +1019,11 @@ void write_bitstream(Context *ctx, std::string base_config_file, std::string tex
tg.config.add_enum(std::string("DCC_") + belname[0] + belname.substr(4) + ".MODE", "DCCA");
cc.tilegroups.push_back(tg);
}
+ } else if (ci->type == ctx->id("DCSC")) {
+ std::set<std::string> dcs_tiles{"EBR_CMUX_LL", "EBR_CMUX_UL", "EBR_CMUX_LL_25K", "DSP_CMUX_UL"};
+ std::string tile = ctx->get_tile_by_type_loc(bel.location.y, bel.location.x, dcs_tiles);
+ std::string dcs = ctx->loc_info(bel)->bel_data[bel.index].name.get();
+ cc.tiles[tile].add_enum(dcs + ".DCSMODE", str_or_default(ci->attrs, ctx->id("DCSMODE"), "POS"));
} else if (ci->type == ctx->id("DP16KD")) {
TileGroup tg;
Loc loc = ctx->getBelLocation(ci->bel);