summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Yin <peter.yin@quantatw.com>2024-10-09 13:00:36 +0300
committerAmithash Prasad <amithash@meta.com>2024-10-16 02:17:45 +0300
commit3e9f1e2a5c468d9e1c0aa5fd518028931115c2f8 (patch)
tree2b783d00174319e0e42417831a47fb3064c163a0
parent61fd99b7209ec6f9d99cfef9fed298a56a1f5105 (diff)
downloadopenbmc-3e9f1e2a5c468d9e1c0aa5fd518028931115c2f8.tar.xz
meta-facebook: harma: refactor targets and relationships
Add force power off in obmc-host-stop and refactor targets within host-poweron. Change-Id: Ia523cfe9d3086987b69c89a3b1424f33f2be26d5 Signed-off-by: Peter Yin <peter.yin@quantatw.com>
-rw-r--r--meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/host-force-poweroff6
-rw-r--r--meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/host-force-poweroff@.service14
-rw-r--r--meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/host-poweron@.service13
-rw-r--r--meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/power-cmd3
-rw-r--r--meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager_%.bbappend4
5 files changed, 37 insertions, 3 deletions
diff --git a/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/host-force-poweroff b/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/host-force-poweroff
new file mode 100644
index 0000000000..4a0d7e02e9
--- /dev/null
+++ b/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/host-force-poweroff
@@ -0,0 +1,6 @@
+#!/bin/bash
+
+# shellcheck source=meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/power-cmd
+source /usr/libexec/phosphor-state-manager/power-cmd
+
+force_power_off
diff --git a/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/host-force-poweroff@.service b/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/host-force-poweroff@.service
new file mode 100644
index 0000000000..062d4f2098
--- /dev/null
+++ b/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/host-force-poweroff@.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=power off host:%i
+After=obmc-host-stop-pre@%i.target
+Before=obmc-host-stopping@%i.target
+Conflicts=obmc-host-startmin@%i.target
+
+[Service]
+Restart=no
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=/usr/libexec/phosphor-state-manager/host-force-poweroff %i
+
+[Install]
+RequiredBy=obmc-host-stop@%i.target
diff --git a/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/host-poweron@.service b/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/host-poweron@.service
index 38f0879caa..17b875f1a5 100644
--- a/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/host-poweron@.service
+++ b/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/host-poweron@.service
@@ -1,8 +1,21 @@
[Unit]
Description=power on host:%i
+Wants=obmc-host-start-pre@%i.target
+After=obmc-host-start-pre@%i.target
+Wants=obmc-host-starting@%i.target
+Before=obmc-host-starting@%i.target
+Before=obmc-host-started@%i.target
+Wants=obmc-power-on@%i.target
+After=obmc-power-on@%i.target
+Conflicts=obmc-host-stop@%i.target
+Wants=phosphor-set-host-transition-to-running@service
+Before=phosphor-set-host-transition-to-running@service
+ConditionPathExists=!/run/openbmc/host@%i-on
[Service]
+Restart=no
Type=oneshot
+RemainAfterExit=yes
ExecStart=/usr/libexec/phosphor-state-manager/host-poweron %i
[Install]
diff --git a/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/power-cmd b/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/power-cmd
index 3a3005db36..555de548f7 100644
--- a/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/power-cmd
+++ b/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager/power-cmd
@@ -32,9 +32,6 @@ graceful_power_off() {
# wait host power off
sleep 10
- if [ "$(power_status)" == "on" ]; then
- force_power_off
- fi
fi
}
diff --git a/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager_%.bbappend b/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager_%.bbappend
index 9683b07637..71e445e2aa 100644
--- a/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager_%.bbappend
+++ b/meta-facebook/meta-harma/recipes-phosphor/state/phosphor-state-manager_%.bbappend
@@ -46,6 +46,7 @@ HOST_DEFAULT_TARGETS:append = " \
HOST_DEFAULT_TARGETS:append = " \
obmc-host-shutdown@{}.target.requires/host-graceful-poweroff@{}.service \
+ obmc-host-stop@{}.target.requires/host-force-poweroff@{}.service \
"
HOST_DEFAULT_TARGETS:remove = " \
@@ -77,6 +78,8 @@ SRC_URI:append = " \
file://chassis-poweroff@.service \
file://chassis-poweron \
file://chassis-poweron@.service \
+ file://host-force-poweroff \
+ file://host-force-poweroff@.service \
file://host-graceful-poweroff \
file://host-graceful-poweroff@.service \
file://host-poweron \
@@ -100,6 +103,7 @@ do_install:append() {
install -m 0755 ${WORKDIR}/chassis-poweroff ${D}${libexecdir}/${PN}/
install -m 0755 ${WORKDIR}/chassis-poweron ${D}${libexecdir}/${PN}/
install -m 0755 ${WORKDIR}/chassis-powercycle ${D}${libexecdir}/${PN}/
+ install -m 0755 ${WORKDIR}/host-force-poweroff ${D}${libexecdir}/${PN}/
install -m 0755 ${WORKDIR}/host-graceful-poweroff ${D}${libexecdir}/${PN}/
install -m 0755 ${WORKDIR}/host-poweron ${D}${libexecdir}/${PN}/
install -m 0755 ${WORKDIR}/host-powerreset ${D}${libexecdir}/${PN}/