aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/usrp/usrp_e100/clock_ctrl.cpp
diff options
context:
space:
mode:
authorNick Foster <nick@nerdnetworks.org>2010-11-22 18:26:54 -0800
committerNick Foster <nick@nerdnetworks.org>2010-11-22 18:26:54 -0800
commit13ae4786e091d5581baf31c9967dca822ef15e39 (patch)
treeb649ffb942979f1efb6aef77d8d291bc9142e5cd /host/lib/usrp/usrp_e100/clock_ctrl.cpp
parent27e128ea70249bf4a79c6957fab14a3c4cad75f8 (diff)
downloaduhd-13ae4786e091d5581baf31c9967dca822ef15e39.tar.gz
uhd-13ae4786e091d5581baf31c9967dca822ef15e39.tar.bz2
uhd-13ae4786e091d5581baf31c9967dca822ef15e39.zip
E100: clock sync implemented.
Diffstat (limited to 'host/lib/usrp/usrp_e100/clock_ctrl.cpp')
-rw-r--r--host/lib/usrp/usrp_e100/clock_ctrl.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/host/lib/usrp/usrp_e100/clock_ctrl.cpp b/host/lib/usrp/usrp_e100/clock_ctrl.cpp
index e99560540..1fb1a7125 100644
--- a/host/lib/usrp/usrp_e100/clock_ctrl.cpp
+++ b/host/lib/usrp/usrp_e100/clock_ctrl.cpp
@@ -208,6 +208,32 @@ public:
this->send_reg(0x197);
this->latch_regs();
}
+
+ /***********************************************************************
+ * Clock reference control
+ **********************************************************************/
+ void use_internal_ref(void) {
+ _ad9522_regs.enable_ref2 = 1;
+ _ad9522_regs.enable_ref1 = 0;
+ _ad9522_regs.select_ref = ad9522_regs_t::SELECT_REF_REF2;
+ _ad9522_regs.enb_auto_ref_switchover = ad9522_regs_t::ENB_AUTO_REF_SWITCHOVER_MANUAL;
+ this->send_reg(0x01C);
+ }
+
+ void use_external_ref(void) {
+ _ad9522_regs.enable_ref2 = 0;
+ _ad9522_regs.enable_ref1 = 1;
+ _ad9522_regs.select_ref = ad9522_regs_t::SELECT_REF_REF1;
+ _ad9522_regs.enb_auto_ref_switchover = ad9522_regs_t::ENB_AUTO_REF_SWITCHOVER_MANUAL;
+ this->send_reg(0x01C);
+ }
+
+ void use_auto_ref(void) {
+ _ad9522_regs.enable_ref2 = 1;
+ _ad9522_regs.enable_ref1 = 1;
+ _ad9522_regs.select_ref = ad9522_regs_t::SELECT_REF_REF1;
+ _ad9522_regs.enb_auto_ref_switchover = ad9522_regs_t::ENB_AUTO_REF_SWITCHOVER_AUTO;
+ }
private:
usrp_e100_iface::sptr _iface;