summaryrefslogtreecommitdiff
path: root/meta-ampere
diff options
context:
space:
mode:
authorHieu Huynh <hieuh@os.amperecomputing.com>2023-12-22 14:29:39 +0300
committerHieu Huynh <hieuh@os.amperecomputing.com>2023-12-23 03:48:56 +0300
commit20dd705b5872b2ed9f4da69886afd542abb6f504 (patch)
tree8233ffcdf73a85150a6424a8019359c27965158a /meta-ampere
parent159146e27119cc89ccabc9837bae40d6f6baf1b4 (diff)
downloadopenbmc-20dd705b5872b2ed9f4da69886afd542abb6f504.tar.xz
meta-ampere: handle Overtemp Fault LED
Assert Fault LED when detecting OVERTEMP signal asserted. This is done by adding new overtemp_fault LED group and update the overtemp service to assert/de-assert the LED group. 1. Start the ampere_overtemp@.service 2. Verify that the `Fault Led` is turned on and turn off after 10s. 3. Verify that Thermal Trip SEL is created. Signed-off-by: Hieu Huynh <hieuh@os.amperecomputing.com> Change-Id: Ifbc203bf79a13741082d84850b9e75ca6148a6cd
Diffstat (limited to 'meta-ampere')
-rw-r--r--meta-ampere/meta-common/recipes-phosphor/gpio/phosphor-gpio-monitor/ampere_overtemp.sh8
-rw-r--r--meta-ampere/meta-common/recipes-phosphor/gpio/phosphor-gpio-monitor/ampere_overtemp@.service3
-rw-r--r--meta-ampere/meta-common/recipes-phosphor/gpio/phosphor-gpio-monitor_%.bbappend12
-rw-r--r--meta-ampere/meta-jade/recipes-phosphor/leds/phosphor-led-manager/led-group-config.json11
-rw-r--r--meta-ampere/meta-mitchell/recipes-phosphor/leds/phosphor-led-manager/led-group-config.json11
5 files changed, 43 insertions, 2 deletions
diff --git a/meta-ampere/meta-common/recipes-phosphor/gpio/phosphor-gpio-monitor/ampere_overtemp.sh b/meta-ampere/meta-common/recipes-phosphor/gpio/phosphor-gpio-monitor/ampere_overtemp.sh
new file mode 100644
index 0000000000..803bab8fb4
--- /dev/null
+++ b/meta-ampere/meta-common/recipes-phosphor/gpio/phosphor-gpio-monitor/ampere_overtemp.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+
+# Assert/Deassert system fault led
+ampere_add_redfishevent.sh OpenBMC.0.1.CPUThermalTrip.Critical "$1"
+busctl set-property xyz.openbmc_project.LED.GroupManager /xyz/openbmc_project/led/groups/overtemp_fault xyz.openbmc_project.Led.Group Asserted b true
+obmcutil chassisoff
+sleep 10
+busctl set-property xyz.openbmc_project.LED.GroupManager /xyz/openbmc_project/led/groups/overtemp_fault xyz.openbmc_project.Led.Group Asserted b false
diff --git a/meta-ampere/meta-common/recipes-phosphor/gpio/phosphor-gpio-monitor/ampere_overtemp@.service b/meta-ampere/meta-common/recipes-phosphor/gpio/phosphor-gpio-monitor/ampere_overtemp@.service
index 06c2e9b226..11de73fe6b 100644
--- a/meta-ampere/meta-common/recipes-phosphor/gpio/phosphor-gpio-monitor/ampere_overtemp@.service
+++ b/meta-ampere/meta-common/recipes-phosphor/gpio/phosphor-gpio-monitor/ampere_overtemp@.service
@@ -3,5 +3,4 @@ Description=Ampere Computing LLC Overtemp event handling
[Service]
Restart=no
-ExecStart=/bin/sh -c "touch /tmp/fault_overtemp && obmcutil chassisoff"
-ExecStartPost=/bin/sh -c "ampere_add_redfishevent.sh OpenBMC.0.1.CPUThermalTrip.Critical %i && sleep 10 && rm /tmp/fault_overtemp"
+ExecStart=/usr/sbin/ampere_overtemp.sh %i
diff --git a/meta-ampere/meta-common/recipes-phosphor/gpio/phosphor-gpio-monitor_%.bbappend b/meta-ampere/meta-common/recipes-phosphor/gpio/phosphor-gpio-monitor_%.bbappend
index f8cf1d43cb..fb411e0f3c 100644
--- a/meta-ampere/meta-common/recipes-phosphor/gpio/phosphor-gpio-monitor_%.bbappend
+++ b/meta-ampere/meta-common/recipes-phosphor/gpio/phosphor-gpio-monitor_%.bbappend
@@ -1,5 +1,9 @@
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
+SRC_URI += " \
+ file://ampere_overtemp.sh \
+ "
+
SYSTEMD_SERVICE:${PN}-monitor += " \
ampere-host-shutdown-ack@.service \
ampere_overtemp@.service \
@@ -7,5 +11,13 @@ SYSTEMD_SERVICE:${PN}-monitor += " \
ampere_hightemp_stop@.service \
"
+FILES:${PN}-monitor += " \
+ /usr/sbin/ampere_overtemp.sh \
+ "
+
SYSTEMD_LINK:${PN}-monitor:append = " ../phosphor-multi-gpio-monitor.service:multi-user.target.requires/phosphor-multi-gpio-monitor.service"
+do_install:append() {
+ install -d ${D}/usr/sbin
+ install -m 0755 ${WORKDIR}/ampere_overtemp.sh ${D}/${sbindir}/
+}
diff --git a/meta-ampere/meta-jade/recipes-phosphor/leds/phosphor-led-manager/led-group-config.json b/meta-ampere/meta-jade/recipes-phosphor/leds/phosphor-led-manager/led-group-config.json
index bec2a99b6c..b92fa87529 100644
--- a/meta-ampere/meta-jade/recipes-phosphor/leds/phosphor-led-manager/led-group-config.json
+++ b/meta-ampere/meta-jade/recipes-phosphor/leds/phosphor-led-manager/led-group-config.json
@@ -42,6 +42,17 @@
"Period": 1000
}
]
+ },
+ {
+ "group": "overtemp_fault",
+ "members": [
+ {
+ "Name": "fault",
+ "Action": "On",
+ "DutyOn": 50,
+ "Period": 1000
+ }
+ ]
}
]
}
diff --git a/meta-ampere/meta-mitchell/recipes-phosphor/leds/phosphor-led-manager/led-group-config.json b/meta-ampere/meta-mitchell/recipes-phosphor/leds/phosphor-led-manager/led-group-config.json
index ef35e053bb..107b70c2c1 100644
--- a/meta-ampere/meta-mitchell/recipes-phosphor/leds/phosphor-led-manager/led-group-config.json
+++ b/meta-ampere/meta-mitchell/recipes-phosphor/leds/phosphor-led-manager/led-group-config.json
@@ -60,6 +60,17 @@
"Period": 1000
}
]
+ },
+ {
+ "group": "overtemp_fault",
+ "members": [
+ {
+ "Name": "fault",
+ "Action": "On",
+ "DutyOn": 50,
+ "Period": 1000
+ }
+ ]
}
]
}