diff options
author | Lane Kolbly <lane.kolbly@ni.com> | 2022-03-18 15:41:55 -0500 |
---|---|---|
committer | Aaron Rossetto <aaron.rossetto@ni.com> | 2022-03-23 16:14:07 -0500 |
commit | 1ba8c2517d7162e0a5df1006abffcfc0ca910394 (patch) | |
tree | eaeb4a6e21c0a928b963118fcfbd184229254477 /host/lib/usrp/mpmd/mpmd_mb_controller.cpp | |
parent | 2e8f7484a4497c1b3f1f2caff32d9269ca492ffb (diff) | |
download | uhd-1ba8c2517d7162e0a5df1006abffcfc0ca910394.tar.gz uhd-1ba8c2517d7162e0a5df1006abffcfc0ca910394.tar.bz2 uhd-1ba8c2517d7162e0a5df1006abffcfc0ca910394.zip |
host: x410: Cache GPIO source in mb_controller
Diffstat (limited to 'host/lib/usrp/mpmd/mpmd_mb_controller.cpp')
-rw-r--r-- | host/lib/usrp/mpmd/mpmd_mb_controller.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/host/lib/usrp/mpmd/mpmd_mb_controller.cpp b/host/lib/usrp/mpmd/mpmd_mb_controller.cpp index cdc86b086..c03f66da3 100644 --- a/host/lib/usrp/mpmd/mpmd_mb_controller.cpp +++ b/host/lib/usrp/mpmd/mpmd_mb_controller.cpp @@ -334,7 +334,11 @@ std::vector<std::string> mpmd_mb_controller::get_gpio_src(const std::string& ban UHD_LOG_ERROR("MPMD", "Invalid GPIO bank: `" << bank << "'"); throw uhd::key_error(std::string("Invalid GPIO bank: ") + bank); } - return _rpc->get_gpio_src(bank); + if (_current_gpio_src.count(bank)) { + return _current_gpio_src[bank]; + } else { + return _rpc->get_gpio_src(bank); + } } void mpmd_mb_controller::set_gpio_src( @@ -345,6 +349,7 @@ void mpmd_mb_controller::set_gpio_src( throw uhd::key_error(std::string("Invalid GPIO bank: ") + bank); } _rpc->set_gpio_src(bank, src); + _current_gpio_src[bank] = src; } void mpmd_mb_controller::register_sync_source_updater( |