Initial commit
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
SUMMARY = "ID Button pressed application"
|
||||
PR = "r1"
|
||||
LICENSE = "Apache-2.0"
|
||||
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
|
||||
|
||||
inherit obmc-phosphor-systemd
|
||||
|
||||
DEPENDS += "phosphor-gpio-monitor"
|
||||
RDEPENDS:${PN} += "phosphor-gpio-monitor-monitor"
|
||||
|
||||
S = "${WORKDIR}"
|
||||
SRC_URI += "file://toggle_identify_led.sh"
|
||||
|
||||
do_install() {
|
||||
install -d ${D}${bindir}
|
||||
install -m 0755 ${WORKDIR}/toggle_identify_led.sh \
|
||||
${D}${bindir}/toggle_identify_led.sh
|
||||
}
|
||||
|
||||
SYSTEMD_ENVIRONMENT_FILE:${PN} +="obmc/gpio/id_button"
|
||||
|
||||
ID_BUTTON_SERVICE = "id_button"
|
||||
|
||||
TMPL = "phosphor-gpio-monitor@.service"
|
||||
INSTFMT = "phosphor-gpio-monitor@{0}.service"
|
||||
TGT = "multi-user.target"
|
||||
FMT = "../${TMPL}:${TGT}.requires/${INSTFMT}"
|
||||
|
||||
SYSTEMD_SERVICE:${PN} += "id-button-pressed.service"
|
||||
SYSTEMD_LINK:${PN} += "${@compose_list(d, 'FMT', 'ID_BUTTON_SERVICE')}"
|
||||
@@ -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
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
INVENTORY=/system/chassis/motherboard/powersupply0
|
||||
DEVPATH=/dev/input/by-path/platform-gpio-keys-event
|
||||
KEY=104
|
||||
NAME=powersupply0
|
||||
DRIVERS=/sys/bus/i2c/drivers/ibm-cffps,3-0069
|
||||
EXTRA_IFACES=xyz.openbmc_project.Inventory.Item.PowerSupply
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
INVENTORY=/system/chassis/motherboard/powersupply1
|
||||
DEVPATH=/dev/input/by-path/platform-gpio-keys-event
|
||||
KEY=143
|
||||
NAME=powersupply1
|
||||
DRIVERS=/sys/bus/i2c/drivers/ibm-cffps,3-0068
|
||||
EXTRA_IFACES=xyz.openbmc_project.Inventory.Item.PowerSupply
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
INVENTORY=/system/chassis/motherboard/powersupply0
|
||||
DEVPATH=/dev/input/by-path/platform-gpio-keys-event
|
||||
KEY=37
|
||||
NAME=powersupply0
|
||||
DRIVERS=/sys/bus/i2c/drivers/ibm-cffps,3-0069
|
||||
EXTRA_IFACES=xyz.openbmc_project.Inventory.Item.PowerSupply
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
INVENTORY=/system/chassis/motherboard/powersupply1
|
||||
DEVPATH=/dev/input/by-path/platform-gpio-keys-event
|
||||
KEY=59
|
||||
NAME=powersupply1
|
||||
DRIVERS=/sys/bus/i2c/drivers/ibm-cffps,3-0068
|
||||
EXTRA_IFACES=xyz.openbmc_project.Inventory.Item.PowerSupply
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
INVENTORY=/system/chassis/motherboard/powersupply1
|
||||
DEVPATH=/dev/input/by-path/platform-gpio-keys-event
|
||||
KEY=127
|
||||
NAME=powersupply1
|
||||
DRIVERS=/sys/bus/i2c/drivers/ibm-cffps,3-0068
|
||||
EXTRA_IFACES=xyz.openbmc_project.Inventory.Item.PowerSupply
|
||||
@@ -0,0 +1,12 @@
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
|
||||
|
||||
TMPL_POWERSUPPLY = "phosphor-gpio-presence@.service"
|
||||
INSTFMT_POWERSUPPLY = "phosphor-gpio-presence@{0}.service"
|
||||
POWERSUPPLY_TGT = "multi-user.target"
|
||||
FMT_POWERSUPPLY = "../${TMPL_POWERSUPPLY}:${POWERSUPPLY_TGT}.wants/${INSTFMT_POWERSUPPLY}"
|
||||
|
||||
SYSTEMD_LINK:${PN}-presence:append:ibm-ac-server = " ${@compose_list(d, 'FMT_POWERSUPPLY', 'OBMC_POWER_SUPPLY_INSTANCES')}"
|
||||
|
||||
POWERSUPPLY_ENV_FMT = "obmc/gpio/phosphor-power-supply-{0}.conf"
|
||||
|
||||
SYSTEMD_ENVIRONMENT_FILE:${PN}-presence:append:ibm-ac-server = " ${@compose_list(d, 'POWERSUPPLY_ENV_FMT', 'OBMC_POWER_SUPPLY_INSTANCES')}"
|
||||
Reference in New Issue
Block a user