History log of /openbmc/phosphor-state-manager/service_files/meson.build (Results 1 – 17 of 17)
Revision Date Author Comments
# 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 ...


# db8feba1 16-Aug-2023 George Liu <liuxiwei@inspur.com>

meson: Replace configure_file with fs.copyfile

configure_file is deprecated since 0.64.0, and replace it with
fs.copyfile.

Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: I9da6cfc78f1350

meson: Replace configure_file with fs.copyfile

configure_file is deprecated since 0.64.0, and replace it with
fs.copyfile.

Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: I9da6cfc78f1350e7d3bd755db1ecf19a23c86c5c

show more ...


# afe12d69 28-Apr-2023 Andrew Geissler <geissonator@yahoo.com>

optional service to log info log on chassis poweron

This commit introduces a new service that will log an informational log
on every chassis power on.

This new informational error is being created

optional service to log info log on chassis poweron

This commit introduces a new service that will log an informational log
on every chassis power on.

This new informational error is being created for a couple of reasons:
- An easy eye catcher when reviewing logs to easily distinguish between
major boots of the system (ones including a chassis power cycle)
- A mechanism for other OpenBMC software which utilizes the log to
report back to the user when errors from the current boot need
attention

This service needs to run before any of the power/vrm services run to
ensure any logs from those services can be correlated to running after
the current power on has started.

By default this service will not be installed but can be brought in via
a bbappend if desired.

Tested:
- Built new service into a flash image and confirmed
- Info log was logged as expected during power on (prior to any vrm,
power, or fan functions)
- Info log was not logged when rebooting the BMC from a host running
state

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

show more ...


# 86a1ebf9 10-Nov-2022 Andrew Geissler <geissonator@yahoo.com>

move chassis power services to phosphor-state-manager

Move the generic services which are used to power on and off the chassis
into phosphor-state-manager. This will make the use of
phosphor-state-m

move chassis power services to phosphor-state-manager

Move the generic services which are used to power on and off the chassis
into phosphor-state-manager. This will make the use of
phosphor-state-manager for chassis power control more straightforward.

These services are directly copied from openbmc/openbmc/
meta-phosphor/recipes-phosphor/chassis/obmc-op-control-power/ and
renamed to match with the existing naming conventions.

The only change to these files was if a Wants/Before/After service name
was changing as a part of this.

A follow on commit will improve some of the Description fields.

The following email has more details on this change:
https://lists.ozlabs.org/pipermail/openbmc/2022-November/032457.html

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

show more ...


# 1662ba6b 18-Mar-2022 Andrew Geissler <geissonator@yahoo.com>

secure-boot: add service to run new secure check

Tested:
- Built image with new service installed and verified that when
QuiesceOnHwError was not set, we just got this:
Mar 18 16:09:46 p10bmc syst

secure-boot: add service to run new secure check

Tested:
- Built image with new service installed and verified that when
QuiesceOnHwError was not set, we just got this:
Mar 18 16:09:46 p10bmc systemd[1]: Starting Phosphor BMC Security Check...
Mar 18 16:09:46 p10bmc phosphor-secure-boot-check[435]: bmc-secure-boot gpio found and indicates it is NOT enabled
Mar 18 16:09:46 p10bmc phosphor-secure-boot-check[435]: Read 0 from secure_boot
Mar 18 16:09:46 p10bmc phosphor-secure-boot-check[435]: Read 0 from abr_image
Mar 18 16:09:47 p10bmc systemd[1]: Finished Phosphor BMC Security Check.

- When QuiesceOnHwError was set, we got this:
Mar 18 16:37:10 p10bmc systemd[1]: Starting Phosphor BMC Security Check...
Mar 18 16:37:10 p10bmc phosphor-secure-boot-check[1001]: bmc-secure-boot gpio found and indicates it is NOT enabled
Mar 18 16:37:10 p10bmc phosphor-secure-boot-check[1001]: Read 0 from secure_boot
Mar 18 16:37:10 p10bmc phosphor-secure-boot-check[1001]: Read 0 from abr_image
Mar 18 16:37:10 p10bmc phosphor-secure-boot-check[1001]: The system is not secure
Mar 18 16:37:10 p10bmc systemd[1]: Finished Phosphor BMC Security Check.

