aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/include
diff options
context:
space:
mode:
authorMartin Braun <martin.braun@ettus.com>2019-08-27 08:59:10 -0700
committerMartin Braun <martin.braun@ettus.com>2019-11-26 11:49:39 -0800
commit932ff0537bd61360e2ddaf211d6d2cafb0ddaa67 (patch)
tree80312e3b1da931f17b5c96a42e978639adf9d8d0 /host/lib/include
parent01284980b1d7227f1c11496d2be939bb4b23adb1 (diff)
downloaduhd-932ff0537bd61360e2ddaf211d6d2cafb0ddaa67.tar.gz
uhd-932ff0537bd61360e2ddaf211d6d2cafb0ddaa67.tar.bz2
uhd-932ff0537bd61360e2ddaf211d6d2cafb0ddaa67.zip
rfnoc: client_zero can track num SEPs and num ctrl EPs separately
Diffstat (limited to 'host/lib/include')
-rw-r--r--host/lib/include/uhdlib/rfnoc/client_zero.hpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/host/lib/include/uhdlib/rfnoc/client_zero.hpp b/host/lib/include/uhdlib/rfnoc/client_zero.hpp
index 43f955870..f022c2dfa 100644
--- a/host/lib/include/uhdlib/rfnoc/client_zero.hpp
+++ b/host/lib/include/uhdlib/rfnoc/client_zero.hpp
@@ -75,12 +75,24 @@ public:
return _num_stream_endpoints;
};
+ //! Return the number of stream endpoints connected to the control crossbar
+ size_t get_num_ctrl_endpoints() const
+ {
+ return _num_ctrl_endpoints;
+ };
+
//! Return the number of transports available
size_t get_num_transports()
{
return _num_transports;
};
+ //! Return the control crossbar port of the block \p block_idx
+ size_t get_ctrl_xbar_port(const size_t block_idx) const
+ {
+ return 1 + _num_ctrl_endpoints + block_idx;
+ }
+
//! Return whether or not the device includes a CHDR crossbar
bool has_chdr_crossbar()
{
@@ -189,6 +201,7 @@ private:
uint16_t _device_type;
uint16_t _num_blocks;
uint16_t _num_stream_endpoints;
+ uint16_t _num_ctrl_endpoints;
uint16_t _num_transports;
bool _has_chdr_crossbar;
uint16_t _num_edges;