Ensure POR reset is logged
In situations where the last reboot cause is not changed to POR,
specifically after unexpected AC losses, bmc-state-manager fails to
update the property. Therefore after a power cycle the last reboot
cause property is set to unknown. Thankfully, chassis-state-manager
generates a file indicating an AC loss occurred and that can be used
to identify that the last reboot cause was a power-on-cycle. It was
necessary to add an "After xyz.openbmc_project.State.Chassis"
dependency to bmc-state-managers service file to ensure the AC loss
was generated prior to bmc-state-manager executing.
Tested:
- Ensured that when the system was power cycled that the last reboot
cause was set to "POR" when the chassis lost power file was present.
- Verified that when the file was not present the last reboot
cause was set accordingly (typically unknown)
Change-Id: Ifa6d5d6f89c221477ee2f2fa1ed15adade359e45
Signed-off-by: NodeMan97 <corey.hardesty@icloud.com>
diff --git a/meson.build b/meson.build
index 17a5a11..046e10f 100644
--- a/meson.build
+++ b/meson.build
@@ -176,6 +176,7 @@
'chassis_check_power_status.cpp',
'utils.cpp',
dependencies: [
+ fmt,
libgpiod,
phosphordbusinterfaces,
phosphorlogging,
@@ -190,6 +191,7 @@
'bmc_state_manager_main.cpp',
'utils.cpp',
dependencies: [
+ fmt,
libgpiod,
phosphordbusinterfaces,
phosphorlogging,
@@ -262,7 +264,8 @@
'secure_boot_check.cpp',
'utils.cpp',
dependencies: [
- sdbusplus, phosphorlogging, libgpiod
+ fmt, sdbusplus,
+ phosphorlogging, libgpiod
],
implicit_include_directories: true,
install: true