AND a log:
"Severity" : {
"type" : "s",
"data" : "xyz.openbmc_project.Logging.Entry.Level.Warning"
},
"Message" : {
"type" : "s",
"data" : "xyz.openbmc_project.State.Error.SecurityCheckFail"
},
"EventId" : {
"type" : "s",
"data" : "BD8D3405 00000055 2E2D0010 00000000 00000000 00000000 00000000 00000000 00000000"
},
"AdditionalData" : {
"type" : "as",
"data" : [
"SECURE_BOOT_GPIO=0",
"SYSFS_ABR_IMAGE_VAL=0",
"SYSFS_SECURE_BOOT_VAL=0",
"_PID=1001"
]
},

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

show more ...


# 211d972d 07-Apr-2022 Patrick Williams <patrick@stwcx.xyz>

sched-host-tran: support multi-host

The State.Host objects are now templated, so the ScheduledHostTransition
similarly needs to be templated.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Cha

sched-host-tran: support multi-host

The State.Host objects are now templated, so the ScheduledHostTransition
similarly needs to be templated.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I60751dbe5fff5e3c0c2c7a19515524cf5f6bc8f7

show more ...


# 70f36d8e 14-Mar-2022 Potin Lai <potin.lai@quantatw.com>

chassis-state-manager: Add multi-chassis support

Add multi-chassis management support, each chassis bus separates by
giving a unique chassis id.

Current code only support single chassis, and alway

chassis-state-manager: Add multi-chassis support

Add multi-chassis management support, each chassis bus separates by
giving a unique chassis id.

Current code only support single chassis, and alway assume bus name is
"xyz.openbmc_project.State.Chassis".

This patch allow user to launch chassis-state-manager with a chassis id,
and chassis id is added into service bus name for identification.

Because there are many places hardcode with bus name
"xyz.openbmc_project.State.Chassis", if chassis id is 0,
chassis-state-manager will request both
"xyz.openbmc_project.State.Chassis" and
"xyz.openbmc_project.State.Chassis0" bus name to meet backwards
compatibility.

Tested on Bletchley:
root@bletchley:~# busctl tree xyz.openbmc_project.State.Chassis
`-/xyz
`-/xyz/openbmc_project
`-/xyz/openbmc_project/state
`-/xyz/openbmc_project/state/chassis0
root@bletchley:~# busctl tree xyz.openbmc_project.State.Chassis0
`-/xyz
`-/xyz/openbmc_project
`-/xyz/openbmc_project/state
`-/xyz/openbmc_project/state/chassis0
root@bletchley:~# busctl tree xyz.openbmc_project.State.Chassis1
`-/xyz
`-/xyz/openbmc_project
`-/xyz/openbmc_project/state
`-/xyz/openbmc_project/state/chassis1
......

patch dependencies:
https://gerrit.openbmc-project.xyz/c/openbmc/phosphor-state-manager/+/51465

Signed-off-by: Potin Lai <potin.lai@quantatw.com>
Change-Id: I2ce3e9ab2c95a2688143f4e3775da164a5c33c19

show more ...


# 79b45003 10-Feb-2022 Allen.Wang <Allen_Wang@quantatw.com>

host-state-manager: Add multi-host support

Add support management multiple host state with multi process.
Each process obtain a d-bus object for corresponding host.

TESTED : Built the openbmc image

host-state-manager: Add multi-host support

Add support management multiple host state with multi process.
Each process obtain a d-bus object for corresponding host.

TESTED : Built the openbmc image for Facebook Bletchley hardware.
Verified Host State buses/objects created successfully

root@bletchley:~# busctl tree xyz.openbmc_project.State.Host1
└─/xyz
└─/xyz/openbmc_project
└─/xyz/openbmc_project/state
└─/xyz/openbmc_project/state/host1
root@bletchley:~# busctl tree xyz.openbmc_project.State.Host2
└─/xyz
└─/xyz/openbmc_project
└─/xyz/openbmc_project/state
└─/xyz/openbmc_project/state/host2
...

