diff options
Diffstat (limited to 'host/lib')
-rw-r--r-- | host/lib/usrp/multi_usrp.cpp | 24 | ||||
-rw-r--r-- | host/lib/usrp/x300/x300_radio_control.cpp | 12 |
2 files changed, 24 insertions, 12 deletions
diff --git a/host/lib/usrp/multi_usrp.cpp b/host/lib/usrp/multi_usrp.cpp index b80790f64..bb5b9e5fc 100644 --- a/host/lib/usrp/multi_usrp.cpp +++ b/host/lib/usrp/multi_usrp.cpp @@ -1145,8 +1145,10 @@ public: } } } else { - throw uhd::runtime_error( - "This device does not support manual configuration of LOs"); + if (not(src == "internal" and name == ALL_LOS)) { + throw uhd::runtime_error( + "This device only supports setting internal source on all LOs"); + } } } @@ -1232,8 +1234,10 @@ public: } } } else { - throw uhd::runtime_error( - "This device does not support manual configuration of LOs"); + if (not(enabled == false and name == ALL_LOS)) { + throw uhd::runtime_error("This device only supports setting LO export " + "enabled to false on all LOs"); + } } } @@ -1374,8 +1378,10 @@ public: } } } else { - throw uhd::runtime_error("This device does not support manual " - "configuration of LOs"); + if (not(src == "internal" and name == ALL_LOS)) { + throw uhd::runtime_error( + "This device only supports setting internal source on all LOs"); + } } } @@ -1456,8 +1462,10 @@ public: } } } else { - throw uhd::runtime_error( - "This device does not support manual configuration of LOs"); + if (not(enabled == false and name == ALL_LOS)) { + throw uhd::runtime_error("This device only supports setting LO export " + "enabled to false on all LOs"); + } } } diff --git a/host/lib/usrp/x300/x300_radio_control.cpp b/host/lib/usrp/x300/x300_radio_control.cpp index c6750e397..73006a7c8 100644 --- a/host/lib/usrp/x300/x300_radio_control.cpp +++ b/host/lib/usrp/x300/x300_radio_control.cpp @@ -630,8 +630,10 @@ public: } } } else { - throw uhd::runtime_error( - "This device does not support manual configuration of LOs"); + if (not(src == "internal" and name == ALL_LOS)) { + throw uhd::runtime_error( + "This device only supports setting internal source on all LOs"); + } } } @@ -691,8 +693,10 @@ public: } } } else { - throw uhd::runtime_error( - "This device does not support manual configuration of LOs"); + if (not(enabled == false and name == ALL_LOS)) { + throw uhd::runtime_error("This device only supports setting LO export " + "enabled to false on all LOs"); + } } } |