From 9fd4f4014ed4358f68fb46fd0edf50bd5e3cba82 Mon Sep 17 00:00:00 2001
From: Jason Abele <jason@ettus.com>
Date: Thu, 9 Dec 2010 12:49:52 -0800
Subject: [PATCH] Correct rfx2000 support

---
 usrp/host/include/usrp/db_flexrf_mimo.h |   15 +++++++++++++++
 usrp/host/lib/db_boards.cc              |    6 ++++++
 usrp/host/lib/db_flexrf_mimo.cc         |   24 ++++++++++++++++++++++++
 3 files changed, 45 insertions(+), 0 deletions(-)

diff --git a/usrp/host/include/usrp/db_flexrf_mimo.h b/usrp/host/include/usrp/db_flexrf_mimo.h
index 771f3b2..9352b78 100644
--- a/usrp/host/include/usrp/db_flexrf_mimo.h
+++ b/usrp/host/include/usrp/db_flexrf_mimo.h
@@ -50,6 +50,21 @@ class db_flexrf_2400_rx_mimo_b : public db_flexrf_2400_rx
 };
 
 
+class db_flexrf_2200_tx_mimo_b : public db_flexrf_2200_tx
+{
+ public:
+  db_flexrf_2200_tx_mimo_b(usrp_basic_sptr usrp, int which);
+  int _refclk_divisor();
+};
+
+class db_flexrf_2200_rx_mimo_b : public db_flexrf_2200_rx
+{
+ public:
+  db_flexrf_2200_rx_mimo_b(usrp_basic_sptr usrp, int which);
+  int _refclk_divisor();
+};
+
+
 class db_flexrf_1800_tx_mimo_a : public db_flexrf_1800_tx
 {
  public:
diff --git a/usrp/host/lib/db_boards.cc b/usrp/host/lib/db_boards.cc
index 9324d58..e0c8c8d 100644
--- a/usrp/host/lib/db_boards.cc
+++ b/usrp/host/lib/db_boards.cc
@@ -155,6 +155,12 @@ instantiate_dbs(int dbid, usrp_basic_sptr usrp, int which_side)
   case(USRP_DBID_FLEX_2400_RX_MIMO_B):
     db.push_back(db_base_sptr(new db_flexrf_2400_rx_mimo_b(usrp, which_side)));
     break;
+  case(USRP_DBID_FLEX_2200_TX_MIMO_B):
+    db.push_back(db_base_sptr(new db_flexrf_2200_tx_mimo_b(usrp, which_side)));
+    break;
+  case(USRP_DBID_FLEX_2200_RX_MIMO_B):
+    db.push_back(db_base_sptr(new db_flexrf_2200_rx_mimo_b(usrp, which_side)));
+    break;
   case(USRP_DBID_FLEX_1800_TX_MIMO_B):
     db.push_back(db_base_sptr(new db_flexrf_1800_tx_mimo_b(usrp, which_side)));
     break;
diff --git a/usrp/host/lib/db_flexrf_mimo.cc b/usrp/host/lib/db_flexrf_mimo.cc
index 29bbbd5..f81fbfa 100644
--- a/usrp/host/lib/db_flexrf_mimo.cc
+++ b/usrp/host/lib/db_flexrf_mimo.cc
@@ -80,6 +80,30 @@ db_flexrf_2400_rx_mimo_b::_refclk_divisor()
   return 1;
 }
 
+db_flexrf_2200_tx_mimo_b::db_flexrf_2200_tx_mimo_b(usrp_basic_sptr usrp, int which)
+  : db_flexrf_2200_tx(usrp, which)
+{
+  d_common->R_DIV(16);
+}
+
+int 
+db_flexrf_2200_tx_mimo_b::_refclk_divisor()
+{
+  return 1;
+}
+
+db_flexrf_2200_rx_mimo_b::db_flexrf_2200_rx_mimo_b(usrp_basic_sptr usrp, int which)
+  : db_flexrf_2200_rx(usrp, which)
+{
+  d_common->R_DIV(16);
+}
+
+int 
+db_flexrf_2200_rx_mimo_b::_refclk_divisor()
+{
+  return 1;
+}
+
 db_flexrf_1800_tx_mimo_a::db_flexrf_1800_tx_mimo_a(usrp_basic_sptr usrp, int which)
   : db_flexrf_1800_tx(usrp, which)
 {
-- 
1.7.0.4

