summaryrefslogtreecommitdiff
path: root/meta-facebook
diff options
context:
space:
mode:
authorPotin Lai <potin.lai@quantatw.com>2023-03-06 09:33:00 +0300
committerPatrick Williams <patrick@stwcx.xyz>2023-03-10 02:00:04 +0300
commit31cca7c34ed29aa51eb480500d7bd3464efa6d22 (patch)
treeddb86399fe0b3ed103d30aa4cda1447089bc9fff /meta-facebook
parent93e6bbee156d2ba3232cc54ea9623119c4b0e749 (diff)
downloadopenbmc-31cca7c34ed29aa51eb480500d7bd3464efa6d22.tar.xz
meta-bletchley: move chassis and host power control service into phosphor-state-manager
Move chassis and host power control services as part of PSM package to align with other platforms in meta-facebook. Signed-off-by: Potin Lai <potin.lai@quantatw.com> Change-Id: I6e6afc0ad62d3b872b330202a4696b704d245911
Diffstat (limited to 'meta-facebook')
-rw-r--r--meta-facebook/meta-bletchley/recipes-bletchley/detect-gpio-present/files/bletchley-sled-insertion@.target4
-rw-r--r--meta-facebook/meta-bletchley/recipes-bletchley/detect-gpio-present/files/bletchley-sled-removal@.target2
-rw-r--r--meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/motor-ctrl_0.1.bb26
-rw-r--r--meta-facebook/meta-bletchley/recipes-phosphor/images/fb-bletchley-phosphor-image.inc1
-rw-r--r--meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/chassis-powercycle9
-rw-r--r--meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/chassis-powercycle@.service9
-rw-r--r--meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/chassis-poweroff@.service (renamed from meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-ac-off@.service)2
-rw-r--r--meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/chassis-poweron@.service (renamed from meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-ac-on@.service)2
-rw-r--r--meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/host-powercycle@.service (renamed from meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-cycle@.service)0
-rw-r--r--meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/host-poweroff@.service (renamed from meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-poweroff@.service)0
-rw-r--r--meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/host-poweron@.service (renamed from meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-poweron@.service)4
-rw-r--r--meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/host-powerreset@.service (renamed from meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-reset@.service)0
-rw-r--r--meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager_%.bbappend33
13 files changed, 57 insertions, 35 deletions
diff --git a/meta-facebook/meta-bletchley/recipes-bletchley/detect-gpio-present/files/bletchley-sled-insertion@.target b/meta-facebook/meta-bletchley/recipes-bletchley/detect-gpio-present/files/bletchley-sled-insertion@.target
index 6fef027ee3..6b516a18ea 100644
--- a/meta-facebook/meta-bletchley/recipes-bletchley/detect-gpio-present/files/bletchley-sled-insertion@.target
+++ b/meta-facebook/meta-bletchley/recipes-bletchley/detect-gpio-present/files/bletchley-sled-insertion@.target
@@ -1,8 +1,8 @@
[Unit]
Description=Bletchlet SLED%i insertion target
-Requires=host-ac-on@%i.service
-After=host-ac-on@%i.service
+Requires=chassis-poweron@%i.service
+After=chassis-poweron@%i.service
Requires=motor-init-calibration@%i.service
After=motor-init-calibration@%i.service
Conflicts=bletchley-sled-removed@%i.target
diff --git a/meta-facebook/meta-bletchley/recipes-bletchley/detect-gpio-present/files/bletchley-sled-removal@.target b/meta-facebook/meta-bletchley/recipes-bletchley/detect-gpio-present/files/bletchley-sled-removal@.target
index 55fd5c3646..4fd59186f2 100644
--- a/meta-facebook/meta-bletchley/recipes-bletchley/detect-gpio-present/files/bletchley-sled-removal@.target
+++ b/meta-facebook/meta-bletchley/recipes-bletchley/detect-gpio-present/files/bletchley-sled-removal@.target
@@ -2,7 +2,7 @@
Description=Bletchlet SLED%i removal target
Conflicts=motor-init-calibration@%i.service
-Conflicts=host-ac-on@%i.service
+Conflicts=chassis-poweron@%i.service
Conflicts=bletchley-sled-insertion@%i.target
RefuseManualStop=yes \ No newline at end of file
diff --git a/meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/motor-ctrl_0.1.bb b/meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/motor-ctrl_0.1.bb
index 329c6f8717..a0e85bd0cc 100644
--- a/meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/motor-ctrl_0.1.bb
+++ b/meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/motor-ctrl_0.1.bb
@@ -29,31 +29,5 @@ do_install() {
TGT = "${SYSTEMD_DEFAULT_TARGET}"
MOTOR_INIT_INSTFMT="../motor-init-calibration@.service:${TGT}.wants/motor-init-calibration@{0}.service"
-PWR_ON_INSTFMT="../host-poweron@.service:obmc-host-starting@{0}.target.wants/host-poweron@{0}.service"
-PWR_OFF_INSTFMT="../host-poweroff@.service:obmc-host-stopping@{0}.target.wants/host-poweroff@{0}.service"
-PWR_RESET_INSTFMT="host-reset@.service:host-reset@{0}.service"
-PWR_CYCLE_INSTFMT="host-cycle@.service:host-cycle@{0}.service"
-AC_ON_INSTFMT="../host-ac-on@.service:obmc-chassis-poweron@{0}.target.requires/host-ac-on@{0}.service"
-AC_OFF_INSTFMT="../host-ac-off@.service:obmc-chassis-poweroff@{0}.target.requires/host-ac-off@{0}.service"
-
SYSTEMD_SERVICE:${PN} += "motor-init-calibration@.service"
SYSTEMD_LINK:${PN} += "${@compose_list(d, 'MOTOR_INIT_INSTFMT', 'OBMC_HOST_INSTANCES')}"
-
-SYSTEMD_SERVICE:${PN} += "host-poweron@.service"
-SYSTEMD_LINK:${PN} += "${@compose_list(d, 'PWR_ON_INSTFMT', 'OBMC_HOST_INSTANCES')}"
-
-SYSTEMD_SERVICE:${PN} += "host-poweroff@.service"
-SYSTEMD_LINK:${PN} += "${@compose_list(d, 'PWR_OFF_INSTFMT', 'OBMC_HOST_INSTANCES')}"
-
-SYSTEMD_SERVICE:${PN} += "host-reset@.service"
-SYSTEMD_LINK:${PN} += "${@compose_list(d, 'PWR_RESET_INSTFMT', 'OBMC_HOST_INSTANCES')}"
-
-SYSTEMD_SERVICE:${PN} += "host-cycle@.service"
-SYSTEMD_LINK:${PN} += "${@compose_list(d, 'PWR_CYCLE_INSTFMT', 'OBMC_HOST_INSTANCES')}"
-
-SYSTEMD_SERVICE:${PN} += "host-ac-on@.service"
-SYSTEMD_LINK:${PN} += "${@compose_list(d, 'AC_ON_INSTFMT', 'OBMC_HOST_INSTANCES')}"
-
-SYSTEMD_SERVICE:${PN} += "host-ac-off@.service"
-SYSTEMD_LINK:${PN} += "${@compose_list(d, 'AC_OFF_INSTFMT', 'OBMC_HOST_INSTANCES')}"
-
diff --git a/meta-facebook/meta-bletchley/recipes-phosphor/images/fb-bletchley-phosphor-image.inc b/meta-facebook/meta-bletchley/recipes-phosphor/images/fb-bletchley-phosphor-image.inc
index b32b28f199..45f2428032 100644
--- a/meta-facebook/meta-bletchley/recipes-phosphor/images/fb-bletchley-phosphor-image.inc
+++ b/meta-facebook/meta-bletchley/recipes-phosphor/images/fb-bletchley-phosphor-image.inc
@@ -14,4 +14,5 @@ OBMC_IMAGE_EXTRA_INSTALL:append = " \
board-type-checker \
obmc-phosphor-buttons-signals \
obmc-phosphor-buttons-handler \
+ phosphor-state-manager \
"
diff --git a/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/chassis-powercycle b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/chassis-powercycle
new file mode 100644
index 0000000000..c46e8ab47e
--- /dev/null
+++ b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/chassis-powercycle
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+if [ "$1" == "0" ]; then
+ echo "Enter chassis-cycle"
+ /usr/sbin/power-ctrl chassis-cycle
+else
+ echo "Enter sled$1 cycle"
+ /usr/sbin/power-ctrl "sled$1" cycle
+fi
diff --git a/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/chassis-powercycle@.service b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/chassis-powercycle@.service
new file mode 100644
index 0000000000..a8a110e4d1
--- /dev/null
+++ b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/chassis-powercycle@.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Chassis Power Cycle: %i
+
+[Service]
+Type=oneshot
+ExecStart=/usr/libexec/phosphor-state-manager/chassis-powercycle %i
+
+[Install]
+WantedBy=obmc-chassis-powercycle@%i.target
diff --git a/meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-ac-off@.service b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/chassis-poweroff@.service
index 6b42f8f067..7deff9aa15 100644
--- a/meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-ac-off@.service
+++ b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/chassis-poweroff@.service
@@ -1,6 +1,6 @@
[Unit]
Description=Turn off AC at Sled%i
-Conflicts=host-ac-on@%i.service
+Conflicts=chassis-poweron@%i.service
After=host-poweroff@%i.service
[Service]
diff --git a/meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-ac-on@.service b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/chassis-poweron@.service
index 657b2a8ea9..2f5f67bed1 100644
--- a/meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-ac-on@.service
+++ b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/chassis-poweron@.service
@@ -2,7 +2,7 @@
Description=Turn on AC at Sled%i
Requires=motor-init-calibration@%i.service
After=motor-init-calibration@%i.service
-Conflicts=host-ac-off@%i.service
+Conflicts=chassis-poweroff@%i.service
[Service]
Type=oneshot
diff --git a/meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-cycle@.service b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/host-powercycle@.service
index 2fb7d9dbba..2fb7d9dbba 100644
--- a/meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-cycle@.service
+++ b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/host-powercycle@.service
diff --git a/meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-poweroff@.service b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/host-poweroff@.service
index c81f6d6a19..c81f6d6a19 100644
--- a/meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-poweroff@.service
+++ b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/host-poweroff@.service
diff --git a/meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-poweron@.service b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/host-poweron@.service
index fd0cbd93af..5a57e977e9 100644
--- a/meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-poweron@.service
+++ b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/host-poweron@.service
@@ -2,8 +2,8 @@
Description=Power on System in Sled%i by Step Motor
Requires=motor-init-calibration@%i.service
After=motor-init-calibration@%i.service
-Requires=host-ac-on@%i.service
-After=host-ac-on@%i.service
+Requires=chassis-poweron@%i.service
+After=chassis-poweron@%i.service
Conflicts=host-poweroff@%i.service
[Service]
diff --git a/meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-reset@.service b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/host-powerreset@.service
index a8b6a082a1..a8b6a082a1 100644
--- a/meta-facebook/meta-bletchley/recipes-bletchley/motor-ctrl/files/host-reset@.service
+++ b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager/host-powerreset@.service
diff --git a/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager_%.bbappend b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager_%.bbappend
index f9783e5ea9..2c0c2de01c 100644
--- a/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager_%.bbappend
+++ b/meta-facebook/meta-bletchley/recipes-phosphor/state/phosphor-state-manager_%.bbappend
@@ -1,5 +1,27 @@
-FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"
-RDEPENDS:${PN}-discover:append = " bletchley-common-tool"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
+
+SRC_URI:append:bletchley = " \
+ file://chassis-powercycle \
+ file://chassis-powercycle@.service \
+ file://chassis-poweroff@.service \
+ file://chassis-poweron@.service \
+ file://host-poweroff@.service \
+ file://host-poweron@.service \
+ "
+
+RDEPENDS:${PN}-discover:append:bletchley = " bletchley-common-tool"
+RDEPENDS:${PN}:append:bletchley = " bash motor-ctrl"
+
+do_install:append:bletchley() {
+ install -d ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/*.service ${D}${systemd_system_unitdir}/
+
+ install -d ${D}${libexecdir}/${PN}
+ install -m 0777 ${WORKDIR}/chassis-powercycle ${D}${libexecdir}/${PN}/
+}
+
+FILES:${PN}:append:bletchley = " ${systemd_system_unitdir}"
+FILES:${PN}:append:bletchley = " ${libexecdir}/${PN}"
# Because Bletchley does not have IPMI between Bmc & Host, the Host init
# state will set to Off after Bmc booted. We require an extra service to
@@ -15,4 +37,11 @@ SYSTEMD_OVERRIDE:${PN}-discover:bletchley += "${@compose_list_zip(d, 'BLETCHLEY_
CHASSIS_DEFAULT_TARGETS:remove:bletchley = " \
obmc-chassis-powerreset@{}.target.requires/phosphor-reset-chassis-on@{}.service \
obmc-chassis-powerreset@{}.target.requires/phosphor-reset-chassis-running@{}.service \
+ obmc-chassis-poweroff@{}.target.requires/obmc-power-stop@{}.service \
+ obmc-chassis-poweron@{}.target.requires/obmc-power-start@{}.service \
"
+
+HOST_DEFAULT_TARGETS:append = " \
+ obmc-host-startmin@{}.target.wants/host-poweron@{}.service \
+ obmc-host-stop@{}.target.wants/host-poweroff@{}.service \
+" \ No newline at end of file