FruDevice: Don't scan Mux bus if root is in blacklist
This checks to see if the root of a bus is in the blacklist
and avoids scanning it if that is true.
Tested: Used prints to verify that mux busses were skipped
Change-Id: I3bb5c3ffb349d4a09ac8fe67a7b33defe1250c20
Signed-off-by: James Feist <james.feist@linux.intel.com>
diff --git a/src/FruDevice.cpp b/src/FruDevice.cpp
index 42ca311..4d93fc1 100644
--- a/src/FruDevice.cpp
+++ b/src/FruDevice.cpp
@@ -650,12 +650,19 @@
{
busnum.erase(0, lastDash + 1);
}
+
auto bus = std::stoi(busnum);
if (busBlacklist.find(bus) != busBlacklist.end())
{
continue; // skip previously failed busses
}
+ int rootBus = getRootBus(bus);
+ if (busBlacklist.find(rootBus) != busBlacklist.end())
+ {
+ continue;
+ }
+
auto file = open(i2cBus.c_str(), O_RDWR);
if (file < 0)
{