aboutsummaryrefslogtreecommitdiffstats
path: root/host/include
diff options
context:
space:
mode:
authorMartin Braun <martin.braun@ettus.com>2018-01-23 17:13:19 -0800
committerMartin Braun <martin.braun@ettus.com>2018-02-19 14:51:47 -0800
commitf15dbc0484adf95c245ac86fb9aa7ea37ccce71b (patch)
tree3ac8c32c12c78c273f915180ef1cf6af994f551a /host/include
parentcee579077f2fbcc671e92d3c56b0e6caf20a52c6 (diff)
downloaduhd-f15dbc0484adf95c245ac86fb9aa7ea37ccce71b.tar.gz
uhd-f15dbc0484adf95c245ac86fb9aa7ea37ccce71b.tar.bz2
uhd-f15dbc0484adf95c245ac86fb9aa7ea37ccce71b.zip
rfnoc: Check noc_shell compat number at runtime
Diffstat (limited to 'host/include')
-rw-r--r--host/include/uhd/rfnoc/block_ctrl_base.hpp6
-rw-r--r--host/include/uhd/rfnoc/constants.hpp6
2 files changed, 10 insertions, 2 deletions
diff --git a/host/include/uhd/rfnoc/block_ctrl_base.hpp b/host/include/uhd/rfnoc/block_ctrl_base.hpp
index b36f7f77f..382dd1177 100644
--- a/host/include/uhd/rfnoc/block_ctrl_base.hpp
+++ b/host/include/uhd/rfnoc/block_ctrl_base.hpp
@@ -405,6 +405,12 @@ private:
//! The base address of this block (the address of block port 0)
uint32_t _base_address;
+ //! 64-bit NoC ID of this block
+ uint64_t _noc_id;
+
+ //! noc_shell compat number, as one 64-bit number [major,minor]
+ uint64_t _compat_num;
+
//! The (unique) block ID.
block_id_t _block_id;
diff --git a/host/include/uhd/rfnoc/constants.hpp b/host/include/uhd/rfnoc/constants.hpp
index 988a69246..2ddb197d8 100644
--- a/host/include/uhd/rfnoc/constants.hpp
+++ b/host/include/uhd/rfnoc/constants.hpp
@@ -24,6 +24,8 @@ static const std::string XML_PATH_ENV = "UHD_RFNOC_DIR";
//! If the block name can't be automatically detected, this name is used
static const std::string DEFAULT_BLOCK_NAME = "Block";
static const uint64_t DEFAULT_NOC_ID = 0xFFFFFFFFFFFFFFFF;
+static const size_t NOC_SHELL_COMPAT_MAJOR = 1;
+static const size_t NOC_SHELL_COMPAT_MINOR = 0;
static const size_t MAX_PACKET_SIZE = 8000; // bytes
static const size_t DEFAULT_PACKET_SIZE = 1456; // bytes
@@ -68,8 +70,8 @@ enum settingsbus_reg_t {
SR_READBACK_REG_FIFOSIZE = 2, // fifo size
SR_READBACK_REG_MTU = 3,
SR_READBACK_REG_BLOCKPORT_SIDS = 4,
- SR_READBACK_REG_USER = 5
- /* 6 currently unused */
+ SR_READBACK_REG_USER = 5,
+ SR_READBACK_COMPAT = 6
};
// AXI stream configuration bus (output master bus of axi wrapper) registers