From b5eef5151b9292593bfce7fb5ae3d63e1a5671a6 Mon Sep 17 00:00:00 2001 From: George Hung Date: Wed, 10 Mar 2021 16:04:46 +0800 Subject: 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 Change-Id: I496dd7bc59076a2b3690e367877d49533855c9fe --- .../fans/phosphor-pid-control/fan-default-speed.sh | 6 ------ .../fans/phosphor-pid-control/fan-reboot-control.service | 12 ------------ .../fans/phosphor-pid-control/fan-table-init.sh | 4 +--- .../fans/phosphor-pid-control/phosphor-pid-control.service | 1 - .../recipes-phosphor/fans/phosphor-pid-control_%.bbappend | 14 ++++---------- 5 files changed, 5 insertions(+), 32 deletions(-) delete mode 100644 meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-default-speed.sh delete mode 100644 meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-reboot-control.service (limited to 'meta-quanta/meta-gbs/recipes-phosphor/fans') diff --git a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-default-speed.sh b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-default-speed.sh deleted file mode 100644 index 22cfab582..000000000 --- a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-default-speed.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -for i in {1..5}; -do - echo 255 > /sys/class/hwmon/*/pwm${i} -done diff --git a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-reboot-control.service b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-reboot-control.service deleted file mode 100644 index 681bdbe00..000000000 --- a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-reboot-control.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=Set Fan to Default Duty as Rebooting -DefaultDependencies=no -After=shutdown.target - -[Service] -Type=oneshot -RemainAfterExit=true -ExecStart=/usr/bin/fan-default-speed.sh - -[Install] -WantedBy=shutdown.target diff --git a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-table-init.sh b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-table-init.sh index 68b699e0f..624bb4e60 100644 --- a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-table-init.sh +++ b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/fan-table-init.sh @@ -13,10 +13,8 @@ mapper wait /xyz/openbmc_project/sensors/fan_tach/fb_fan0 mapper wait /xyz/openbmc_project/sensors/fan_tach/fb_fan1 mapper wait /xyz/openbmc_project/sensors/fan_tach/fb_fan2 -/usr/bin/fan-default-speed.sh - # generate fan table writePath -Fan_0_To_4_Hwmon="$(ls -la /sys/class/hwmon |grep pwm | head -n 1| tail -n +1|cut -d '/' -f 9)" +Fan_0_To_4_Hwmon="$(ls /sys/devices/platform/ahb/ahb\:apb/f0103000.pwm-fan-controller/hwmon/)" if [[ "$Fan_0_To_4_Hwmon" != "" ]]; then sed -i "s/Fan_0_To_4_Hwmon/$Fan_0_To_4_Hwmon/g" $FAN_TABLE_FILE diff --git a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/phosphor-pid-control.service b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/phosphor-pid-control.service index 33a441928..9b8034326 100644 --- a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/phosphor-pid-control.service +++ b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control/phosphor-pid-control.service @@ -9,7 +9,6 @@ ExecStart=/usr/bin/swampd Restart=always RestartSec=5 StartLimitInterval=0 -ExecStopPost=/usr/bin/fan-default-speed.sh [Install] WantedBy=basic.target diff --git a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control_%.bbappend b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control_%.bbappend index 4f21d3bcf..25e102c9d 100644 --- a/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control_%.bbappend +++ b/meta-quanta/meta-gbs/recipes-phosphor/fans/phosphor-pid-control_%.bbappend @@ -1,22 +1,18 @@ FILESEXTRAPATHS_prepend_gbs := "${THISDIR}/${PN}:" -SRC_URI_append_gbs = " file://config-sku.json" -SRC_URI_append_gbs = " file://fan-table-init.sh" -SRC_URI_append_gbs = " file://fan-default-speed.sh" -SRC_URI_append_gbs = " file://phosphor-pid-control.service" -SRC_URI_append_gbs = " file://fan-reboot-control.service" +SRC_URI_append_gbs = " file://config-sku.json \ + file://fan-table-init.sh \ + file://phosphor-pid-control.service \ + " FILES_${PN}_append_gbs = " ${datadir}/swampd/config-sku.json" -FILES_${PN}_append_gbs = " ${bindir}/fan-default-speed.sh" FILES_${PN}_append_gbs = " ${bindir}/fan-table-init.sh" RDEPENDS_${PN} += "bash" SYSTEMD_SERVICE_${PN}_append_gbs = " phosphor-pid-control.service" -SYSTEMD_SERVICE_${PN}_append_gbs = " fan-reboot-control.service" do_install_append_gbs() { install -d ${D}/${bindir} - install -m 0755 ${WORKDIR}/fan-default-speed.sh ${D}/${bindir} install -m 0755 ${WORKDIR}/fan-table-init.sh ${D}/${bindir} install -d ${D}${datadir}/swampd @@ -26,6 +22,4 @@ do_install_append_gbs() { install -d ${D}${systemd_system_unitdir} install -m 0644 ${WORKDIR}/phosphor-pid-control.service \ ${D}${systemd_system_unitdir} - install -m 0644 ${WORKDIR}/fan-reboot-control.service \ - ${D}${systemd_system_unitdir} } -- cgit v1.2.3