dbus-sdr: treat FRUs with a chassis type of "Main Server" as baseboards
Previously this had been restricted to "rack mount" only; the ASRock
Rack E3C246D4I board's FRU EEPROM has it marked as a "main server",
however, so this lets that FRU data get used for FRU ID zero (baseboard
info).
Signed-off-by: Zev Weiss <zev@bewilderbeest.net>
Change-Id: Iff59b30afcc9fbe1cde15358adfabd37152acd1d
diff --git a/dbus-sdr/storagecommands.cpp b/dbus-sdr/storagecommands.cpp
index 0ead858..8958c61 100644
--- a/dbus-sdr/storagecommands.cpp
+++ b/dbus-sdr/storagecommands.cpp
@@ -103,6 +103,7 @@
"xyz.openbmc_project.EntityManager";
constexpr static const size_t writeTimeoutSeconds = 10;
constexpr static const char* chassisTypeRackMount = "23";
+constexpr static const char* chassisTypeMainServer = "17";
// event direction is bit[7] of eventType where 1b = Deassertion event
constexpr static const uint8_t deassertionEvent = 0x80;
@@ -194,7 +195,8 @@
}
uint8_t fruHash = 0;
- if (chassisType.compare(chassisTypeRackMount) != 0)
+ if (chassisType.compare(chassisTypeRackMount) != 0 &&
+ chassisType.compare(chassisTypeMainServer) != 0)
{
fruHash = hasher(fru.first.str);
// can't be 0xFF based on spec, and 0 is reserved for baseboard