From 3ab92a83c8f051c7f52511eebfc4dcd9fca92251 Mon Sep 17 00:00:00 2001 From: Ciro Nishiguchi Date: Mon, 11 May 2020 12:57:22 -0500 Subject: uhd: Fix infinite recursion in N3xx timed commands The implementation of set_command_time was calling wb_iface set_time, which in turn makes a recursive call to set_command_time. This removes the erroneous recursive call. --- host/lib/usrp/dboard/magnesium/magnesium_radio_control.cpp | 10 ---------- host/lib/usrp/dboard/magnesium/magnesium_radio_control.hpp | 5 ----- host/lib/usrp/dboard/rhodium/rhodium_radio_control.cpp | 11 ----------- host/lib/usrp/dboard/rhodium/rhodium_radio_control.hpp | 5 ----- 4 files changed, 31 deletions(-) (limited to 'host/lib/usrp/dboard') diff --git a/host/lib/usrp/dboard/magnesium/magnesium_radio_control.cpp b/host/lib/usrp/dboard/magnesium/magnesium_radio_control.cpp index e4d446f95..e52551365 100644 --- a/host/lib/usrp/dboard/magnesium/magnesium_radio_control.cpp +++ b/host/lib/usrp/dboard/magnesium/magnesium_radio_control.cpp @@ -1143,16 +1143,6 @@ sensor_value_t magnesium_radio_control_impl::get_tx_sensor( _rpc_prefix + "get_sensor", "TX", name, chan)); } -/************************************************************************** - * node_t API Calls - *************************************************************************/ -void magnesium_radio_control_impl::set_command_time( - uhd::time_spec_t time, const size_t chan) -{ - node_t::set_command_time(time, chan); - _wb_ifaces.at(chan)->set_time(time); -} - /************************************************************************** * Radio Identification API Calls *************************************************************************/ diff --git a/host/lib/usrp/dboard/magnesium/magnesium_radio_control.hpp b/host/lib/usrp/dboard/magnesium/magnesium_radio_control.hpp index 3c965866e..fc8c79b5a 100644 --- a/host/lib/usrp/dboard/magnesium/magnesium_radio_control.hpp +++ b/host/lib/usrp/dboard/magnesium/magnesium_radio_control.hpp @@ -167,11 +167,6 @@ public: const size_t chan, const uhd::direction_t direction) const; std::string get_fe_name(const size_t chan, const uhd::direction_t direction) const; - /************************************************************************** - * node_t API Calls - *************************************************************************/ - void set_command_time(uhd::time_spec_t time, const size_t chan); - private: /************************************************************************** * Helpers diff --git a/host/lib/usrp/dboard/rhodium/rhodium_radio_control.cpp b/host/lib/usrp/dboard/rhodium/rhodium_radio_control.cpp index f8ec47c18..4ee8a9a6d 100644 --- a/host/lib/usrp/dboard/rhodium/rhodium_radio_control.cpp +++ b/host/lib/usrp/dboard/rhodium/rhodium_radio_control.cpp @@ -702,17 +702,6 @@ bool rhodium_radio_control_impl::get_lo_lock_status(const direction_t dir) const return (dir == RX_DIRECTION) ? _rx_lo->get_lock_status() : _tx_lo->get_lock_status(); } -/************************************************************************** - * node_t API Calls - *************************************************************************/ -void rhodium_radio_control_impl::set_command_time( - uhd::time_spec_t time, const size_t chan) -{ - UHD_ASSERT_THROW(chan == 0); - node_t::set_command_time(time, chan); - _wb_iface->set_time(time); -} - // Register the block UHD_RFNOC_BLOCK_REGISTER_FOR_DEVICE_DIRECT( rhodium_radio_control, RADIO_BLOCK, N320, "Radio", true, "radio_clk", "bus_clk"); diff --git a/host/lib/usrp/dboard/rhodium/rhodium_radio_control.hpp b/host/lib/usrp/dboard/rhodium/rhodium_radio_control.hpp index 4d2bc38ad..1d33f0357 100644 --- a/host/lib/usrp/dboard/rhodium/rhodium_radio_control.hpp +++ b/host/lib/usrp/dboard/rhodium/rhodium_radio_control.hpp @@ -154,11 +154,6 @@ public: const size_t chan, const uhd::direction_t direction) const; std::string get_fe_name(const size_t chan, const uhd::direction_t direction) const; - /************************************************************************** - * node_t API Calls - *************************************************************************/ - void set_command_time(uhd::time_spec_t time, const size_t chan); - /************************************************************************ * ??? calls ***********************************************************************/ -- cgit v1.2.3