psu-ng: Refactor fan fault detection
Split off code checking for fan fault/warning in STATUS_WORD to its own
function.
Change-Id: I49b6dc2d62b6ca39a564262a4745aa5ed25c14eb
Signed-off-by: Brandon Wyman <bjwyman@gmail.com>
diff --git a/phosphor-power-supply/power_supply.cpp b/phosphor-power-supply/power_supply.cpp
index 5be801a..fbbcb14 100644
--- a/phosphor-power-supply/power_supply.cpp
+++ b/phosphor-power-supply/power_supply.cpp
@@ -276,6 +276,24 @@
}
}
+void PowerSupply::analyzeFanFault()
+{
+ if (statusWord & phosphor::pmbus::status_word::FAN_FAULT)
+ {
+ if (!fanFault)
+ {
+ log<level::ERR>(fmt::format("FANS fault/warning: "
+ "STATUS_WORD = {:#04x}, "
+ "STATUS_MFR_SPECIFIC = {:#02x}, "
+ "STATUS_FANS_1_2 = {:#02x}",
+ statusWord, statusMFR, statusFans12)
+ .c_str());
+ }
+
+ fanFault = true;
+ }
+}
+
void PowerSupply::analyzeTemperatureFault()
{
if (statusWord & phosphor::pmbus::status_word::TEMPERATURE_FAULT_WARN)
@@ -396,21 +414,7 @@
analyzeVoutUVFault();
- if (statusWord & status_word::FAN_FAULT)
- {
- if (!fanFault)
- {
- log<level::ERR>(
- fmt::format("FANS fault/warning: "
- "STATUS_WORD = {:#04x}, "
- "STATUS_MFR_SPECIFIC = {:#02x}, "
- "STATUS_FANS_1_2 = {:#02x}",
- statusWord, statusMFR, statusFans12)
- .c_str());
- }
-
- fanFault = true;
- }
+ analyzeFanFault();
analyzeTemperatureFault();