aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/usrp/multi_usrp.cpp
diff options
context:
space:
mode:
authormichael-west <michael.west@ettus.com>2014-08-08 17:40:54 -0700
committerMartin Braun <martin.braun@ettus.com>2014-08-18 22:52:53 +0200
commit8055ac0d4f10c8c13709d49fedcc66615e472a79 (patch)
tree0e47c9967061e45f22630c5e8e4e8ab7288be317 /host/lib/usrp/multi_usrp.cpp
parent7297ebffc344cce30f2570b1587beae94adeed1e (diff)
downloaduhd-8055ac0d4f10c8c13709d49fedcc66615e472a79.tar.gz
uhd-8055ac0d4f10c8c13709d49fedcc66615e472a79.tar.bz2
uhd-8055ac0d4f10c8c13709d49fedcc66615e472a79.zip
- Fixes for channel alignment
- Added analog delay for radio clock - Added analog delay for DAC reference clocks - Removed resetting of clock control - Removed setting of reference clock and PPS to external sources during initialization - Fixes for set_time_unknown_pps - Removed wait for PPS edge after setting time from GPSDO - Changed set_time_unknonw_pps to time out based on system time rather than device VITA time
Diffstat (limited to 'host/lib/usrp/multi_usrp.cpp')
-rw-r--r--host/lib/usrp/multi_usrp.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/host/lib/usrp/multi_usrp.cpp b/host/lib/usrp/multi_usrp.cpp
index 71b1f8995..c13d3efba 100644
--- a/host/lib/usrp/multi_usrp.cpp
+++ b/host/lib/usrp/multi_usrp.cpp
@@ -394,17 +394,19 @@ public:
void set_time_unknown_pps(const time_spec_t &time_spec){
UHD_MSG(status) << " 1) catch time transition at pps edge" << std::endl;
- time_spec_t time_start = get_time_now();
+ boost::system_time end_time = boost::get_system_time() + boost::posix_time::milliseconds(1100);
time_spec_t time_start_last_pps = get_time_last_pps();
- while(true){
- if (get_time_last_pps() != time_start_last_pps) break;
- if ((get_time_now() - time_start) > time_spec_t(1.1)){
+ while (time_start_last_pps == get_time_last_pps())
+ {
+ if (boost::get_system_time() > end_time)
+ {
throw uhd::runtime_error(
"Board 0 may not be getting a PPS signal!\n"
"No PPS detected within the time interval.\n"
"See the application notes for your device.\n"
);
}
+ boost::this_thread::sleep(boost::posix_time::milliseconds(1));
}
UHD_MSG(status) << " 2) set times next pps (synchronously)" << std::endl;