summaryrefslogtreecommitdiff
path: root/meta-ampere
diff options
context:
space:
mode:
authorThang Q. Nguyen <thang@os.amperecomputing.com>2023-11-29 10:20:33 +0300
committerThang Q. Nguyen <thang@os.amperecomputing.com>2023-12-01 07:26:33 +0300
commit7779d7e928c42a51e5d7bea2d4fc12f59f859970 (patch)
tree126bb5b99e2ca24f874cf4fdd089e2825b9bad15 /meta-ampere
parent38dcc864e0883df9afc08542147a4fcfa4161059 (diff)
downloadopenbmc-7779d7e928c42a51e5d7bea2d4fc12f59f859970.tar.xz
meta-ampere: remove ampere-fault-monitor
Remove ampere-fault-monitor application which should be implemented via phosphor-led-manager framework. Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com> Change-Id: Iecd482657383de31dae0ee74bd0ca4de41d22f63
Diffstat (limited to 'meta-ampere')
-rw-r--r--meta-ampere/meta-common/recipes-ampere/platform/ampere-fault-monitor.bb23
-rw-r--r--meta-ampere/meta-common/recipes-ampere/platform/ampere-fault-monitor/ampere-check-gpio-fault@.service12
-rw-r--r--meta-ampere/meta-common/recipes-ampere/platform/ampere-fault-monitor/ampere-fault-monitor.service12
-rw-r--r--meta-ampere/meta-common/recipes-phosphor/packagegroups/packagegroup-ampere-apps.bb1
-rw-r--r--meta-ampere/meta-jade/recipes-ampere/platform/ampere-fault-monitor.bbappend12
-rw-r--r--meta-ampere/meta-jade/recipes-ampere/platform/ampere-fault-monitor/ampere_fault_monitor.sh179
-rw-r--r--meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-fault-monitor.bbappend12
-rw-r--r--meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-fault-monitor/ampere_fault_monitor.sh216
8 files changed, 0 insertions, 467 deletions
diff --git a/meta-ampere/meta-common/recipes-ampere/platform/ampere-fault-monitor.bb b/meta-ampere/meta-common/recipes-ampere/platform/ampere-fault-monitor.bb
deleted file mode 100644
index 79d7a3d294..0000000000
--- a/meta-ampere/meta-common/recipes-ampere/platform/ampere-fault-monitor.bb
+++ /dev/null
@@ -1,23 +0,0 @@
-SUMMARY = "Ampere Computing LLC Fault Monitor"
-DESCRIPTION = "Monitor fault events and update fault led status for Ampere systems"
-PR = "r1"
-
-LICENSE = "Apache-2.0"
-
-LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
-
-inherit systemd
-inherit obmc-phosphor-systemd
-
-FILESEXTRAPATHS:append := "${THISDIR}/${PN}:"
-
-SYSTEMD_SERVICE:${PN} = "ampere-fault-monitor.service"
-
-GPIO_FAULT_START_TGT = "ampere-check-gpio-fault@.service"
-GPIO_FAULT_START_S0_INSTMPL = "ampere-check-gpio-fault@{0}.service"
-SYSTEMD_SERVICE:${PN} += "${GPIO_FAULT_START_TGT}"
-
-HOST_ON_STARTMIN_TGTFMT = "obmc-host-startmin@{0}.target"
-GPIO_FAULT_START_S0_STARTMIN_FMT = "../${GPIO_FAULT_START_TGT}:${HOST_ON_STARTMIN_TGTFMT}.wants/${GPIO_FAULT_START_S0_INSTMPL}"
-SYSTEMD_LINK:${PN} += "${@compose_list_zip(d, 'GPIO_FAULT_START_S0_STARTMIN_FMT', 'OBMC_HOST_INSTANCES')}"
-
diff --git a/meta-ampere/meta-common/recipes-ampere/platform/ampere-fault-monitor/ampere-check-gpio-fault@.service b/meta-ampere/meta-common/recipes-ampere/platform/ampere-fault-monitor/ampere-check-gpio-fault@.service
deleted file mode 100644
index 8502b73c96..0000000000
--- a/meta-ampere/meta-common/recipes-ampere/platform/ampere-fault-monitor/ampere-check-gpio-fault@.service
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=Monitor GPIO fault and updade fault LED status %i
-Before=obmc-host-start-pre@0.target
-After=obmc-host-already-on@0.target
-Conflicts=obmc-host-stop@0.target
-
-[Service]
-Restart=no
-ExecStart=/bin/sh -c "if [ -f /usr/sbin/ampere_check_gpio_fault.sh ]; then /usr/sbin/ampere_check_gpio_fault.sh %i; fi"
-ExecStopPost=/bin/sh -c "if [ -f /tmp/gpio_fault ]; then sleep 5; rm /tmp/gpio_fault; fi"
-SyslogIdentifier=ampere_check_fault_gpio
-Type=simple
diff --git a/meta-ampere/meta-common/recipes-ampere/platform/ampere-fault-monitor/ampere-fault-monitor.service b/meta-ampere/meta-common/recipes-ampere/platform/ampere-fault-monitor/ampere-fault-monitor.service
deleted file mode 100644
index ee6af1ec79..0000000000
--- a/meta-ampere/meta-common/recipes-ampere/platform/ampere-fault-monitor/ampere-fault-monitor.service
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=Monitor fault events and updade fault LED status
-After=xyz.openbmc_project.State.Host@0.service
-
-[Service]
-Restart=on-failure
-ExecStart=/usr/sbin/ampere_fault_monitor.sh
-SyslogIdentifier=ampere_fault_monitor.sh
-Type=simple
-
-[Install]
-WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/meta-ampere/meta-common/recipes-phosphor/packagegroups/packagegroup-ampere-apps.bb b/meta-ampere/meta-common/recipes-phosphor/packagegroups/packagegroup-ampere-apps.bb
index b277659a21..afe33b726c 100644
--- a/meta-ampere/meta-common/recipes-phosphor/packagegroups/packagegroup-ampere-apps.bb
+++ b/meta-ampere/meta-common/recipes-phosphor/packagegroups/packagegroup-ampere-apps.bb
@@ -34,7 +34,6 @@ RDEPENDS:${PN}-chassis = " \
SUMMARY:${PN}-system = "Ampere System"
RDEPENDS:${PN}-system = " \
ampere-hostctrl \
- ampere-fault-monitor \
"
SUMMARY:${PN}-flash = "Ampere Flash"
diff --git a/meta-ampere/meta-jade/recipes-ampere/platform/ampere-fault-monitor.bbappend b/meta-ampere/meta-jade/recipes-ampere/platform/ampere-fault-monitor.bbappend
deleted file mode 100644
index 38cb4c66cf..0000000000
--- a/meta-ampere/meta-jade/recipes-ampere/platform/ampere-fault-monitor.bbappend
+++ /dev/null
@@ -1,12 +0,0 @@
-FILESEXTRAPATHS:append := "${THISDIR}/${PN}:"
-
-RDEPENDS:${PN} = "bash"
-
-SRC_URI += " \
- file://ampere_fault_monitor.sh \
- "
-
-do_install() {
- install -d ${D}/${sbindir}
- install -m 755 ${WORKDIR}/ampere_fault_monitor.sh ${D}/${sbindir}/
-}
diff --git a/meta-ampere/meta-jade/recipes-ampere/platform/ampere-fault-monitor/ampere_fault_monitor.sh b/meta-ampere/meta-jade/recipes-ampere/platform/ampere-fault-monitor/ampere_fault_monitor.sh
deleted file mode 100644
index 7e62eaeec9..0000000000
--- a/meta-ampere/meta-jade/recipes-ampere/platform/ampere-fault-monitor/ampere_fault_monitor.sh
+++ /dev/null
@@ -1,179 +0,0 @@
-#!/bin/bash
-
-# This script monitors fan, over-temperature, PSU, CPU/SCP failure and update fault LED status
-
-# shellcheck disable=SC2004
-# shellcheck disable=SC2046
-
-# common variables
- warning_fault_flag='/tmp/fault_warning'
- error_fault_flag='/tmp/fault_err'
- overtemp_fault_flag='/tmp/fault_overtemp'
- fault_RAS_UE_flag='/tmp/fault_RAS_UE'
-
- blink_rate=100000
-
- fault="false"
-
- on="true"
- off="false"
-
- gpio_fault="false"
-
-# fan variables
- fan_failed="false"
- fan_failed_flag='/tmp/fan_failed'
-
-# PSU variables
- psu_failed="false"
- psu_bus=6
- psu0_addr=0x58
- psu1_addr=0x59
- status_word_cmd=0x79
- # Following the PMBus Specification
- # Bit[1]: CML faults
- # Bit[2]: Over temperature faults
- # Bit[3]: Under voltage faults
- # Bit[4]: Over current faults
- # Bit[5]: Over voltage fault
- # Bit[10]: Fan faults
- psu_fault_bitmask=0x43e
-
-# led variables
- led_service='xyz.openbmc_project.LED.GroupManager'
- led_fault_path='/xyz/openbmc_project/led/groups/system_fault'
- led_fault_interface='xyz.openbmc_project.Led.Group'
- fault_led_status=$off
-
-# functions declaration
-check_fan_failed() {
- if [[ -f $fan_failed_flag ]]; then
- fan_failed="true"
- else
- fan_failed="false"
- fi
-}
-
-turn_on_off_fault_led() {
- busctl set-property $led_service $led_fault_path $led_fault_interface Asserted b "$1" >> /dev/null
-}
-
-check_psu_failed() {
- local psu0_presence
- local psu1_presence
- local psu0_value
- local psu1_value
-
- psu0_presence=$(gpioget $(gpiofind presence-ps0))
- psu0_failed="true"
- if [ "$psu0_presence" == "0" ]; then
- # PSU0 presence, monitor the PSUs using pmbus, check the STATUS_WORD
- psu0_value=$(i2cget -f -y $psu_bus $psu0_addr $status_word_cmd w)
- psu0_bit_fault=$(($psu0_value & $psu_fault_bitmask))
- if [ "$psu0_bit_fault" == "0" ]; then
- psu0_failed="false"
- fi
- fi
-
- psu1_presence=$(gpioget $(gpiofind presence-ps1))
- psu1_failed="true"
- if [ "$psu1_presence" == "0" ]; then
- # PSU1 presence, monitor the PSUs using pmbus, check the STATUS_WORD
- psu1_value=$(i2cget -f -y $psu_bus $psu1_addr $status_word_cmd w)
- psu1_bit_fault=$(($psu1_value & $psu_fault_bitmask))
- if [ "$psu1_bit_fault" == "0" ]; then
- psu1_failed="false"
- fi
- fi
-
- if [ "$psu0_failed" == "true" ] || [ "$psu1_failed" == "true" ]; then
- psu_failed="true"
- else
- psu_failed="false"
- fi
-}
-
-check_fault() {
- if [[ "$fan_failed" == "true" ]] || [[ "$psu_failed" == "true" ]] \
- || [[ "$gpio_fault" == "true" ]] \
- || [[ "$RAS_UE_occured" == "true" ]] \
- || [[ "$overtemp_occured" == "true" ]]; then
- fault="true"
- else
- fault="false"
- fi
-}
-
-control_fault_led() {
- if [ "$fault" == "true" ]; then
- if [ "$fault_led_status" == $off ]; then
- turn_on_off_fault_led $on
- fault_led_status=$on
- fi
- else
- if [ "$fault_led_status" == $on ]; then
- turn_on_off_fault_led $off
- fault_led_status=$off
- fi
- fi
-}
-
-blink_fault_led() {
- if [ "$fault_led_status" == $off ]; then
- turn_on_off_fault_led $on
- usleep $blink_rate
- turn_on_off_fault_led $off
- else
- turn_on_off_fault_led $off
- usleep $blink_rate
- turn_on_off_fault_led $on
- fi
-}
-
-check_gpio_fault() {
- if [[ -f $error_fault_flag ]]; then
- gpio_fault="true"
- else
- if [ -f $warning_fault_flag ]; then
- blink_fault_led
- rm $warning_fault_flag
- fi
- gpio_fault="false"
- fi
-}
-
-check_RAS_UE_occured() {
- if [[ -f $fault_RAS_UE_flag ]]; then
- echo "RAS UE error occured, turn on fault LED"
- RAS_UE_occured="true"
- else
- RAS_UE_occured="false"
- fi
-}
-
-check_overtemp_occured() {
- if [[ -f $overtemp_fault_flag ]]; then
- echo "Over temperature occured, turn on fault LED"
- overtemp_occured="true"
- else
- overtemp_occured="false"
- fi
-}
-
-# daemon start
-while true
-do
- check_gpio_fault
- check_fan_failed
- check_overtemp_occured
- check_RAS_UE_occured
-
- # Monitors PSU presence
- check_psu_failed
-
- check_fault
- control_fault_led
- sleep 2
-done
-
-exit 1
diff --git a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-fault-monitor.bbappend b/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-fault-monitor.bbappend
deleted file mode 100644
index 38cb4c66cf..0000000000
--- a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-fault-monitor.bbappend
+++ /dev/null
@@ -1,12 +0,0 @@
-FILESEXTRAPATHS:append := "${THISDIR}/${PN}:"
-
-RDEPENDS:${PN} = "bash"
-
-SRC_URI += " \
- file://ampere_fault_monitor.sh \
- "
-
-do_install() {
- install -d ${D}/${sbindir}
- install -m 755 ${WORKDIR}/ampere_fault_monitor.sh ${D}/${sbindir}/
-}
diff --git a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-fault-monitor/ampere_fault_monitor.sh b/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-fault-monitor/ampere_fault_monitor.sh
deleted file mode 100644
index b1cf7853ab..0000000000
--- a/meta-ampere/meta-mitchell/recipes-ampere/platform/ampere-fault-monitor/ampere_fault_monitor.sh
+++ /dev/null
@@ -1,216 +0,0 @@
-#!/bin/bash
-# This script monitors fan, over-temperature, PSU, CPU/SCP failure and update fault LED status
-
-# shellcheck disable=SC2046
-
-# common variables
- on=1
- off=0
-
- overtemp_fault_flag='/tmp/fault_overtemp'
-
-# gpio fault
- gpio_fault="false"
- gpio_fault_flag="/tmp/gpio_fault"
-
-# fan variables
- fan_failed="false"
- fan_failed_flag='/tmp/fan_failed'
-
-# PSU variables
- psu_failed="false"
- psu_bus=2
- psu0_addr=0x58
- psu1_addr=0x59
- status_word_cmd=0x79
- # Following the PMBus Specification
- # Bit[1]: CML faults
- # Bit[2]: Over temperature faults
- # Bit[3]: Under voltage faults
- # Bit[4]: Over current faults
- # Bit[5]: Over voltage fault
- # Bit[10]: Fan faults
- psu_fault_bitmask=0x43e
-
-# led variables
- fan_fault_led_status=$off
- psu_fault_led_status=$off
- led_bus=15
- led_addr=0x22
- led_port0_config=0x06
- led_port0_output=0x02
-
-# functions declaration
-check_fan_failed() {
- if [[ -f $fan_failed_flag ]]; then
- fan_failed="true"
- else
- fan_failed="false"
- fi
-}
-
-turn_on_off_fan_fault_led() {
- # Control fan fault led via CPLD's I2C at slave address 0x22, I2C16.
- # Get Port0 value
- p0_val=$(i2cget -f -y $led_bus $led_addr $led_port0_config)
- p0_val=$(("$p0_val" & ~1))
- # Config CPLD's IOepx Port0[0] from input to output, clear IOepx Port0[0].
- i2cset -f -y $led_bus $led_addr $led_port0_config $p0_val
-
- # Get led value
- led_st=$(i2cget -f -y $led_bus $led_addr $led_port0_output)
-
- if [ "$1" == $on ]; then
- led_st=$(("$led_st" | 1))
- else
- led_st=$(("$led_st" & ~1))
- fi
-
- # Turn on/off fan fault led
- i2cset -f -y $led_bus $led_addr $led_port0_output $led_st
-}
-
-turn_on_off_psu_fault_led() {
- # Control psu fault led via CPLD's I2C at slave address 0x22, I2C16.
- # Get Port1 value
- p1_val=$(i2cget -f -y $led_bus $led_addr $led_port0_config)
- p1_val=$(("$p1_val" & ~2))
- # Config CPLD's IOepx Port0[1] from input to output, clear IOepx Port0[1].
- i2cset -f -y $led_bus $led_addr $led_port0_config $p1_val
-
- # Get led value
- led_st=$(i2cget -f -y $led_bus $led_addr $led_port0_output)
- if [ "$1" == $on ]; then
- led_st=$(("$led_st" | 2))
- else
- led_st=$(("$led_st" & ~2))
- fi
-
- # Turn on/off psu fault led
- i2cset -f -y $led_bus $led_addr $led_port0_output $led_st
-}
-
-control_fan_fault_led() {
- if [ "$fan_failed" == "true" ]; then
- if [ "$fan_fault_led_status" == $off ]; then
- turn_on_off_fan_fault_led $on
- fan_fault_led_status=$on
- fi
- else
- if [ "$fan_fault_led_status" == $on ]; then
- turn_on_off_fan_fault_led $off
- fan_fault_led_status=$off
- fi
- fi
-}
-
-check_psu_failed() {
- local psu0_presence
- local psu1_presence
- local psu0_value
- local psu1_value
-
- psu0_presence=$(gpioget $(gpiofind presence-ps0))
- psu0_failed="true"
- if [ "$psu0_presence" == "0" ]; then
- # PSU0 presence, monitor the PSUs using pmbus, check the STATUS_WORD
- psu0_value=$(i2cget -f -y $psu_bus $psu0_addr $status_word_cmd w)
- psu0_bit_fault=$((psu0_value & psu_fault_bitmask))
- if [ "$psu0_bit_fault" == "0" ]; then
- psu0_failed="false"
- fi
- fi
-
- psu1_presence=$(gpioget $(gpiofind presence-ps1))
- psu1_failed="true"
- if [ "$psu1_presence" == "0" ]; then
- # PSU1 presence, monitor the PSUs using pmbus, check the STATUS_WORD
- psu1_value=$(i2cget -f -y $psu_bus $psu1_addr $status_word_cmd w)
- psu1_bit_fault=$((psu1_value & psu_fault_bitmask))
- if [ "$psu1_bit_fault" == "0" ]; then
- psu1_failed="false"
- fi
- fi
-
- if [ "$psu0_failed" == "true" ] || [ "$psu1_failed" == "true" ]; then
- psu_failed="true"
- else
- psu_failed="false"
- fi
-}
-
-control_psu_fault_led() {
- if [ "$psu_failed" == "true" ]; then
- if [ "$psu_fault_led_status" == $off ]; then
- turn_on_off_psu_fault_led $on
- psu_fault_led_status=$on
- fi
- else
- if [ "$psu_fault_led_status" == $on ]; then
- turn_on_off_psu_fault_led $off
- psu_fault_led_status=$off
- fi
- fi
-}
-
-check_overtemp_occured() {
- if [[ -f $overtemp_fault_flag ]]; then
- echo "Over temperature occured, turn on fault LED"
- overtemp_occured="true"
- else
- overtemp_occured="false"
- fi
-}
-
-
-check_gpio_fault() {
- if [[ -f $gpio_fault_flag ]]; then
- echo "GPIO fault event(s) occured, turn on fault LED"
- gpio_fault="true"
- else
- gpio_fault="false"
- fi
-}
-
-check_fault() {
- if [[ "$fan_failed" == "true" ]] || [[ "$psu_failed" == "true" ]] \
- || [[ "$overtemp_occured" == "true" ]] \
- || [[ "$gpio_fault" == "true" ]]; then
- fault="true"
- else
- fault="false"
- fi
-}
-
-# The System Fault Led turns on upon the system error, update the System Fault Led
-# based on the Fan fault status and PSU fault status
-control_sys_fault_led() {
- # Turn on/off the System Fault Led
- if [ "$fault" == "true" ]; then
- gpioset $(gpiofind led-fault)=1
- else
- gpioset $(gpiofind led-fault)=0
- fi
-}
-
-# daemon start
-while true
-do
- # Monitors Fan speeds
- check_fan_failed
- # Monitors PSU presence
- check_psu_failed
-
- check_overtemp_occured
- check_gpio_fault
- # Check fault to update fail
- check_fault
- control_sys_fault_led
-
- control_fan_fault_led
- control_psu_fault_led
-
- sleep 2
-done
-
-exit 1