diff options
| author | Josh Blum <josh@joshknows.com> | 2010-08-31 16:57:35 -0700 | 
|---|---|---|
| committer | Josh Blum <josh@joshknows.com> | 2010-08-31 16:57:35 -0700 | 
| commit | 4829a9be550bf5479f9f5df66905d22e50de3a25 (patch) | |
| tree | 53a5277d8355c72b00a0d3d589d4544b3893741d /host/lib/usrp/usrp1/clock_ctrl.cpp | |
| parent | d5ffc2d767d4086aa3f4d88e88034c355d4e9a3b (diff) | |
| parent | 0616872e35ac6429c19c2495bf4e378551bdd60e (diff) | |
| download | uhd-4829a9be550bf5479f9f5df66905d22e50de3a25.tar.gz uhd-4829a9be550bf5479f9f5df66905d22e50de3a25.tar.bz2 uhd-4829a9be550bf5479f9f5df66905d22e50de3a25.zip | |
Merge branch 'usrp1' into next
Diffstat (limited to 'host/lib/usrp/usrp1/clock_ctrl.cpp')
| -rw-r--r-- | host/lib/usrp/usrp1/clock_ctrl.cpp | 60 | 
1 files changed, 60 insertions, 0 deletions
| diff --git a/host/lib/usrp/usrp1/clock_ctrl.cpp b/host/lib/usrp/usrp1/clock_ctrl.cpp new file mode 100644 index 000000000..68c5f5320 --- /dev/null +++ b/host/lib/usrp/usrp1/clock_ctrl.cpp @@ -0,0 +1,60 @@ +// +// Copyright 2010 Ettus Research LLC +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program.  If not, see <http://www.gnu.org/licenses/>. +// + +#include "clock_ctrl.hpp" +#include "fpga_regs_standard.h" +#include <uhd/utils/assert.hpp> +#include <boost/cstdint.hpp> +#include <boost/assign/list_of.hpp> +#include <boost/foreach.hpp> +#include <utility> +#include <iostream> + +using namespace uhd; + +/*********************************************************************** + * Constants + **********************************************************************/ +static const double master_clock_rate = 64e6; + +/*********************************************************************** + * Clock Control Implementation + **********************************************************************/ +class usrp1_clock_ctrl_impl : public usrp1_clock_ctrl { +public: +    usrp1_clock_ctrl_impl(usrp1_iface::sptr iface) +    { +        _iface = iface; +    } + +    double get_master_clock_freq(void) +    { +        return master_clock_rate;  +    } + +private: +    usrp1_iface::sptr _iface; + +}; + +/*********************************************************************** + * Clock Control Make + **********************************************************************/ +usrp1_clock_ctrl::sptr usrp1_clock_ctrl::make(usrp1_iface::sptr iface) +{ +    return sptr(new usrp1_clock_ctrl_impl(iface)); +} | 
