meta-facebook: yosemite4: enhance power control events
1. Add event logs while power control is failed
Change-Id: Ib5f7e0c139004ecce765a9ad4ef5ee0b4566b7fe
Signed-off-by: Bright Cheng <bright_cheng@wiwynn.com>
diff --git a/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/chassis-powercycle b/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/chassis-powercycle
index 448b7be..fe7233e 100644
--- a/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/chassis-powercycle
+++ b/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/chassis-powercycle
@@ -43,13 +43,17 @@
sleep 1
if ! gpio_set "$GPIOCHIP_IO_EXP_SLOT_PWR_CTRL" "$IO_EXP_SLOT_PWR_CTRL"=1
then
- echo "Failed to set slot$1 power off"
+ msg="Failed to set slot$CHASSIS_ID power off"
+ echo "${msg}"
+ add_sel "${msg}"
fi
sleep 20
fi
if ! gpio_set "$GPIOCHIP_IO_EXP_SLOT_PWR_CTRL" "$IO_EXP_SLOT_PWR_CTRL"=0
then
- echo "Failed to set slot$1 power on"
+ msg="Failed to set slot$CHASSIS_ID power on"
+ echo "${msg}"
+ add_sel "${msg}"
fi
sleep 2
@@ -67,10 +71,15 @@
fi
busctl set-property "$CHASSIS_BUS_NAME""$CHASSIS_ID" "$CHASSIS_OBJ_PATH""$CHASSIS_ID" "$CHASSIS_INTF_NAME" "$CHASSIS_PROPERTY_NAME" s "$CHASSIS_ON_PROPERTY"
/usr/libexec/phosphor-state-manager/wait-until-mctp-connection-done "$CHASSIS_ID" && systemctl restart "phosphor-discover-system-state@$CHASSIS_ID.service"
- echo "Chassis$CHASSIS_ID cycle success"
+ msg="Chassis$CHASSIS_ID cycle success"
+ echo "${msg}"
+ add_sel "${msg}"
exit 0;
else
busctl set-property "$CHASSIS_BUS_NAME""$CHASSIS_ID" "$CHASSIS_OBJ_PATH""$CHASSIS_ID" "$CHASSIS_INTF_NAME" "$CHASSIS_PROPERTY_NAME" s "$CHASSIS_OFF_PROPERTY"
+ msg="Chassis$CHASSIS_ID cycle failed, Chassis$CHASSIS_ID is power off"
+ echo "${msg}"
+ add_sel "${msg}"
exit 1;
fi
fi
diff --git a/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/chassis-poweroff b/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/chassis-poweroff
index b717554..61a7f09 100644
--- a/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/chassis-poweroff
+++ b/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/chassis-poweroff
@@ -30,7 +30,9 @@
sleep 1
if ! gpio_set "$GPIOCHIP_IO_EXP_SLOT_PWR_CTRL" "$IO_EXP_SLOT_PWR_CTRL"=1
then
- echo "Failed to set slot$1 power off"
+ msg="Failed to set slot$CHASSIS_ID power off"
+ echo "${msg}"
+ add_sel "${msg}"
fi
sleep 1
@@ -42,7 +44,9 @@
echo "Chassis$CHASSIS_ID is power off"
else
busctl set-property "$CHASSIS_BUS_NAME""$CHASSIS_ID" "$CHASSIS_OBJ_PATH""$CHASSIS_ID" "$CHASSIS_INTF_NAME" "$CHASSIS_PROPERTY_NAME" s "$CHASSIS_ON_PROPERTY"
- echo "Chassis$CHASSIS_ID is power on"
+ msg="Failed to power off Chassis$CHASSIS_ID, Chassis$CHASSIS_ID is power on"
+ echo "${msg}"
+ add_sel "${msg}"
exit 0;
fi
}
diff --git a/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/chassis-poweron b/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/chassis-poweron
index 386cfc2..4922c8a 100644
--- a/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/chassis-poweron
+++ b/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/chassis-poweron
@@ -25,7 +25,9 @@
{
if ! gpio_set "$GPIOCHIP_IO_EXP_SLOT_PWR_CTRL" "$IO_EXP_SLOT_PWR_CTRL"=0
then
- echo "Failed to set slot$1 power on"
+ msg="Failed to set slot$1 power on"
+ echo "${msg}"
+ add_sel "${msg}"
fi
sleep 1
@@ -42,10 +44,12 @@
fi
fi
busctl set-property "$CHASSIS_BUS_NAME""$CHASSIS_ID" "$CHASSIS_OBJ_PATH""$CHASSIS_ID" "$CHASSIS_INTF_NAME" "$CHASSIS_PROPERTY_NAME" s "$CHASSIS_ON_PROPERTY"
- echo "Chassis$1 is power on"
+ echo "Chassis$CHASSIS_ID is power on"
else
busctl set-property "$CHASSIS_BUS_NAME""$CHASSIS_ID" "$CHASSIS_OBJ_PATH""$CHASSIS_ID" "$CHASSIS_INTF_NAME" "$CHASSIS_PROPERTY_NAME" s "$CHASSIS_OFF_PROPERTY"
- echo "Chassis$1 is power off"
+ msg="Failed to power on Chassis$CHASSIS_ID, Chassis$CHASSIS_ID is power off"
+ echo "${msg}"
+ add_sel "${msg}"
exit 0;
fi
}
diff --git a/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/host-powercycle b/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/host-powercycle
index 517e08f..2e7d316 100644
--- a/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/host-powercycle
+++ b/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/host-powercycle
@@ -34,7 +34,9 @@
get_host_status
if [ "$host_status" != "$STATE_OFF" ]; then
- echo "Do power cycle fail, fail to set host$CHASSIS_ID power off"
+ msg="Do power cycle fail, fail to set host$CHASSIS_ID power off"
+ echo "${msg}"
+ add_sel "${msg}"
exit 1
fi
fi
@@ -48,10 +50,14 @@
get_host_status
if [ "$host_status" != "$STATE_ON" ]; then
- echo "Do power cycle, failed to set host$CHASSIS_ID power on"
+ msg="Do power cycle, failed to set host$CHASSIS_ID power on"
+ echo "${msg}"
+ add_sel "${msg}"
exit 1
fi
fi
-echo "Host$1 power cycle success"
+msg="Host$1 power cycle success"
+echo "${msg}"
+add_sel "${msg}"
exit 0;
diff --git a/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/host-poweroff b/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/host-poweroff
index 12492d2..cdfe724 100644
--- a/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/host-poweroff
+++ b/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/host-poweroff
@@ -46,6 +46,8 @@
echo "Host$1 power off success"
exit 0;
else
- echo "Failed to set host$1 power off"
+ msg="Failed to set host$1 power off"
+ echo "${msg}"
+ add_sel "${msg}"
exit 1
fi
diff --git a/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/host-poweron b/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/host-poweron
index 9f84809..7329115 100644
--- a/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/host-poweron
+++ b/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/host-poweron
@@ -48,6 +48,8 @@
echo "Host$1 power on success"
exit 0;
else
- echo "Failed to set host$1 power on"
+ msg="Failed to set host$1 power on"
+ echo "${msg}"
+ add_sel "${msg}"
exit 1
fi
diff --git a/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/host-powerreset b/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/host-powerreset
index 082fbbd..8b49c91 100644
--- a/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/host-powerreset
+++ b/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/host-powerreset
@@ -11,7 +11,9 @@
EID=$(($1*10))
if ! pldmtool raw -d 0x80 0x02 0x39 0x00 0x00 0x01 0x00 0x04 -m "$EID"
then
- echo "Failed to set host$1 power reset"
+ msg="Failed to set host$1 power reset"
+ echo "${msg}"
+ add_sel "${msg}"
else
echo "Host$1 is power reset"
fi
diff --git a/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/power-cmd b/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/power-cmd
index 2ac98c4..4d7e759 100644
--- a/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/power-cmd
+++ b/meta-facebook/meta-yosemite4/recipes-phosphor/state/phosphor-state-manager/power-cmd
@@ -44,3 +44,13 @@
done
echo "gpioset failed"
}
+
+add_sel()
+{
+ MESSAGE="$*"
+
+ busctl call \
+ xyz.openbmc_project.Logging /xyz/openbmc_project/logging \
+ xyz.openbmc_project.Logging.Create Create "ssa{ss}" "$MESSAGE" \
+ xyz.openbmc_project.Logging.Entry.Level.Error 0
+}