History log of /openbmc/phosphor-state-manager/host_state_manager_main.cpp (Results 1 – 12 of 12)
Revision Date Author Comments
# 78c066f6 13-Feb-2024 Patrick Williams <patrick@stwcx.xyz>

prefer std::format over fmt

Now that std::format is implemented we aren't using complex enough fmt
to warrant using it over the std version. Switch to std and remove the
dependency.

Signed-off-by:

prefer std::format over fmt

Now that std::format is implemented we aren't using complex enough fmt
to warrant using it over the std version. Switch to std and remove the
dependency.

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

show more ...


# f053e6fe 22-Jul-2022 Patrick Williams <patrick@stwcx.xyz>

sdbusplus: use shorter type aliases

The sdbusplus headers provide shortened aliases for many types.
Switch to using them to provide better code clarity and shorter
lines. Possible replacements are

sdbusplus: use shorter type aliases

The sdbusplus headers provide shortened aliases for many types.
Switch to using them to provide better code clarity and shorter
lines. Possible replacements are for:
* bus_t
* exception_t
* manager_t
* match_t
* message_t
* object_t
* slot_t

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

show more ...


# ba182f0c 23-Mar-2022 Allen.Wang <Allen_Wang@quantatw.com>

phosphor-state-manager: Support multi-host for persist files

phosphor-host-state-manager and phosphor-chassis-state-manager store
informations in files then restore that on service starting.
Since s

phosphor-state-manager: Support multi-host for persist files

phosphor-host-state-manager and phosphor-chassis-state-manager store
informations in files then restore that on service starting.
Since state-managers already change to multi-host now, information
should store into different files from each service instance.

forbackward capability, if there are legacy persist file exist,
rename it to the new file format of instance ;0',i.e, rename files:
'requestedHostTransition' to 'host0-PersistData',
'POHCounter' to 'chassis-POHCounter',
'chassisStateChangeTime' to 'chassis0-StateChangeTime'

Changes:
a.phosphor-host-state-manager:
'/var/lib/phosphor-state-manager/requestedHostTransition'
this file not only store requestedHostTransition now,
rename to PersistData and add host-N prefix for each service.
For example, bus xyz.openbmc_project.State.Host1 store data to
'/var/lib/phosphor-state-manager/host1-PersistData'
xyz.openbmc_project.State.Host2 store date to
'/var/lib/phosphor-state-manager/host2-PersistData'

b.phosphor-chassis-state-manager:

There are two files to store informations
'/var/lib/phosphor-state-manager/POHCounter',
'/var/lib/phosphor-state-manager/chassisStateChangeTime'
change to:
'/var/lib/phosphor-state-manager/chassis1-POHCounter',
'/var/lib/phosphor-state-manager/chassis2-POHCounter'
...
'/var/lib/phosphor-state-manager/chassis1-StateChangeTime'
'/var/lib/phosphor-state-manager/chassis2-StateChangeTime'
... for each service.

Tested on Bletchley HW,

set xyz.openbmc_project.State.Host1 RequestedHostTransition to On
'busctl set-property xyz.openbmc_project.State.Host1 /xyz/openbmc_project/state/host1
xyz.openbmc_project.State.Host RequestedHostTransition s "xyz.openbmc_project.State.Host.Transition.On"'

