aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiodrag Milanovic <mmicko@gmail.com>2023-03-09 11:03:44 +0100
committermyrtle <gatecat@ds0.me>2023-03-16 13:37:23 +0100
commitd5b5f7e4b2573444081ab30d400c3db5d9e278d8 (patch)
tree7bf5ea93d7c98f140f45229e3b3d11fc2fdb99ab
parent4396a646a7c10d4748c8b2ae105b100b7f1fedb7 (diff)
downloadnextpnr-d5b5f7e4b2573444081ab30d400c3db5d9e278d8.tar.gz
nextpnr-d5b5f7e4b2573444081ab30d400c3db5d9e278d8.tar.bz2
nextpnr-d5b5f7e4b2573444081ab30d400c3db5d9e278d8.zip
add new field handling in chip config format
-rw-r--r--machxo2/config.cc3
-rw-r--r--machxo2/config.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/machxo2/config.cc b/machxo2/config.cc
index 34c4954e..8021369d 100644
--- a/machxo2/config.cc
+++ b/machxo2/config.cc
@@ -268,6 +268,7 @@ bool TileConfig::empty() const { return carcs.empty() && cwords.empty() && cenum
std::ostream &operator<<(std::ostream &out, const ChipConfig &cc)
{
out << ".device " << cc.chip_name << std::endl << std::endl;
+ out << ".variant " << cc.chip_variant << std::endl << std::endl;
for (const auto &meta : cc.metadata)
out << ".comment " << meta << std::endl;
for (const auto &sc : cc.sysconfig)
@@ -312,6 +313,8 @@ std::istream &operator>>(std::istream &in, ChipConfig &cc)
in >> verb;
if (verb == ".device") {
in >> cc.chip_name;
+ } else if (verb == ".variant") {
+ in >> cc.chip_variant;
} else if (verb == ".comment") {
std::string line;
getline(in, line);
diff --git a/machxo2/config.h b/machxo2/config.h
index a71b29a8..141409bc 100644
--- a/machxo2/config.h
+++ b/machxo2/config.h
@@ -112,6 +112,7 @@ class ChipConfig
{
public:
std::string chip_name;
+ std::string chip_variant;
std::vector<std::string> metadata;
std::map<std::string, TileConfig> tiles;
std::vector<TileGroup> tilegroups;