diff options
author | Martin Braun <martin.braun@ettus.com> | 2016-06-15 19:21:55 -0700 |
---|---|---|
committer | Martin Braun <martin.braun@ettus.com> | 2016-06-22 18:00:26 -0700 |
commit | 8d2262f6b324c7a441956f2c4e805f79bd55c70b (patch) | |
tree | 14cc1bbf932ce6f88f6cb25f762deff1b4b8505d /host/lib/usrp/b200/b200_io_impl.cpp | |
parent | f28a52b652d4234aa88db7c2df80f8b4a6ce6535 (diff) | |
download | uhd-8d2262f6b324c7a441956f2c4e805f79bd55c70b.tar.gz uhd-8d2262f6b324c7a441956f2c4e805f79bd55c70b.tar.bz2 uhd-8d2262f6b324c7a441956f2c4e805f79bd55c70b.zip |
b200: Update DSPs after changing tick rate
Reviewed-By: Andrew Lynch <andrew.lynch@ni.com>
Reviewed-By: Michael West <michael.west@ettus.com>
Diffstat (limited to 'host/lib/usrp/b200/b200_io_impl.cpp')
-rw-r--r-- | host/lib/usrp/b200/b200_io_impl.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/host/lib/usrp/b200/b200_io_impl.cpp b/host/lib/usrp/b200/b200_io_impl.cpp index ec37f2f6f..d0d769504 100644 --- a/host/lib/usrp/b200/b200_io_impl.cpp +++ b/host/lib/usrp/b200/b200_io_impl.cpp @@ -162,6 +162,22 @@ void b200_impl::update_tick_rate(const double new_tick_rate) } } +void b200_impl::update_rx_dsp_tick_rate(const double tick_rate, rx_dsp_core_3000::sptr ddc, uhd::fs_path rx_dsp_path) +{ + ddc->set_tick_rate(tick_rate); + if (_tree->access<bool>(rx_dsp_path / "rate" / "set").get()) { + ddc->set_host_rate(_tree->access<double>(rx_dsp_path / "rate" / "value").get()); + } +} + +void b200_impl::update_tx_dsp_tick_rate(const double tick_rate, tx_dsp_core_3000::sptr duc, uhd::fs_path tx_dsp_path) +{ + duc->set_tick_rate(tick_rate); + if (_tree->access<bool>(tx_dsp_path / "rate" / "set").get()) { + duc->set_host_rate(_tree->access<double>(tx_dsp_path / "rate" / "value").get()); + } +} + #define CHECK_RATE_AND_THROW(rate) \ if (uhd::math::fp_compare::fp_compare_delta<double>(rate, uhd::math::FREQ_COMPARISON_DELTA_HZ) > \ uhd::math::fp_compare::fp_compare_delta<double>(ad9361_device_t::AD9361_MAX_CLOCK_RATE, uhd::math::FREQ_COMPARISON_DELTA_HZ)) { \ |