diff options
author | Hieu Huynh <hieuh@os.amperecomputing.com> | 2023-12-22 14:29:39 +0300 |
---|---|---|
committer | Hieu Huynh <hieuh@os.amperecomputing.com> | 2023-12-23 03:48:56 +0300 |
commit | 20dd705b5872b2ed9f4da69886afd542abb6f504 (patch) | |
tree | 8233ffcdf73a85150a6424a8019359c27965158a /meta-ampere | |
parent | 159146e27119cc89ccabc9837bae40d6f6baf1b4 (diff) | |
download | openbmc-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')
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 + } + ] } ] } |