diff options
author | Vishwanatha Subbanna <vishwa@linux.vnet.ibm.com> | 2021-03-26 21:01:30 +0300 |
---|---|---|
committer | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2021-03-30 18:17:11 +0300 |
commit | da5117af41a23e05b912fed1008503b09a361feb (patch) | |
tree | dd1911ad3ca261c4e74b9543d96c1738a654b488 /meta-ibm/recipes-phosphor/leds/phosphor-led-manager | |
parent | d0bec79a3360bc5c9c2225bd44a9b3071709cdb9 (diff) | |
download | openbmc-da5117af41a23e05b912fed1008503b09a361feb.tar.xz |
leds: rainier: Create virtual physical LEDs
These virtual physical LEDs are a mirror of real enclosure fault
and enclosure Identify physical LEDs. However, these virtual LEDs
are needed to be able to communicate the effective state of the
enclosure fault and enclosure identify LEDs during lamp test.
During lamp test, real physical enclosure fault and enclosure id
LEDs should not be updated and they must be updated only after
the lamp test finishes. However, Hypervisors would need to know
the effective state of enclosure level fault and identify
LEDs and that problem is resolved by these virtual LEDs.
Once the lamp test finishes, these virtual physical LEDs would again
be in sync with real enclosure fault and Identify LEDs.
Tests:
root@bmc:/lib/systemd/system/multi-user.target.wants# busctl tree
xyz.openbmc_project.LED.Controller.virtual_enc_fault
└─/xyz
└─/xyz/openbmc_project
└─/xyz/openbmc_project/led
└─/xyz/openbmc_project/led/physical
└─/xyz/openbmc_project/led/physical/virtual_enc_fault
root@bmc:/lib/systemd/system/multi-user.target.wants# busctl tree
xyz.openbmc_project.LED.Controller.virtual_enc_id
└─/xyz
└─/xyz/openbmc_project
└─/xyz/openbmc_project/led
└─/xyz/openbmc_project/led/physical
└─/xyz/openbmc_project/led/physical/virtual_enc_id
root@bmc:/lib/systemd/system/multi-user.target.wants#
busctl get-property xyz.openbmc_project.LED.Controller.virtual_enc_fault
/xyz/openbmc_project/led/physical/virtual_enc_fault
xyz.openbmc_project.Led.Physical State
s "xyz.openbmc_project.Led.Physical.Action.Off"
root@bmc:/lib/systemd/system/multi-user.target.wants# busctl
set-property xyz.openbmc_project.LED.GroupManager
/xyz/openbmc_project/led/groups/ddimm0_identify xyz.openbmc_project.Led.Group
Asserted b true
root@bmc:/lib/systemd/system/multi-user.target.wants# busctl get-property
xyz.openbmc_project.LED.Controller.virtual_enc_id
/xyz/openbmc_project/led/physical/virtual_enc_id
xyz.openbmc_project.Led.Physical State
s "xyz.openbmc_project.Led.Physical.Action.On"
root@bmc:/lib/systemd/system/multi-user.target.wants# busctlset-property
xyz.openbmc_project.LED.GroupManager
/xyz/op_ebmc_project/led/groups/ddimm0_identify xyz.openbmc_project.Led.Group
Asserted b false
root@bmc:/lib/systemd/system/multi-user.target.wants# busctl get-property
xyz.openbmc_project.LED.Controller.virtual_enc_id
/xyz/openbmc_project/led/physical/virtual_enc_id
xyz.openbmc_project.Led.Physical State
s "xyz.openbmc_project.Led.Physical.Action.Off"
Change-Id: Ic0ee5b0f376911650d5489d8bb84a4e83247190f
Signed-off-by: Vishwanatha Subbanna <vishwa@linux.vnet.ibm.com>
Diffstat (limited to 'meta-ibm/recipes-phosphor/leds/phosphor-led-manager')
-rw-r--r-- | meta-ibm/recipes-phosphor/leds/phosphor-led-manager/lamp-test-led-overrides.json | 10 | ||||
-rw-r--r-- | meta-ibm/recipes-phosphor/leds/phosphor-led-manager/obmc-led-create-virtual-leds@.service | 7 |
2 files changed, 17 insertions, 0 deletions
diff --git a/meta-ibm/recipes-phosphor/leds/phosphor-led-manager/lamp-test-led-overrides.json b/meta-ibm/recipes-phosphor/leds/phosphor-led-manager/lamp-test-led-overrides.json new file mode 100644 index 000000000..0cde229ba --- /dev/null +++ b/meta-ibm/recipes-phosphor/leds/phosphor-led-manager/lamp-test-led-overrides.json @@ -0,0 +1,10 @@ +{ + "forceLEDs":[ + "virtual_enc_fault", + "virtual_enc_id" + ], + "skipLEDs":[ + "virtual_enc_fault", + "virtual_enc_id" + ] +} diff --git a/meta-ibm/recipes-phosphor/leds/phosphor-led-manager/obmc-led-create-virtual-leds@.service b/meta-ibm/recipes-phosphor/leds/phosphor-led-manager/obmc-led-create-virtual-leds@.service new file mode 100644 index 000000000..41bd08131 --- /dev/null +++ b/meta-ibm/recipes-phosphor/leds/phosphor-led-manager/obmc-led-create-virtual-leds@.service @@ -0,0 +1,7 @@ +[Unit] +Description=Create the virtual physical LEDs + +[Service] +Restart=always +ExecStart=/usr/sbin/phosphor-ledcontroller -p %f +SyslogIdentifier=obmc-led-create-virtual-leds |