Built with host id 0 :
expose both Host and Host0 name to keep backwards compatibility.
'busctl |grep xyz.openbmc_project.State.Host'
...
xyz.openbmc_project.State.Host 8398 phosphor-host-s root :1.212 xyz.openbmc_project.State.Host@0.service
xyz.openbmc_project.State.Host0 8398 phosphor-host-s root :1.212 xyz.openbmc_project.State.Host@0.service
...

Signed-off-by: Allen.Wang <Allen_Wang@quantatw.com>
Change-Id: Ie18007122a5df9e33f387e691eaa9979ce18ed0e

show more ...


# 378fe11d 03-Feb-2022 Andrew Geissler <geissonator@yahoo.com>

ups: do not power on if power status is bad

This will be a configurable feature that people can bring in via an
optional package within the phosphor-state-manager recipe.

Tested:
- Set CurrentPower

ups: do not power on if power status is bad

This will be a configurable feature that people can bring in via an
optional package within the phosphor-state-manager recipe.

Tested:
- Set CurrentPowerStatus to Good and verified app returned 0 with
success log
- Set CurrentPowerStatus to UninterruptiblePowerSupply and verified
error was logged and non-zero rc was returned
- Built full flash image and verified expected behavior in simulation

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

show more ...


# 5f8e04a6 12-Aug-2021 Andrew Geissler <geissonator@yahoo.com>

bmc-reset: add service to launch new host recovery

Tested:
- Verified it does not run if chassis power is off
- Verified it runs but does nothing when chassis power is on but
BootProgress is Undef

bmc-reset: add service to launch new host recovery

Tested:
- Verified it does not run if chassis power is off
- Verified it runs but does nothing when chassis power is on but
BootProgress is Undefined
- Verified it logged error and started recovery when chassis power was
on and BootProgress was not Undefined

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

show more ...


# 0d1c3f1f 27-Jul-2021 Andrew Geissler <geissonator@yahoo.com>

host-check: discover host state within state manager

Currently the phosphor-host-state-manager is started before the logic
has run to detect if the host is already running. This results in
phosphor-

host-check: discover host state within state manager

Currently the phosphor-host-state-manager is started before the logic
has run to detect if the host is already running. This results in
phosphor-host-state-manager temporarily reporting that the host is not
running, even if it actually is. This can cause confusion for clients
monitoring this property.

The solution is to move the logic which discovers if the host is running
into phosphor-host-state-manager. Having the logic to do this in a
separate application was a nice separation of concerns but when the
requirement is a co-req, best to just combine them.

This change results in the phosphor-host-state-manager service starting
later in the boot to BMC Ready but testing has shown no impacts to
overall time to reach BMC Ready or impacts to other services.

As a part of this change, the phosphor-reset-sensor-states service was
moved out of the obmc-host-reset target to ensure it and the
phosphor-host-state-manager service have the correct dependency between
them. The phosphor-host-state-manager service now ensures it runs after
the pldm and ipmi services if they are being started (they are
utilized to check if the host is running).

Testing:
- Chassis On, Host On
Jul 30 14:40:37 rainxxx phosphor-host-state-manager[696]: Check if host is running
Jul 30 14:40:39 rainxxx phosphor-host-state-manager[696]: Host is running!
Jul 30 14:40:39 rainxxx phosphor-host-state-manager[696]: Initial Host State will be Running

- Chassis Off, Host Off
Jul 30 14:55:17 rainxxx phosphor-host-state-manager[710]: Check if host is running
Jul 30 14:55:17 rainxxx phosphor-host-state-manager[710]: Chassis power not on, exit
Jul 30 14:55:17 rainxxx phosphor-host-state-manager[710]: Initial Host State will be Off

- Chassis On, Host Off
Jul 30 14:57:11 rainxxx phosphor-host-state-manager[1193]: Check if host is running
Jul 30 14:57:18 rainxxx phosphor-host-state-manager[1193]: Host is not running!
Jul 30 14:57:18 rainxxx phosphor-host-state-manager[1193]: Initial Host State will be Off

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

show more ...


# fe270d35 27-Jan-2021 Andrew Geissler <geissonator@yahoo.com>

hypervisor: state management support

Some systems have a hypervisor firmware stack which they wish to track
and change the state of. This new state management object will provide
this function if a

hypervisor: state management support

Some systems have a hypervisor firmware stack which they wish to track
and change the state of. This new state management object will provide
this function if a user selects to bring it into their system.

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

