diff options
author | Josh Blum <josh@joshknows.com> | 2012-01-04 20:44:44 -0800 |
---|---|---|
committer | Josh Blum <josh@joshknows.com> | 2012-01-05 15:53:35 -0800 |
commit | 607b9a360067727a849d3088d5efa531192411e2 (patch) | |
tree | 371b82c55fcc18bd3bcb5451ef68ba8e942ed70b /host/lib/usrp/dboard/db_sbx_common.cpp | |
parent | 1c76adac7a5f4caa2ab07bc451b156980258130c (diff) | |
download | uhd-607b9a360067727a849d3088d5efa531192411e2.tar.gz uhd-607b9a360067727a849d3088d5efa531192411e2.tar.bz2 uhd-607b9a360067727a849d3088d5efa531192411e2.zip |
sbx: fix dboard tuning to cache result
Diffstat (limited to 'host/lib/usrp/dboard/db_sbx_common.cpp')
-rw-r--r-- | host/lib/usrp/dboard/db_sbx_common.cpp | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/host/lib/usrp/dboard/db_sbx_common.cpp b/host/lib/usrp/dboard/db_sbx_common.cpp index 32b6730d5..d9a922896 100644 --- a/host/lib/usrp/dboard/db_sbx_common.cpp +++ b/host/lib/usrp/dboard/db_sbx_common.cpp @@ -273,16 +273,12 @@ void sbx_xcvr::set_tx_ant(const std::string &ant){ /*********************************************************************** * Tuning **********************************************************************/ -void sbx_xcvr::set_rx_lo_freq(double freq){ - _rx_lo_freq = db_actual->set_lo_freq(dboard_iface::UNIT_RX, freq); -} - -void sbx_xcvr::set_tx_lo_freq(double freq){ - _tx_lo_freq = db_actual->set_lo_freq(dboard_iface::UNIT_TX, freq); -} - double sbx_xcvr::set_lo_freq(dboard_iface::unit_t unit, double target_freq) { - return db_actual->set_lo_freq(unit, target_freq); + const double actual = db_actual->set_lo_freq(unit, target_freq); + if (unit == dboard_iface::UNIT_RX) _rx_lo_freq = actual; + if (unit == dboard_iface::UNIT_TX) _tx_lo_freq = actual; + update_atr(); + return actual; } sensor_value_t sbx_xcvr::get_locked(dboard_iface::unit_t unit) { |