Ben_Pai | b24a3e5 | 2019-07-15 16:19:02 +0800 | [diff] [blame] | 1 | #!/bin/sh |
| 2 | # Toggle the state of identify LED Group |
| 3 | |
| 4 | SERVICE="xyz.openbmc_project.LED.GroupManager" |
| 5 | INTERFACE="xyz.openbmc_project.Led.Group" |
| 6 | PROPERTY="Asserted" |
| 7 | |
| 8 | # Get current state |
| 9 | object=$(busctl tree $SERVICE --list | grep identify) |
Ben Pai | 4739f60 | 2020-03-02 13:32:10 +0800 | [diff] [blame] | 10 | led=$(cat /sys/devices/platform/leds/leds/front-id/brightness) |
Patrick Williams | 9b87168 | 2023-04-14 15:08:08 -0500 | [diff] [blame] | 11 | if [ "$led" = "0" ]; then |
| 12 | busctl set-property $SERVICE "$object" $INTERFACE $PROPERTY b false |
Ben_Pai | b24a3e5 | 2019-07-15 16:19:02 +0800 | [diff] [blame] | 13 | else |
Patrick Williams | 9b87168 | 2023-04-14 15:08:08 -0500 | [diff] [blame] | 14 | busctl set-property $SERVICE "$object" $INTERFACE $PROPERTY b true |
Ben_Pai | b24a3e5 | 2019-07-15 16:19:02 +0800 | [diff] [blame] | 15 | fi |
| 16 | |
Patrick Williams | 9b87168 | 2023-04-14 15:08:08 -0500 | [diff] [blame] | 17 | state=$(busctl get-property $SERVICE "$object" $INTERFACE $PROPERTY \ |
Ben_Pai | b24a3e5 | 2019-07-15 16:19:02 +0800 | [diff] [blame] | 18 | | awk '{print $NF;}') |
| 19 | |
Patrick Williams | 9b87168 | 2023-04-14 15:08:08 -0500 | [diff] [blame] | 20 | if [ "$state" = "false" ]; then |
Ben_Pai | b24a3e5 | 2019-07-15 16:19:02 +0800 | [diff] [blame] | 21 | target='true' |
| 22 | else |
| 23 | target='false' |
| 24 | fi |
| 25 | |
| 26 | # Set target state |
Patrick Williams | 9b87168 | 2023-04-14 15:08:08 -0500 | [diff] [blame] | 27 | busctl set-property $SERVICE "$object" $INTERFACE $PROPERTY b $target |