show more ...


# 1e8b164f 05-Jan-2021 Andrew Geissler <geissonator@yahoo.com>

host state transitioning support

The following commit has some relevant background:
https://github.com/openbmc/phosphor-dbus-interfaces/commit/9f65dfeaa5ab22cae03db45c9916868da9864f83

The new servi

host state transitioning support

The following commit has some relevant background:
https://github.com/openbmc/phosphor-dbus-interfaces/commit/9f65dfeaa5ab22cae03db45c9916868da9864f83

The new services introduced in this commit will set these new transition
states. They will work together with the existing state-manager
infrastructure in that the new services will set the transitions when
the targets start and the current software which looks for the targets
to complete will update the state to the official Running/Off.

But why not just have the existing software that monitors for the
targets to complete also monitor for them to start? This was a long and
dark hole I went down for a while. In the end, systemd D-Bus signals do
not provide enough information on target starts. The signals let you
know that "something" is going to happen to the target you're interested
in, but not the details. For example, if you start the
obmc-host-start@.target, you get two systemd notifications that indicate
"something" is going to happen to obmc-host-start@.target and also that
"something" is going to happen to obmc-host-stop@.target. This is
because when one target starts, it stops the other. Since they are both
just queued for "something" there's no mechanism to interrogate them for
which one is doing what. I tried a lot of different things here but
just couldn't get anything that covered all paths. The maintainers of
systemd have indicated on their mailing list that they are not
interested in enhancing the signal data because they feel like it would
be a rat hole of never ending data getting added to it.

Tested:
- Built into an image and verified CurrentHostState changed as expected
doing a host on, off, and reboot.

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

show more ...


# d9b527b6 23-Oct-2020 Andrew Geissler <geissonator@yahoo.com>

autoreboot: clear one time properties on chassis off

The one-time properties are only meant to last for one boot so ensure
they are reset when the chassis is powered off.

Tested:
root@witherspoon:/

autoreboot: clear one time properties on chassis off

The one-time properties are only meant to last for one boot so ensure
they are reset when the chassis is powered off.

Tested:
root@witherspoon:/lib/systemd/system# busctl set-property xyz.openbmc_project.Settings /xyz/openbmc_project/control/host0/auto_reboot/one_time xyz.openbmc_project.Control.Boot.RebootPolicy AutoReboot b false
root@witherspoon:/lib/systemd/system# busctl get-property xyz.openbmc_project.Settings /xyz/openbmc_project/control/host0/auto_reboot/one_time xyz.openbmc_project.Control.Boot.RebootPolicy AutoReboot
b false
root@witherspoon:/lib/systemd/system# systemctl start obmc-chassis-poweroff\@0.target
root@witherspoon:/lib/systemd/system# busctl get-property xyz.openbmc_project.Settings /xyz/openbmc_project/control/host0/auto_reboot/one_time xyz.openbmc_project.Control.Boot.RebootPolicy AutoReboot
b true

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

show more ...


# f304820b 11-Mar-2020 Carol Wang <wangkair@cn.ibm.com>

sched-host-tran: implement systemd service

Add service file to implement systemd service.

Change-Id: I6ccaad26d5fd6ad5ef6f39b901704835a9a918d3
Signed-off-by: Carol Wang <wangkair@cn.ibm.com>


# c212353d 14-Jan-2020 Andrew Geissler <geissonator@yahoo.com>

move state manager service files into its repo

OpenBMC is moving towards individual repos hosting and maintaining their
own service files. This allows the corresponding maintainer more control
over

move state manager service files into its repo

OpenBMC is moving towards individual repos hosting and maintaining their
own service files. This allows the corresponding maintainer more control
over their service file and removes the meta-* layer maintainer from
needing to be involved.

Once this is merged, its bump will need to be combined with a change in
the meta-phosphor layer that removes the service files.

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

show more ...


# 179d38c2 10-Dec-2019 Andrew Geissler <geissonator@yahoo.com>

meson: add in service file support

meson requires just the normal service file name so create a copy of it
for now. A future commit will remove the automake required .in version.

Signed-off-by: And

meson: add in service file support

meson requires just the normal service file name so create a copy of it
for now. A future commit will remove the automake required .in version.

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

show more ...