aboutsummaryrefslogtreecommitdiffstats
path: root/ecp5
diff options
context:
space:
mode:
authorDavid Shah <dave@ds0.me>2018-11-09 15:17:37 +0000
committerDavid Shah <dave@ds0.me>2018-11-15 11:30:27 +0000
commitbc022173f01794ea67809f2d7cdc54c3c3d6696f (patch)
treeadd17be5cc0229887b227c497bb857dbe3b318ba /ecp5
parent36178a571354302cfb3166f7bf83f91cf754ef70 (diff)
downloadnextpnr-bc022173f01794ea67809f2d7cdc54c3c3d6696f.tar.gz
nextpnr-bc022173f01794ea67809f2d7cdc54c3c3d6696f.tar.bz2
nextpnr-bc022173f01794ea67809f2d7cdc54c3c3d6696f.zip
ecp5: clangformat
Signed-off-by: David Shah <dave@ds0.me>
Diffstat (limited to 'ecp5')
-rw-r--r--ecp5/bitstream.cc14
-rw-r--r--ecp5/pack.cc27
2 files changed, 23 insertions, 18 deletions
diff --git a/ecp5/bitstream.cc b/ecp5/bitstream.cc
index 2df0ed0b..5af051c7 100644
--- a/ecp5/bitstream.cc
+++ b/ecp5/bitstream.cc
@@ -1087,14 +1087,18 @@ void write_bitstream(Context *ctx, std::string base_config_file, std::string tex
} else if (ci->type == id_EXTREFB) {
TileGroup tg;
tg.tiles = get_dcu_tiles(ctx, ci->bel);
- tg.config.add_word("EXTREF.REFCK_DCBIAS_EN", parse_config_str(str_or_default(ci->params, ctx->id("REFCK_DCBIAS_EN"), "0"), 1));
- tg.config.add_word("EXTREF.REFCK_RTERM", parse_config_str(str_or_default(ci->params, ctx->id("REFCK_RTERM"), "0"), 1));
- tg.config.add_word("EXTREF.REFCK_PWDNB", parse_config_str(str_or_default(ci->params, ctx->id("REFCK_PWDNB"), "0"), 1));
+ tg.config.add_word("EXTREF.REFCK_DCBIAS_EN",
+ parse_config_str(str_or_default(ci->params, ctx->id("REFCK_DCBIAS_EN"), "0"), 1));
+ tg.config.add_word("EXTREF.REFCK_RTERM",
+ parse_config_str(str_or_default(ci->params, ctx->id("REFCK_RTERM"), "0"), 1));
+ tg.config.add_word("EXTREF.REFCK_PWDNB",
+ parse_config_str(str_or_default(ci->params, ctx->id("REFCK_PWDNB"), "0"), 1));
cc.tilegroups.push_back(tg);
} else if (ci->type == id_PCSCLKDIV) {
Loc loc = ctx->getBelLocation(ci->bel);
- std::string tname = ctx->getTileByTypeAndLocation(loc.y+1, loc.x, "BMID_0H");
- cc.tiles[tname].add_enum("PCSCLKDIV" + std::to_string(loc.z), str_or_default(ci->params, ctx->id("GSR"), "ENABLED"));
+ std::string tname = ctx->getTileByTypeAndLocation(loc.y + 1, loc.x, "BMID_0H");
+ cc.tiles[tname].add_enum("PCSCLKDIV" + std::to_string(loc.z),
+ str_or_default(ci->params, ctx->id("GSR"), "ENABLED"));
} else {
NPNR_ASSERT_FALSE("unsupported cell type");
}
diff --git a/ecp5/pack.cc b/ecp5/pack.cc
index ab31a8f3..fdf04d4e 100644
--- a/ecp5/pack.cc
+++ b/ecp5/pack.cc
@@ -236,14 +236,14 @@ class Ecp5Packer
}
// Return true if an port is a top level port that provides its own IOBUF
- bool is_top_port(PortRef &port) {
+ bool is_top_port(PortRef &port)
+ {
if (port.cell == nullptr)
return false;
if (port.cell->type == id_DCUA) {
return port.port == id_CH0_HDINP || port.port == id_CH0_HDINN || port.port == id_CH0_HDOUTP ||
- port.port == id_CH0_HDOUTN ||
- port.port == id_CH1_HDINP || port.port == id_CH1_HDINN || port.port == id_CH1_HDOUTP ||
- port.port == id_CH1_HDOUTN;
+ port.port == id_CH0_HDOUTN || port.port == id_CH1_HDINP || port.port == id_CH1_HDINN ||
+ port.port == id_CH1_HDOUTP || port.port == id_CH1_HDOUTN;
} else if (port.cell->type == id_EXTREFB) {
return port.port == id_REFCLKP || port.port == id_REFCLKN;
} else {
@@ -252,20 +252,23 @@ class Ecp5Packer
}
// Return true if a net only drives a top port
- bool drives_top_port(NetInfo *net, PortRef &tp) {
+ bool drives_top_port(NetInfo *net, PortRef &tp)
+ {
if (net == nullptr)
return false;
for (auto user : net->users) {
if (is_top_port(user)) {
if (net->users.size() > 1)
- log_error(" port %s.%s must be connected to (and only to) a top level pin\n", user.cell->name.c_str(ctx), user.port.c_str(ctx));
+ log_error(" port %s.%s must be connected to (and only to) a top level pin\n",
+ user.cell->name.c_str(ctx), user.port.c_str(ctx));
tp = user;
return true;
}
}
if (net->driver.cell != nullptr && is_top_port(net->driver)) {
if (net->users.size() > 1)
- log_error(" port %s.%s must be connected to (and only to) a top level pin\n", net->driver.cell->name.c_str(ctx), net->driver.port.c_str(ctx));
+ log_error(" port %s.%s must be connected to (and only to) a top level pin\n",
+ net->driver.cell->name.c_str(ctx), net->driver.port.c_str(ctx));
tp = net->driver;
return true;
}
@@ -308,9 +311,8 @@ class Ecp5Packer
}
}
} else if (drives_top_port(ionet, tp)) {
- log_info("%s feeds %s %s.%s, removing %s %s.\n", ci->name.c_str(ctx), tp.cell->type.c_str(ctx), tp.cell->name.c_str(ctx),
- tp.port.c_str(ctx),
- ci->type.c_str(ctx), ci->name.c_str(ctx));
+ log_info("%s feeds %s %s.%s, removing %s %s.\n", ci->name.c_str(ctx), tp.cell->type.c_str(ctx),
+ tp.cell->name.c_str(ctx), tp.port.c_str(ctx), ci->type.c_str(ctx), ci->name.c_str(ctx));
if (ionet != nullptr) {
ctx->nets.erase(ionet->name);
tp.cell->ports.at(tp.port).net = nullptr;
@@ -349,7 +351,6 @@ class Ecp5Packer
trio->attrs[ctx->id("BEL")] = ctx->getBelName(pinBel).str(ctx);
}
}
-
}
}
flush_cells();
@@ -1123,7 +1124,7 @@ class Ecp5Packer
}
if (!dcu->attrs.count(ctx->id("BEL")))
log_error("DCU must be constrained to a Bel!\n");
- std::string bel = dcu->attrs.at(ctx->id("BEL"));
+ std::string bel = dcu->attrs.at(ctx->id("BEL"));
NPNR_ASSERT(bel.substr(bel.length() - 3) == "DCU");
bel.replace(bel.length() - 3, 3, "EXTREF");
ci->attrs[ctx->id("BEL")] = bel;
@@ -1139,7 +1140,7 @@ class Ecp5Packer
Loc loc = ctx->getBelLocation(bel);
// DCU0 -> CLKDIV z=0; DCU1 -> CLKDIV z=1
ci->constr_abs_z = true;
- ci->constr_z = (loc.x >= 69) ? 1 : 0;
+ ci->constr_z = (loc.x >= 69) ? 1 : 0;
}
}
}