From 59796e1e3e0660032ecf35d3042d8148df27b336 Mon Sep 17 00:00:00 2001 From: Thomas Tsou Date: Mon, 8 Apr 2013 19:40:35 -0400 Subject: Transceiver52M: Explicitly check for USRP2 device type Before, we assumed that non-B100 device was implicitly a USRP2 (inclusive of N200/N210). Make the check explicit so that any unknown device will causes an error and exit. Signed-off-by: Thomas Tsou --- Transceiver52M/UHDDevice.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/Transceiver52M/UHDDevice.cpp b/Transceiver52M/UHDDevice.cpp index 0bee8d1..10c6f9c 100644 --- a/Transceiver52M/UHDDevice.cpp +++ b/Transceiver52M/UHDDevice.cpp @@ -495,15 +495,15 @@ bool uhd_device::parse_dev_type() { std::string mboard_str, dev_str; uhd::property_tree::sptr prop_tree; - size_t usrp1_str, usrp2_str, b100_str1, b100_str2; + size_t usrp1_str, usrp2_str, b100_str; prop_tree = usrp_dev->get_device()->get_tree(); dev_str = prop_tree->access("/name").get(); mboard_str = usrp_dev->get_mboard_name(); usrp1_str = dev_str.find("USRP1"); - b100_str1 = dev_str.find("B-Series"); - b100_str2 = mboard_str.find("B100"); + usrp2_str = dev_str.find("USRP2"); + b100_str = mboard_str.find("B100"); if (usrp1_str != std::string::npos) { LOG(ALERT) << "USRP1 is not supported using the UHD driver"; @@ -512,14 +512,17 @@ bool uhd_device::parse_dev_type() return false; } - if ((b100_str1 != std::string::npos) || (b100_str2 != std::string::npos)) { + if (b100_str != std::string::npos) { tx_window = TX_WINDOW_USRP1; LOG(INFO) << "Using USRP1 type transmit window for " << dev_str << " " << mboard_str; dev_type = B100; return true; - } else { + } else if (usrp2_str != std::string::npos) { dev_type = USRP2; + } else { + LOG(ALERT) << "Unknown UHD device type"; + return false; } tx_window = TX_WINDOW_FIXED; -- cgit v1.2.1