meta-quanta: gbs: failsafe fan speed control dynamically
1. add acpi-power-state daemon to check the ACPI power
states from BIOS
2. set failsafe fan speed at different states
- S0_G0_D0: 90%
- S5_G2: 40%
Note:
this item depends on the commit and will
add as the patches first in another PR
https://gerrit.openbmc-project.xyz/38112
3. add gbs-check-host-state.sh to monitor the power state
D-Bus and then trigger to set fan failsafe speed
4. remove gbs-detect-fan-fail service and unused scripts
from phosphor-pid-control
5. update read-margin-temp srcrev to avoid nvme temperature
sensor failed due to nvme SSD not-present
Signed-off-by: George Hung <george.hung@quantatw.com>
Change-Id: I496dd7bc59076a2b3690e367877d49533855c9fe
diff --git a/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-check-host-state.sh b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-check-host-state.sh
new file mode 100644
index 0000000..1bff18d
--- /dev/null
+++ b/meta-quanta/meta-gbs/recipes-google/acpi-power-state/acpi-power-state-daemon/gbs-check-host-state.sh
@@ -0,0 +1,13 @@
+#!/bin/bash
+
+state="xyz.openbmc_project.State.Chassis.PowerState.Off"
+
+dbus-monitor --system type='signal',interface='org.freedesktop.DBus.Properties',\
+member='PropertiesChanged',arg0namespace='xyz.openbmc_project.State.Chassis' | \
+while read -r line; do
+ grep -q member <<< $line && continue
+ if grep -q $state <<< $line; then
+ echo "Setting failsafe assuming host is off" >&2
+ systemctl start --no-block gbs-host-s5-set-failsafe
+ fi
+done