From a30b5c4c5144f51a0f6acea784fc60ea6e9ffb3c Mon Sep 17 00:00:00 2001 From: Jerry Zhao Date: Thu, 13 Apr 2023 15:15:46 -0700 Subject: [PATCH] Use __has_include to select between dtm/tsi spiketile --- .../chipyard/src/main/resources/csrc/spiketile.cc | 13 +++++++------ .../src/main/resources/csrc/spiketile_dtm.h | 0 .../csrc/spiketile_dtm/spiketile_htif_mode.h | 1 - .../src/main/resources/csrc/spiketile_tsi.h | 0 .../csrc/spiketile_tsi/spiketile_htif_mode.h | 1 - generators/chipyard/src/main/scala/SpikeTile.scala | 4 ++-- 6 files changed, 9 insertions(+), 10 deletions(-) create mode 100644 generators/chipyard/src/main/resources/csrc/spiketile_dtm.h delete mode 100644 generators/chipyard/src/main/resources/csrc/spiketile_dtm/spiketile_htif_mode.h create mode 100644 generators/chipyard/src/main/resources/csrc/spiketile_tsi.h delete mode 100644 generators/chipyard/src/main/resources/csrc/spiketile_tsi/spiketile_htif_mode.h diff --git a/generators/chipyard/src/main/resources/csrc/spiketile.cc b/generators/chipyard/src/main/resources/csrc/spiketile.cc index c1dea45c..3b14079b 100644 --- a/generators/chipyard/src/main/resources/csrc/spiketile.cc +++ b/generators/chipyard/src/main/resources/csrc/spiketile.cc @@ -9,14 +9,14 @@ #include #include #include -#include "spiketile_htif_mode.h" -#if defined(SPIKETILE_HTIF_TSI) +#if __has_include("spiketile_tsi.h") +#define SPIKETILE_HTIF_TSI extern htif_t* tsi; -#elif defined(SPIKETILE_HTIF_DTM) +#endif +#if __has_include("spiketile_dtm.h") +#define SPIKETILE_HTIF_DTM extern htif_t* dtm; -#else -#error "SpikeTile must be used with the TSI or DTM-based HTIF bringup" #endif enum transfer_t { @@ -348,7 +348,8 @@ extern "C" void spike_tile(int hartid, char* isa, #if defined(SPIKETILE_HTIF_TSI) if (!simif->htif && tsi) simif->htif = tsi; -#elif defined(SPIKETILE_HTIF_DTM) +#endif +#if defined(SPIKETILE_HTIF_DTM) if (!simif->htif && dtm) simif->htif = dtm; #endif diff --git a/generators/chipyard/src/main/resources/csrc/spiketile_dtm.h b/generators/chipyard/src/main/resources/csrc/spiketile_dtm.h new file mode 100644 index 00000000..e69de29b diff --git a/generators/chipyard/src/main/resources/csrc/spiketile_dtm/spiketile_htif_mode.h b/generators/chipyard/src/main/resources/csrc/spiketile_dtm/spiketile_htif_mode.h deleted file mode 100644 index 5c1c3041..00000000 --- a/generators/chipyard/src/main/resources/csrc/spiketile_dtm/spiketile_htif_mode.h +++ /dev/null @@ -1 +0,0 @@ -#define SPIKETILE_HTIF_DTM diff --git a/generators/chipyard/src/main/resources/csrc/spiketile_tsi.h b/generators/chipyard/src/main/resources/csrc/spiketile_tsi.h new file mode 100644 index 00000000..e69de29b diff --git a/generators/chipyard/src/main/resources/csrc/spiketile_tsi/spiketile_htif_mode.h b/generators/chipyard/src/main/resources/csrc/spiketile_tsi/spiketile_htif_mode.h deleted file mode 100644 index 240e6186..00000000 --- a/generators/chipyard/src/main/resources/csrc/spiketile_tsi/spiketile_htif_mode.h +++ /dev/null @@ -1 +0,0 @@ -#define SPIKETILE_HTIF_TSI diff --git a/generators/chipyard/src/main/scala/SpikeTile.scala b/generators/chipyard/src/main/scala/SpikeTile.scala index 66d18e7a..c6ec13ae 100644 --- a/generators/chipyard/src/main/scala/SpikeTile.scala +++ b/generators/chipyard/src/main/scala/SpikeTile.scala @@ -305,9 +305,9 @@ class SpikeBlackBox( addResource("/vsrc/spiketile.v") addResource("/csrc/spiketile.cc") if (use_dtm) { - addResource("/csrc/spiketile_dtm/spiketile_htif_mode.h") + addResource("/csrc/spiketile_dtm.h") } else { - addResource("/csrc/spiketile_tsi/spiketile_htif_mode.h") + addResource("/csrc/spiketile_tsi.h") } }