aboutsummaryrefslogtreecommitdiffstats
path: root/ecp5/main.cc
diff options
context:
space:
mode:
authorwhitequark <whitequark@whitequark.org>2020-06-25 15:11:47 +0000
committerwhitequark <whitequark@whitequark.org>2020-06-26 08:36:07 +0000
commit89e0cc8078ecbb57ca450cc6c8a40f6b634b8c9c (patch)
treee34454964eff6bf4d14f40b4f1c271cadea6d1fa /ecp5/main.cc
parentdc209f6344545196de8bf4de7abff2fcbd55732e (diff)
downloadnextpnr-89e0cc8078ecbb57ca450cc6c8a40f6b634b8c9c.tar.gz
nextpnr-89e0cc8078ecbb57ca450cc6c8a40f6b634b8c9c.tar.bz2
nextpnr-89e0cc8078ecbb57ca450cc6c8a40f6b634b8c9c.zip
Simplify and improve chipdb embedding/loading.
Diffstat (limited to 'ecp5/main.cc')
-rw-r--r--ecp5/main.cc30
1 files changed, 20 insertions, 10 deletions
diff --git a/ecp5/main.cc b/ecp5/main.cc
index f1cb9760..311f5401 100644
--- a/ecp5/main.cc
+++ b/ecp5/main.cc
@@ -49,16 +49,26 @@ ECP5CommandHandler::ECP5CommandHandler(int argc, char **argv) : CommandHandler(a
po::options_description ECP5CommandHandler::getArchOptions()
{
po::options_description specific("Architecture specific options");
- specific.add_options()("12k", "set device type to LFE5U-12F");
- specific.add_options()("25k", "set device type to LFE5U-25F");
- specific.add_options()("45k", "set device type to LFE5U-45F");
- specific.add_options()("85k", "set device type to LFE5U-85F");
- specific.add_options()("um-25k", "set device type to LFE5UM-25F");
- specific.add_options()("um-45k", "set device type to LFE5UM-45F");
- specific.add_options()("um-85k", "set device type to LFE5UM-85F");
- specific.add_options()("um5g-25k", "set device type to LFE5UM5G-25F");
- specific.add_options()("um5g-45k", "set device type to LFE5UM5G-45F");
- specific.add_options()("um5g-85k", "set device type to LFE5UM5G-85F");
+ if (Arch::isAvailable(ArchArgs::LFE5U_12F))
+ specific.add_options()("12k", "set device type to LFE5U-12F");
+ if (Arch::isAvailable(ArchArgs::LFE5U_25F))
+ specific.add_options()("25k", "set device type to LFE5U-25F");
+ if (Arch::isAvailable(ArchArgs::LFE5U_45F))
+ specific.add_options()("45k", "set device type to LFE5U-45F");
+ if (Arch::isAvailable(ArchArgs::LFE5U_85F))
+ specific.add_options()("85k", "set device type to LFE5U-85F");
+ if (Arch::isAvailable(ArchArgs::LFE5UM_25F))
+ specific.add_options()("um-25k", "set device type to LFE5UM-25F");
+ if (Arch::isAvailable(ArchArgs::LFE5UM_45F))
+ specific.add_options()("um-45k", "set device type to LFE5UM-45F");
+ if (Arch::isAvailable(ArchArgs::LFE5UM_85F))
+ specific.add_options()("um-85k", "set device type to LFE5UM-85F");
+ if (Arch::isAvailable(ArchArgs::LFE5UM5G_25F))
+ specific.add_options()("um5g-25k", "set device type to LFE5UM5G-25F");
+ if (Arch::isAvailable(ArchArgs::LFE5UM5G_45F))
+ specific.add_options()("um5g-45k", "set device type to LFE5UM5G-45F");
+ if (Arch::isAvailable(ArchArgs::LFE5UM5G_85F))
+ specific.add_options()("um5g-85k", "set device type to LFE5UM5G-85F");
specific.add_options()("package", po::value<std::string>(), "select device package (defaults to CABGA381)");
specific.add_options()("speed", po::value<int>(), "select device speedgrade (6, 7 or 8)");