blob: 5cc68bbbc0a6a1e222c1e8c18a07fe68905234e2 [file] [log] [blame]
Ben_Paib24a3e52019-07-15 16:19:02 +08001#!/bin/sh
2# Toggle the state of identify LED Group
3
4SERVICE="xyz.openbmc_project.LED.GroupManager"
5INTERFACE="xyz.openbmc_project.Led.Group"
6PROPERTY="Asserted"
7
8# Get current state
9object=$(busctl tree $SERVICE --list | grep identify)
Ben Pai4739f602020-03-02 13:32:10 +080010led=$(cat /sys/devices/platform/leds/leds/front-id/brightness)
Patrick Williams9b871682023-04-14 15:08:08 -050011if [ "$led" = "0" ]; then
12 busctl set-property $SERVICE "$object" $INTERFACE $PROPERTY b false
Ben_Paib24a3e52019-07-15 16:19:02 +080013else
Patrick Williams9b871682023-04-14 15:08:08 -050014 busctl set-property $SERVICE "$object" $INTERFACE $PROPERTY b true
Ben_Paib24a3e52019-07-15 16:19:02 +080015fi
16
Patrick Williams9b871682023-04-14 15:08:08 -050017state=$(busctl get-property $SERVICE "$object" $INTERFACE $PROPERTY \
Ben_Paib24a3e52019-07-15 16:19:02 +080018 | awk '{print $NF;}')
19
Patrick Williams9b871682023-04-14 15:08:08 -050020if [ "$state" = "false" ]; then
Ben_Paib24a3e52019-07-15 16:19:02 +080021 target='true'
22else
23 target='false'
24fi
25
26# Set target state
Patrick Williams9b871682023-04-14 15:08:08 -050027busctl set-property $SERVICE "$object" $INTERFACE $PROPERTY b $target