diff options
Diffstat (limited to 'host')
| -rw-r--r-- | host/lib/include/uhdlib/usrp/cores/tx_frontend_core_200.hpp | 2 | ||||
| -rw-r--r-- | host/lib/usrp/cores/tx_frontend_core_200.cpp | 19 | 
2 files changed, 11 insertions, 10 deletions
| diff --git a/host/lib/include/uhdlib/usrp/cores/tx_frontend_core_200.hpp b/host/lib/include/uhdlib/usrp/cores/tx_frontend_core_200.hpp index 0221007d1..ae071c715 100644 --- a/host/lib/include/uhdlib/usrp/cores/tx_frontend_core_200.hpp +++ b/host/lib/include/uhdlib/usrp/cores/tx_frontend_core_200.hpp @@ -25,7 +25,7 @@ public:      virtual ~tx_frontend_core_200(void) = 0; -    static sptr make(uhd::wb_iface::sptr iface, const size_t base); +    static sptr make(uhd::wb_iface::sptr iface, const size_t base, const size_t offset=4);      virtual void set_mux(const std::string &mode) = 0; diff --git a/host/lib/usrp/cores/tx_frontend_core_200.cpp b/host/lib/usrp/cores/tx_frontend_core_200.cpp index d44a618bc..af40d4379 100644 --- a/host/lib/usrp/cores/tx_frontend_core_200.cpp +++ b/host/lib/usrp/cores/tx_frontend_core_200.cpp @@ -15,11 +15,11 @@  using namespace uhd; -#define REG_TX_FE_DC_OFFSET_I         _base + 0 //24 bits -#define REG_TX_FE_DC_OFFSET_Q         _base + 4 //24 bits -#define REG_TX_FE_MAG_CORRECTION      _base + 8 //18 bits -#define REG_TX_FE_PHASE_CORRECTION    _base + 12 //18 bits -#define REG_TX_FE_MUX                 _base + 16 //8 bits (std output = 0x10, reversed = 0x01) +#define REG_TX_FE_DC_OFFSET_I         _base + 0 * _offset  //24 bits +#define REG_TX_FE_DC_OFFSET_Q         _base + 1 * _offset  //24 bits +#define REG_TX_FE_MAG_CORRECTION      _base + 2 * _offset  //18 bits +#define REG_TX_FE_PHASE_CORRECTION    _base + 3 * _offset  //18 bits +#define REG_TX_FE_MUX                 _base + 4 * _offset  //8 bits (std output = 0x10, reversed = 0x01)  const std::complex<double> tx_frontend_core_200::DEFAULT_DC_OFFSET_VALUE = std::complex<double>(0.0, 0.0);  const std::complex<double> tx_frontend_core_200::DEFAULT_IQ_BALANCE_VALUE = std::complex<double>(0.0, 0.0); @@ -39,8 +39,8 @@ tx_frontend_core_200::~tx_frontend_core_200(void){  class tx_frontend_core_200_impl : public tx_frontend_core_200{  public: -    tx_frontend_core_200_impl(wb_iface::sptr iface, const size_t base): -        _iface(iface), _base(base) +    tx_frontend_core_200_impl(wb_iface::sptr iface, const size_t base, const size_t offset): +        _iface(iface), _base(base), _offset(offset)      {          //NOP      } @@ -89,8 +89,9 @@ public:  private:      wb_iface::sptr _iface;      const size_t _base; +    const size_t _offset;  }; -tx_frontend_core_200::sptr tx_frontend_core_200::make(wb_iface::sptr iface, const size_t base){ -    return sptr(new tx_frontend_core_200_impl(iface, base)); +tx_frontend_core_200::sptr tx_frontend_core_200::make(wb_iface::sptr iface, const size_t base, const size_t offset){ +    return sptr(new tx_frontend_core_200_impl(iface, base, offset));  } | 
