diff options
13 files changed, 105 insertions, 1 deletions
diff --git a/meta-ampere/meta-jade/recipes-ampere/platform/mtjade-utils.bb b/meta-ampere/meta-jade/recipes-ampere/platform/mtjade-utils.bb index 1ed440a2bd..546315b7e1 100644 --- a/meta-ampere/meta-jade/recipes-ampere/platform/mtjade-utils.bb +++ b/meta-ampere/meta-jade/recipes-ampere/platform/mtjade-utils.bb @@ -9,6 +9,7 @@ SRC_URI = " \ file://gpio-lib.sh \ file://ampere_power_util.sh \ file://ampere_host_check.sh \ + file://ampere_add_redfishevent.sh \ " RDEPENDS:${PN} = "bash" @@ -19,4 +20,5 @@ do_install() { install -m 0755 ${WORKDIR}/gpio-defs.sh ${D}/${sbindir}/ install -m 0755 ${WORKDIR}/ampere_power_util.sh ${D}/${sbindir}/ install -m 0755 ${WORKDIR}/ampere_host_check.sh ${D}/${sbindir}/ -}
\ No newline at end of file + install -m 0755 ${WORKDIR}/ampere_add_redfishevent.sh ${D}/${sbindir}/ +} diff --git a/meta-ampere/meta-jade/recipes-ampere/platform/mtjade-utils/ampere_add_redfishevent.sh b/meta-ampere/meta-jade/recipes-ampere/platform/mtjade-utils/ampere_add_redfishevent.sh new file mode 100644 index 0000000000..1170c6a7ca --- /dev/null +++ b/meta-ampere/meta-jade/recipes-ampere/platform/mtjade-utils/ampere_add_redfishevent.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +registry=$1 +msgarg=$2 + +if [ -z "$registry" ]; then + echo "Usage:" + echo " $0 <redfish registry> <argument>" + exit +fi + +# Check if logger-systemd exist. Do nothing if not exists +if ! command -v logger-systemd; +then + echo "logger-systemd does not exist. Skip log events for $registry $msgarg" + exit +fi + +# Log events +logger-systemd --journald << EOF +MESSAGE= +PRIORITY= +SEVERITY= +REDFISH_MESSAGE_ID=$registry +REDFISH_MESSAGE_ARGS=$msgarg +EOF diff --git a/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor.bb b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor.bb new file mode 100644 index 0000000000..c57ab1323c --- /dev/null +++ b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor.bb @@ -0,0 +1,32 @@ +SUMMARY = "Ampere Computing LLC Host temperature event monitor application" +PR = "r1" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +inherit obmc-phosphor-systemd +inherit allarch + +DEPENDS += "virtual/obmc-gpio-monitor" +RDEPENDS:${PN} += "virtual/obmc-gpio-monitor" + +OBMC_HOST_MONITOR_INSTANCES = "S0_overtemp S1_overtemp S0_hightemp_start S0_hightemp_stop S1_hightemp_start S1_hightemp_stop" + +# Copies config file having arguments for monitoring host overtemp +# via GPIO assertion +SYSTEMD_ENVIRONMENT_FILE:${PN} += " \ + obmc/gpio/S0_overtemp \ + obmc/gpio/S0_hightemp_start \ + obmc/gpio/S0_hightemp_stop \ + obmc/gpio/S1_overtemp \ + obmc/gpio/S1_hightemp_start \ + obmc/gpio/S1_hightemp_stop \ + " + + +SYSTEMD_SERVICE:${PN} = "ampere_overtemp@.service ampere_hightemp_start@.service ampere_hightemp_stop@.service" + +GPIO_MONITOR_TMPL = "phosphor-gpio-monitor@.service" +GPIO_MONITOR_TGTFMT = "phosphor-gpio-monitor@{0}.service" +TGT = "multi-user.target" +TEMPEVENT_MONITOR_FMT = "../${GPIO_MONITOR_TMPL}:${TGT}.requires/${GPIO_MONITOR_TGTFMT}" +SYSTEMD_LINK:${PN} += "${@compose_list(d, 'TEMPEVENT_MONITOR_FMT', 'OBMC_HOST_MONITOR_INSTANCES', 'OBMC_HOST_INSTANCES')}" diff --git a/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/ampere_hightemp_start@.service b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/ampere_hightemp_start@.service new file mode 100644 index 0000000000..5f26194eb0 --- /dev/null +++ b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/ampere_hightemp_start@.service @@ -0,0 +1,6 @@ +[Unit] +Description=Ampere Computing LLC HighTempt event + +[Service] +Restart=no +ExecStart=/usr/bin/env ampere_add_redfishevent.sh OpenBMC.0.1.AmpereEvent.Warning "CPU%i HighTemp asserted" diff --git a/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/ampere_hightemp_stop@.service b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/ampere_hightemp_stop@.service new file mode 100644 index 0000000000..012b0ddaf9 --- /dev/null +++ b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/ampere_hightemp_stop@.service @@ -0,0 +1,6 @@ +[Unit] +Description=Ampere Computing LLC HighTempt event + +[Service] +Restart=no +ExecStart=/usr/bin/env ampere_add_redfishevent.sh OpenBMC.0.1.AmpereEvent.OK "CPU%i HighTemp deasserted" diff --git a/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/ampere_overtemp@.service b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/ampere_overtemp@.service new file mode 100644 index 0000000000..587cba195d --- /dev/null +++ b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/ampere_overtemp@.service @@ -0,0 +1,7 @@ +[Unit] +Description=Ampere Computing LLC Overtemp event + +[Service] +Restart=no +ExecStart=/usr/bin/env obmcutil chassisoff +ExecStartPost=/usr/bin/env ampere_add_redfishevent.sh OpenBMC.0.1.CPUThermalTrip.Critical %i diff --git a/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S0_hightemp_start b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S0_hightemp_start new file mode 100644 index 0000000000..44dc221ed8 --- /dev/null +++ b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S0_hightemp_start @@ -0,0 +1,4 @@ +DEVPATH=/dev/input/by-path/platform-gpio-keys-event +KEY=72 +POLARITY=1 +TARGET=ampere_hightemp_start@0.service diff --git a/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S0_hightemp_stop b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S0_hightemp_stop new file mode 100644 index 0000000000..ccd0519094 --- /dev/null +++ b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S0_hightemp_stop @@ -0,0 +1,4 @@ +DEVPATH=/dev/input/by-path/platform-gpio-keys-event +KEY=72 +POLARITY=0 +TARGET=ampere_hightemp_stop@0.service diff --git a/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S0_overtemp b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S0_overtemp new file mode 100644 index 0000000000..e39e196805 --- /dev/null +++ b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S0_overtemp @@ -0,0 +1,4 @@ +DEVPATH=/dev/input/by-path/platform-gpio-keys-event +KEY=51 +POLARITY=1 +TARGET=ampere_overtemp@0.service diff --git a/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S1_hightemp_start b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S1_hightemp_start new file mode 100644 index 0000000000..901eb00801 --- /dev/null +++ b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S1_hightemp_start @@ -0,0 +1,4 @@ +DEVPATH=/dev/input/by-path/platform-gpio-keys-event +KEY=216 +POLARITY=1 +TARGET=ampere_hightemp_start@1.service diff --git a/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S1_hightemp_stop b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S1_hightemp_stop new file mode 100644 index 0000000000..f1b4cc12be --- /dev/null +++ b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S1_hightemp_stop @@ -0,0 +1,4 @@ +DEVPATH=/dev/input/by-path/platform-gpio-keys-event +KEY=216 +POLARITY=0 +TARGET=ampere_hightemp_start@1.service diff --git a/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S1_overtemp b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S1_overtemp new file mode 100644 index 0000000000..c7bb8c1bc4 --- /dev/null +++ b/meta-ampere/meta-jade/recipes-phosphor/gpio/tempevent-monitor/obmc/gpio/S1_overtemp @@ -0,0 +1,4 @@ +DEVPATH=/dev/input/by-path/platform-gpio-keys-event +KEY=206 +POLARITY=1 +TARGET=ampere_overtemp@1.service diff --git a/meta-ampere/meta-jade/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend b/meta-ampere/meta-jade/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend index 7b27a7edd9..23015afbb8 100644 --- a/meta-ampere/meta-jade/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend +++ b/meta-ampere/meta-jade/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bbappend @@ -6,6 +6,7 @@ RDEPENDS:${PN}-extras:append:mtjade = " \ fault-monitor \ id-button \ psu-hotswap-reset \ + tempevent-monitor \ " RDEPENDS:${PN}-inventory:append:mtjade = " \ |