aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/rfnoc
diff options
context:
space:
mode:
authorMartin Braun <martin.braun@ettus.com>2019-06-20 14:30:55 -0700
committerMartin Braun <martin.braun@ettus.com>2019-11-26 11:49:28 -0800
commitda89292f211fab421e5200f4831507ab5a4965a1 (patch)
tree14c8bf8bb3b2a4eef33b56993ad0bb150015247b /host/lib/rfnoc
parent58cecd867bd9f061b0b0072bb3338372498e1be3 (diff)
downloaduhd-da89292f211fab421e5200f4831507ab5a4965a1.tar.gz
uhd-da89292f211fab421e5200f4831507ab5a4965a1.tar.bz2
uhd-da89292f211fab421e5200f4831507ab5a4965a1.zip
rfnoc: graph: Initialize properties on all nodes during init
This will call init_props() on every block after the device initialization is complete, but before control returns to the user.
Diffstat (limited to 'host/lib/rfnoc')
-rw-r--r--host/lib/rfnoc/block_container.cpp7
-rw-r--r--host/lib/rfnoc/rfnoc_graph.cpp3
2 files changed, 10 insertions, 0 deletions
diff --git a/host/lib/rfnoc/block_container.cpp b/host/lib/rfnoc/block_container.cpp
index 6bbb3828b..e7fd396ba 100644
--- a/host/lib/rfnoc/block_container.cpp
+++ b/host/lib/rfnoc/block_container.cpp
@@ -79,5 +79,12 @@ void block_container_t::shutdown()
for (auto it = _blocks.begin(); it != _blocks.end(); ++it) {
node_accessor.shutdown(it->get());
}
+}
+void block_container_t::init_props()
+{
+ node_accessor_t node_accessor{};
+ for (auto it = _blocks.begin(); it != _blocks.end(); ++it) {
+ node_accessor.init_props(it->get());
+ }
}
diff --git a/host/lib/rfnoc/rfnoc_graph.cpp b/host/lib/rfnoc/rfnoc_graph.cpp
index 22fc8aee5..ca9c8573b 100644
--- a/host/lib/rfnoc/rfnoc_graph.cpp
+++ b/host/lib/rfnoc/rfnoc_graph.cpp
@@ -240,6 +240,9 @@ private:
}
}
+ UHD_LOG_TRACE("RFNOC::GRAPH", "Initializing properties on all blocks...");
+ _block_registry->init_props();
+
// Create graph, connect all static routes
// FIXME
}