diff options
| author | Josh Blum <josh@joshknows.com> | 2010-08-26 13:26:05 -0700 | 
|---|---|---|
| committer | Josh Blum <josh@joshknows.com> | 2010-08-26 13:26:05 -0700 | 
| commit | 988cba70e0737cd2b4ad0015d4630743a80fe0c3 (patch) | |
| tree | 6b921886ba13fa4ff4df00f1e8111ef9d780c1c9 | |
| parent | 2aea2ae79e8ed63bd1d6381572f70cf9035ec1f4 (diff) | |
| download | uhd-988cba70e0737cd2b4ad0015d4630743a80fe0c3.tar.gz uhd-988cba70e0737cd2b4ad0015d4630743a80fe0c3.tar.bz2 uhd-988cba70e0737cd2b4ad0015d4630743a80fe0c3.zip | |
basic-tx: mirror the rx subdevices for basic tx boards as well
| -rw-r--r-- | host/lib/usrp/dboard/db_basic_and_lf.cpp | 32 | 
1 files changed, 18 insertions, 14 deletions
| diff --git a/host/lib/usrp/dboard/db_basic_and_lf.cpp b/host/lib/usrp/dboard/db_basic_and_lf.cpp index 0b6e4a75a..2a9bf2ca5 100644 --- a/host/lib/usrp/dboard/db_basic_and_lf.cpp +++ b/host/lib/usrp/dboard/db_basic_and_lf.cpp @@ -57,6 +57,12 @@ private:      double _max_freq;  }; +static const uhd::dict<std::string, subdev_conn_t> sd_name_to_conn = map_list_of +    ("AB", SUBDEV_CONN_COMPLEX_IQ) +    ("A",  SUBDEV_CONN_REAL_I) +    ("B",  SUBDEV_CONN_REAL_Q) +; +  /***********************************************************************   * Register the basic and LF dboards   **********************************************************************/ @@ -77,10 +83,10 @@ static dboard_base::sptr make_lf_tx(dboard_base::ctor_args_t args){  }  UHD_STATIC_BLOCK(reg_basic_and_lf_dboards){ -    dboard_manager::register_dboard(0x0000, &make_basic_tx, "Basic TX"); -    dboard_manager::register_dboard(0x0001, &make_basic_rx, "Basic RX", list_of("AB")("A")("B")); -    dboard_manager::register_dboard(0x000e, &make_lf_tx,    "LF TX"); -    dboard_manager::register_dboard(0x000f, &make_lf_rx,    "LF RX",    list_of("AB")("A")("B")); +    dboard_manager::register_dboard(0x0000, &make_basic_tx, "Basic TX", sd_name_to_conn.keys()); +    dboard_manager::register_dboard(0x0001, &make_basic_rx, "Basic RX", sd_name_to_conn.keys()); +    dboard_manager::register_dboard(0x000e, &make_lf_tx,    "LF TX",    sd_name_to_conn.keys()); +    dboard_manager::register_dboard(0x000f, &make_lf_rx,    "LF RX",    sd_name_to_conn.keys());  }  /*********************************************************************** @@ -138,14 +144,9 @@ void basic_rx::rx_get(const wax::obj &key_, wax::obj &val){          val = prop_names_t(1, ""); //vector of 1 empty string          return; -    case SUBDEV_PROP_CONNECTION:{ -            static const uhd::dict<std::string, subdev_conn_t> name_to_conn = map_list_of -                ("A",  SUBDEV_CONN_REAL_I) -                ("B",  SUBDEV_CONN_REAL_Q) -                ("AB", SUBDEV_CONN_COMPLEX_IQ) -            ; -            val = name_to_conn[get_subdev_name()]; -        } return; +    case SUBDEV_PROP_CONNECTION: +        val = sd_name_to_conn[get_subdev_name()]; +        return;      case SUBDEV_PROP_USE_LO_OFFSET:          val = false; @@ -197,7 +198,10 @@ void basic_tx::tx_get(const wax::obj &key_, wax::obj &val){      //handle the get request conditioned on the key      switch(key.as<subdev_prop_t>()){      case SUBDEV_PROP_NAME: -        val = get_tx_id().to_pp_string(); +        val = std::string(str(boost::format("%s - %s") +            % get_tx_id().to_pp_string() +            % get_subdev_name() +        ));          return;      case SUBDEV_PROP_OTHERS: @@ -233,7 +237,7 @@ void basic_tx::tx_get(const wax::obj &key_, wax::obj &val){          return;      case SUBDEV_PROP_CONNECTION: -        val = SUBDEV_CONN_COMPLEX_IQ; +        val = sd_name_to_conn[get_subdev_name()];          return;      case SUBDEV_PROP_USE_LO_OFFSET: | 