This request will store in file:
'cat /var/lib/phosphor-state-manager/host1-PersistData'
{
"value0": {
"cereal_class_version": 1,
"value0": "xyz.openbmc_project.State.Host.Transition.On",
"value1": "xyz.openbmc_project.State.Boot.Progress.ProgressStages.Unspecified",
"value2": "xyz.openbmc_project.State.OperatingSystem.Status.OSStatus.Inactive"
}

restart xyz.openbmc_project.State.Host1~Host6 or reboot BMC, 'RequestedHostTransition' for host1 still "On"
'busctl get-property xyz.openbmc_project.State.Host1 /xyz/openbmc_project/state/host1
xyz.openbmc_project.State.Host RequestedHostTransition'
s "xyz.openbmc_project.State.Host.Transition.On"
'RequestedHostTransition' of the rest 5 Hosts are default value "xyz.openbmc_project.State.Host.Transition.Off"

Also, set POHCounter of xyz.openbmc_project.State.Chassis2
'busctl set-property xyz.openbmc_project.State.Chassis2 /xyz/openbmc_project/state/chassis2
xyz.openbmc_project.State.PowerOnHours POHCounter u 5'
it will restore after service restart or BMC reboot,
'busctl get-property xyz.openbmc_project.State.Chassis2 /xyz/openbmc_project/state/chassis2
xyz.openbmc_project.State.PowerOnHours POHCounter'
u 5

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

show more ...


# 6ed41eab 05-Apr-2022 Patrick Williams <patrick@stwcx.xyz>

filesystem: use non-experimental version

std::experimental::filesystem has been deprecated since at least
C++17. Switch to the std::filesystem one.

Signed-off-by: Patrick Williams <patrick@stwcx.x

filesystem: use non-experimental version

std::experimental::filesystem has been deprecated since at least
C++17. Switch to the std::filesystem one.

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

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 ...


# e426b589 28-May-2020 Andrew Geissler <geissonator@yahoo.com>

clang-format: update to latest from docs repo

This is from openbmc/docs/style/cpp/.clang-format

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

clang-format: update to latest from docs repo

This is from openbmc/docs/style/cpp/.clang-format

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

show more ...


# 769a62f1 06-Dec-2019 Andrew Geissler <geissonator@yahoo.com>

meson: fix up compile errors found by meson

meson enables more error checking by default so in preperation for
moving to it, fix all errors in the code it has found.

This breaks

meson: fix up compile errors found by meson

meson enables more error checking by default so in preperation for
moving to it, fix all errors in the code it has found.

This breaks down into the following issues:
- Unused variables: remove where applicable, otherwise void out
- Extra ';'
- Local includes need to use ""

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

show more ...


# 58a18013 19-Jan-2018 Andrew Geissler <geissonator@yahoo.com>

Apply clang code format to this state repo

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


# 3f475242 12-Jul-2017 Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>

Persist user requested host state

Resolves openbmc/openbmc#1785

Change-Id: I5f23ce50dc357489c7b7eece8bab3bfd6a61ffae
Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.c

Persist user requested host state

Resolves openbmc/openbmc#1785

Change-Id: I5f23ce50dc357489c7b7eece8bab3bfd6a61ffae
Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>

show more ...


# a90a31a9 13-Dec-2016 Andrew Geissler <andrewg@us.ibm.com>

Initial chassis state management code

This is just the basics to get the generated code
compiling and to verify the basic dbus interfaces.

Change-Id: I335964da456d8173e2ce792c66

Initial chassis state management code

This is just the basics to get the generated code
compiling and to verify the basic dbus interfaces.

Change-Id: I335964da456d8173e2ce792c6614770da43303b4
Signed-off-by: Andrew Geissler <andrewg@us.ibm.com>

show more ...


# 1cb8b707 13-Dec-2016 Andrew Geissler <andrewg@us.ibm.com>

Create instance specific host state object

Some day we may support multiple host instances. For
now we're just going to hard code to instance 0.

Change-Id: I2c52d138177172563da5

Create instance specific host state object

Some day we may support multiple host instances. For
now we're just going to hard code to instance 0.

Change-Id: I2c52d138177172563da5ddf0217053324a6999fd
Signed-off-by: Andrew Geissler <andrewg@us.ibm.com>

show more ...


# 36529022 29-Nov-2016 Andrew Geissler <andrewg@us.ibm.com>

Initial phosphor-state-manager commit

Still a lot of work to come with this one but this is the
initial makefile and building of a basic application
that provides dbus introspection

Initial phosphor-state-manager commit

Still a lot of work to come with this one but this is the
initial makefile and building of a basic application
that provides dbus introspection and properties of
the xyz/openbmc_project/State/Host.interface.yaml

Change-Id: I406fafa6a50721b2f28ab6df03ef98a940e2db6e
Signed-off-by: Andrew Geissler <andrewg@us.ibm.com>

show more ...