diff options
| -rw-r--r-- | host/lib/usrp/b200/b200_impl.cpp | 7 | 
1 files changed, 4 insertions, 3 deletions
diff --git a/host/lib/usrp/b200/b200_impl.cpp b/host/lib/usrp/b200/b200_impl.cpp index da06e12b4..01c0f5cbf 100644 --- a/host/lib/usrp/b200/b200_impl.cpp +++ b/host/lib/usrp/b200/b200_impl.cpp @@ -822,6 +822,10 @@ void b200_impl::set_mb_eeprom(const uhd::usrp::mboard_eeprom_t &mb_eeprom)  void b200_impl::update_clock_source(const std::string &source)  { +    // present the PLL with a valid 10 MHz signal before switching its reference +    _gpio_state.ref_sel = (source == "gpsdo")? 1 : 0; +    this->update_gpio_state(); +      if (source == "internal"){          _adf4001_iface->set_lock_to_ext_ref(false);      } @@ -832,9 +836,6 @@ void b200_impl::update_clock_source(const std::string &source)      } else {          throw uhd::key_error("update_clock_source: unknown source: " + source);      } - -    _gpio_state.ref_sel = (source == "gpsdo")? 1 : 0; -    this->update_gpio_state();  }  void b200_impl::update_time_source(const std::string &source)  | 
