Initial commit
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
[Unit]
|
||||
Description=ID Button Pressed Service
|
||||
Wants=mapper-wait@-xyz-openbmc_project-led-groups.service
|
||||
After=mapper-wait@-xyz-openbmc_project-led-groups.service
|
||||
StartLimitIntervalSec=0
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/usr/bin/toggle_identify_led.sh
|
||||
@@ -0,0 +1,5 @@
|
||||
DEVPATH=/dev/input/by-path/platform-gpio-keys-event
|
||||
KEY=41
|
||||
POLARITY=1
|
||||
TARGET=id-button-pressed.service
|
||||
EXTRA_ARGS=--continue
|
||||
@@ -0,0 +1,27 @@
|
||||
#!/bin/sh
|
||||
# Toggle the state of identify LED Group
|
||||
|
||||
SERVICE="xyz.openbmc_project.LED.GroupManager"
|
||||
INTERFACE="xyz.openbmc_project.Led.Group"
|
||||
PROPERTY="Asserted"
|
||||
|
||||
# Get current state
|
||||
object=$(busctl tree $SERVICE --list | grep identify)
|
||||
led=$(cat /sys/devices/platform/leds/leds/front-id/brightness)
|
||||
if [ "$led" = "0" ]; then
|
||||
busctl set-property $SERVICE "$object" $INTERFACE $PROPERTY b false
|
||||
else
|
||||
busctl set-property $SERVICE "$object" $INTERFACE $PROPERTY b true
|
||||
fi
|
||||
|
||||
state=$(busctl get-property $SERVICE "$object" $INTERFACE $PROPERTY \
|
||||
| awk '{print $NF;}')
|
||||
|
||||
if [ "$state" = "false" ]; then
|
||||
target='true'
|
||||
else
|
||||
target='false'
|
||||
fi
|
||||
|
||||
# Set target state
|
||||
busctl set-property $SERVICE "$object" $INTERFACE $PROPERTY b $target
|
||||
Reference in New Issue
Block a user