aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--host/lib/usrp/mpmd/mpmd_mboard_impl.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/host/lib/usrp/mpmd/mpmd_mboard_impl.cpp b/host/lib/usrp/mpmd/mpmd_mboard_impl.cpp
index 5c8fd5485..e7bd0cff9 100644
--- a/host/lib/usrp/mpmd/mpmd_mboard_impl.cpp
+++ b/host/lib/usrp/mpmd/mpmd_mboard_impl.cpp
@@ -290,9 +290,12 @@ mpmd_mboard_impl::mpmd_mboard_impl(
this->dboard_info.push_back(this_db_info);
}
- // Initialize mb_iface and mb_controller
- mb_iface = std::make_unique<mpmd_mb_iface>(mb_args, rpc);
- mb_ctrl = std::make_shared<rfnoc::mpmd_mb_controller>(rpc, device_info);
+ if (!mb_args.has_key("skip_init")) {
+ // Initialize mb_iface and mb_controller
+ mb_iface = std::make_unique<mpmd_mb_iface>(mb_args, rpc);
+ mb_ctrl = std::make_shared<rfnoc::mpmd_mb_controller>(rpc, device_info);
+ } // Note -- when skip_init is used, these are not initialized, and trying
+ // to use them will result in a null pointer dereference exception!
}
mpmd_mboard_impl::~mpmd_mboard_impl()