blob: e08e1785ef8f9e6c3cb61c09d92cd7690cedde93 [file] [log] [blame]
Vincent Chouf16ca762022-09-12 10:31:29 -05001#!/bin/bash
2
3BOOT_SERVICE_NAME="xyz.openbmc_project.State.Host"
4BOOT_STATUS_OBJPATH="/xyz/openbmc_project/state/host0"
5BOOT_INTERFACE_NAME="xyz.openbmc_project.State.OperatingSystem.Status"
6BOOT_Property="OperatingSystemState"
7
8LED_SERVICE_NAME="xyz.openbmc_project.LED.GroupManager"
9LED_INACTIVE_OBJPATH="/xyz/openbmc_project/led/groups/boot_status_inactive"
10LED_STANDBY_OBJPATH="/xyz/openbmc_project/led/groups/boot_status_standby"
11LED_INTERFACE_NAME="xyz.openbmc_project.Led.Group"
12LED_Property="Asserted"
13
14boot_status=""
15led_status=""
16
17while true; do
18 boot_status="$(busctl get-property $BOOT_SERVICE_NAME $BOOT_STATUS_OBJPATH $BOOT_INTERFACE_NAME $BOOT_Property | awk '{print $2}')"
19
20 if [[ $boot_status != "\"xyz.openbmc_project.State.OperatingSystem.Status.OSStatus.Standby\"" ]] && [[ $led_status != "BLINKING" ]];then
21 busctl set-property $LED_SERVICE_NAME $LED_INACTIVE_OBJPATH $LED_INTERFACE_NAME $LED_Property b true
22 busctl set-property $LED_SERVICE_NAME $LED_STANDBY_OBJPATH $LED_INTERFACE_NAME $LED_Property b false
23 led_status="BLINKING"
24 elif [[ $boot_status == "\"xyz.openbmc_project.State.OperatingSystem.Status.OSStatus.Standby\"" ]] && [[ $led_status != "ON" ]];then
25 busctl set-property $LED_SERVICE_NAME $LED_INACTIVE_OBJPATH $LED_INTERFACE_NAME $LED_Property b false
26 busctl set-property $LED_SERVICE_NAME $LED_STANDBY_OBJPATH $LED_INTERFACE_NAME $LED_Property b true
27 led_status="ON"
28 fi
29
30 sleep 10
31
32done
33
34exit 0