Revision Date Author Comments
# 08148283 08-Oct-2024 Andrew Geissler <geissonator@yahoo.com>

phosphor-set-chassis-transition: ensure only run once

If a user were to power their system on, and then off, and then off
again, they will see their CurrentPowerState set to TransitioningToOff.

Alt

phosphor-set-chassis-transition: ensure only run once

If a user were to power their system on, and then off, and then off
again, they will see their CurrentPowerState set to TransitioningToOff.

Although it's a bit of an unusual use case, it's fairly common in the
lab/dev environment when users want to quickly ensure their system is in
a powered off or on state (without first looking at its current state).

Similar to what is in the host transition services, ensure we only run
the chassis transition services once per power on or off.

Tested:
- Ensured multiple power off requests will not leave CurrentPowerState
in TransitioningToOff state

Change-Id: I4040072ed0b42f37c9488994b0f7a5975a2bb7c9
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>

show more ...


# 74d7a552 14-Nov-2023 Thang Tran <thuutran@amperecomputing.com>

Support Chassis TransitioningToOff/On state

When BMC turns on/off the host, it asserts/de-asserts the PSON to turn
on/off the power. After that, BMC takes a little bit of time to change
Chassis's st

Support Chassis TransitioningToOff/On state

When BMC turns on/off the host, it asserts/de-asserts the PSON to turn
on/off the power. After that, BMC takes a little bit of time to change
Chassis's state from Off/On to On/Off. During this time, BMC should show
a temporary state instead of directly jumping to On/Off state.

As defined in the PDI the "CurrentPowerState" property of "Chassis"
interface has 4 options[1]:
- On
- Off
- TransitioningToOn
- TransitioningToOff

This commit supports 2 more states: TransitioningToOn and
TransitioningToOff. 2 states are updated before PSON is asserted or
de-asserted.

[1]: https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/yaml/xyz/openbmc_project/State/Chassis.interface.yaml

Tested:
1. Update phosphor-state-manager recipe to add 2 services.
2. Turn on the host.
$ipmitool power on
3. Check the journalctl logs.
$journalctl | grep phosphor-chassis-state-manager
4. Chassis Power State is changed from TransitioningToOn to On.
5. Turn off the host.
$ipmitool power off
6. Check the journalctl logs.
$journalctl | grep phosphor-chassis-state-manager
7. Chassis Power State is changed from TransitioningToOff to Off.

Change-Id: I474882c87510351b5c64438b33d62072629e27e7
Signed-off-by: Thang Tran <thuutran@amperecomputing.com>

show more ...