5cd49f77 | 29-Nov-2023 |
Patrick Williams <patrick@stwcx.xyz> |
build: use allowed over enabled
Meson feature options are typically in a tri-state of enabled, disabled, or auto. The enabled and disabled functions on an option (from `get_option`) no longer retur
build: use allowed over enabled
Meson feature options are typically in a tri-state of enabled, disabled, or auto. The enabled and disabled functions on an option (from `get_option`) no longer return true for auto features. Instead, the expectation is to use `allowed()` which is true for both enabled and auto.
Switch all uses of `enabled` to `allowed`.
Change-Id: I3cac63961b6b7900433f259516702c6817c8956b Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
0886545d | 07-Nov-2023 |
Potin Lai <potin.lai@quantatw.com> |
discover_system_state: apply power restore policy as early as BMC ready
Add a waitBmcReady() to monitor BMC state every second, this function returns true if BMC enters ready state early or returns
discover_system_state: apply power restore policy as early as BMC ready
Add a waitBmcReady() to monitor BMC state every second, this function returns true if BMC enters ready state early or returns flase if timeout reached.
This allows phosphor-diecover-system-state service can perform power restore policy as early as BMC enters ready state.
Signed-off-by: Potin Lai <potin.lai@quantatw.com> Change-Id: I3f1ef2957c9c8218d094b0e7643dc2eec03535b4
show more ...
|
30538e82 | 20-Oct-2023 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: copy latest and re-format
clang-format-17 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest
clang-format: copy latest and re-format
clang-format-17 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest .clang-format from the docs repository and reformat the repository.
Change-Id: I6c35c476f2c7238321c6e9a2662d7f5d4377c64a Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
bd1eebd9 | 05-Oct-2023 |
Willy Tu <wltu@google.com> |
bmc_state: Update last update time after timesync
Currently the lastRebootTime is updated at service boot up and reuses the values on future requests. This can cause incorrect values like
``` $ bus
bmc_state: Update last update time after timesync
Currently the lastRebootTime is updated at service boot up and reuses the values on future requests. This can cause incorrect values like
``` $ busctl get-property xyz.openbmc_project.State.BMC /xyz/openbmc_project/state/bmc0 xyz.openbmc_project.State.BMC LastRebootTime t 1680555476000 $ uptime 11:23:05 up 1 day, 24 min, load average: 3.08, 2.89, 2.84 ```
1680555476000 -> Mon Apr 03 2023 20:57:56 GMT+0000 which is more than 1 day and 24 minutes ago.
The change will detect property changes to `time-sync.target` which would be activated after timesync happens. It will then deactivate the matcher after update the lastReboot time once.
Tested: After bootup and timesync, the lastReboot time is now correct.
Change-Id: Iee8a0bc9f0c5b22d5010f1a677011e44b5d425d3 Signed-off-by: Willy Tu <wltu@google.com>
show more ...
|
564eb4fa | 07-Sep-2023 |
Willy Tu <wltu@google.com> |
Set lastRebootTime once at startup only
The lastRebootTime doesn't change once the daemon starts, so we only need to fetch the info once and save the time instead of calculating it everytime.
Chang
Set lastRebootTime once at startup only
The lastRebootTime doesn't change once the daemon starts, so we only need to fetch the info once and save the time instead of calculating it everytime.
Change-Id: I5e665d637f122727be9bb8f0e7b731d75a567f02 Signed-off-by: Willy Tu <wltu@google.com>
show more ...
|
7a7c38db | 06-Sep-2023 |
Patrick Williams <patrick@stwcx.xyz> |
chassis_check_power_status: fix missing include
File was attempting to use a namespace which is only defined in a phosphor-dbus-interfaces generated file, but wasn't including that file. This use t
chassis_check_power_status: fix missing include
File was attempting to use a namespace which is only defined in a phosphor-dbus-interfaces generated file, but wasn't including that file. This use to work because phosphor-logging happened to be generating some forward-declarations, but it is no longer generating the same ones. Fix the code to use the appropriate include.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I910085b6a7fc3277e991d027ed180a0ef022c1e5
show more ...
|
7e969cb9 | 23-Aug-2023 |
Patrick Williams <patrick@stwcx.xyz> |
sdbus++: use non-deprecated namespaces
The sdbusplus repository has deprecated some namespaces and they are currently only enabled with the SDBUSPP_REMOVE_DEPRECATED_NAMESPACE guard. Switch to the
sdbus++: use non-deprecated namespaces
The sdbusplus repository has deprecated some namespaces and they are currently only enabled with the SDBUSPP_REMOVE_DEPRECATED_NAMESPACE guard. Switch to the new namespace names.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I9f67e74a02616d8ea2241c18758308f2b669672d
show more ...
|
0c2432d9 | 23-Aug-2023 |
Patrick Williams <patrick@stwcx.xyz> |
sched-host-tran: add missing header
There was an assumption that an sdbus++ header file was implicitly included, but the generated files are changing. Explicitly add that header.
Signed-off-by: Pa
sched-host-tran: add missing header
There was an assumption that an sdbus++ header file was implicitly included, but the generated files are changing. Explicitly add that header.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I29019097a6e4c37e5db1315478274af4fd645845
show more ...
|
e4a39de3 | 22-Aug-2023 |
Andrew Geissler <geissonator@yahoo.com> |
hypervisor: utilize const for currentHostState()
As noted in the referenced bug, need to add a const for the override of host state in the hypervisor class to match up with the base class from phosp
hypervisor: utilize const for currentHostState()
As noted in the referenced bug, need to add a const for the override of host state in the hypervisor class to match up with the base class from phosphor-dbus-interfaces.
Fixes openbmc/phosphor-state-manager#24
Tested: - Verified it compiled
Change-Id: Ic8469dbe0a06b9b0c7ce8efb1867fcde9f3b0b6d Signed-off-by: Andrew Geissler <geissonator@yahoo.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 ...
|
a15b81b4 | 16-Aug-2023 |
George Liu <liuxiwei@inspur.com> |
meson.options: Fix some warnings
Warning messages: ``` meson.options:129: WARNING: Project targets '>=1.1.1' but uses feature deprecated since '1.1.0': "boolean option" keyword argument "value" of t
meson.options: Fix some warnings
Warning messages: ``` meson.options:129: WARNING: Project targets '>=1.1.1' but uses feature deprecated since '1.1.0': "boolean option" keyword argument "value" of type str. use a boolean, not a string
meson.options:144: WARNING: Project targets '>=1.1.1' but uses feature deprecated since '1.1.0': "boolean option" keyword argument "value" of type str. use a boolean, not a string ```
Signed-off-by: George Liu <liuxiwei@inspur.com> Change-Id: I69f41cca5cc792e89306531d380d52b19ec41775
show more ...
|
65438b6d | 15-Aug-2023 |
George Liu <liuxiwei@inspur.com> |
meson_options.txt: Support for reading options from meson.options
Support has been added for reading options from meson.options instead of meson_options.txt[1]. These are equivalent, but not using t
meson_options.txt: Support for reading options from meson.options
Support has been added for reading options from meson.options instead of meson_options.txt[1]. These are equivalent, but not using the .txt extension for a build file has a few advantages, chief among them many tools and text editors expect a file with the .txt extension to be plain text files, not build scripts.
[1] https://mesonbuild.com/Release-notes-for-1-1-0.html#support-for-reading-options-from-mesonoptions
Signed-off-by: George Liu <liuxiwei@inspur.com> Change-Id: I705afd61af8cfcad6e66008ff45f285fa99ec78b
show more ...
|
63f7b1a3 | 24-Jul-2023 |
Andrew Geissler <geissonator@yahoo.com> |
time: changes to support 64bit time
Upstream changed the default of the time_t definition to go from 32bit to 64bit. Utilize the std::chrono::duration class to abstract the max.
Tested: - Confirmed
time: changes to support 64bit time
Upstream changed the default of the time_t definition to go from 32bit to 64bit. Utilize the std::chrono::duration class to abstract the max.
Tested: - Confirmed it compiles with latest yocto
Change-Id: I53096d976bfa9fcd74faf8ebac9dccf204264aa6 Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
show more ...
|
21d74d8c | 20-Jul-2023 |
Lakshmi Yadlapati <lakshmiy@us.ibm.com> |
Check the TPM measurement if TPM is present
Perform the TPM Measurement Check only if TPM is present. This commit adds a new option to provide the sysfs TPM device tree path, which will be used to v
Check the TPM measurement if TPM is present
Perform the TPM Measurement Check only if TPM is present. This commit adds a new option to provide the sysfs TPM device tree path, which will be used to verify TPM's presence. If the device tree path doesn't exist, it indicates that TPM is not present.
Tested: Tested on a system with TPM device present and on system that didn't have it present and verified expected behavior on both.
Change-Id: I108f05cc5bafd90cda5a82146b93e2371765b9aa Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>
show more ...
|
9beba5ab | 12-Jul-2023 |
Patrick Williams <patrick@stwcx.xyz> |
build: upgrade to C++23
Meson 1.1.1 and GCC-13 both support C++23 and a sufficient portion of the standard has been implemented. Upgrade the build to leverage it.
Change-Id: I71fbf7fc1a4b23579ed60
build: upgrade to C++23
Meson 1.1.1 and GCC-13 both support C++23 and a sufficient portion of the standard has been implemented. Upgrade the build to leverage it.
Change-Id: I71fbf7fc1a4b23579ed60ca26a0185b50d9fb8b9 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
2038e492 | 16-Jun-2023 |
Andrew Geissler <geissonator@yahoo.com> |
reboot-cause: look for pinhole reset first
A pinhole reset is usually a users last try and recovering a hung system. On some systems, a pinhole reset will result in both a BMC reset and a power off
reboot-cause: look for pinhole reset first
A pinhole reset is usually a users last try and recovering a hung system. On some systems, a pinhole reset will result in both a BMC reset and a power off to the chassis. Need to ensure the real reason is recorded so look for the pinhole reset first before looking to see if an AC loss has occurred.
Testing: - None, logic seems fairly obvious
Change-Id: I51f41620df2a2f99469ec8fdcba2e464a7711d82 Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
show more ...
|
d0b709e8 | 16-Jun-2023 |
Andrew Geissler <geissonator@yahoo.com> |
gitignore: add vscode
Been using vscode for a while now for development and have accidentally added the vscode dir a few times due to global adds.
Change-Id: Ib73231bc962a7917a4ee4300a28b9ebe2b0458
gitignore: add vscode
Been using vscode for a while now for development and have accidentally added the vscode dir a few times due to global adds.
Change-Id: Ib73231bc962a7917a4ee4300a28b9ebe2b0458b3 Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
show more ...
|
e56feb49 | 01-Jun-2023 |
Andrew Geissler <geissonator@yahoo.com> |
bmc-ready: update documentation about new optional feature
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: Ia0682fd935bb15942fb7c2b51f049521ded59d4b |
b0986c07 | 31-May-2023 |
Andrew Geissler <geissonator@yahoo.com> |
bmc-ready: auto power restart function update
This service is responsible for executing the auto power restart logic for the system. Prior to this change, it would run as a oneshot service during th
bmc-ready: auto power restart function update
This service is responsible for executing the auto power restart logic for the system. Prior to this change, it would run as a oneshot service during the multi-user.target. This meant the BMC would not achieve "Ready" state until after this service has completed.
With the recent changes to support not allowing a power on of the system until the BMC is "Ready", we need to change this service so it is not holding up that state change.
Systems that enable this new feature to only allow a power on when the BMC is in a "Ready" state will need to ensure they have a non-zero PowerRestoreDelay set for their system. This allows the service in this commit to start, the BMC to get to "Ready" and then the power on request to be made (if needed).
If in the future there's a need to enable this new feature and also have a 0s delay, then this service will need to be enhanced to wait for BMC "Ready".
Tested: - Set policy to AlwaysOn, confirmed service started, BMC hit "Ready", service waited 30s, and then issued power on without issue.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I1ecb8ed9e1cd6babfa2c0fdb51e8a9bd6c83e214
show more ...
|
765446ae | 25-May-2023 |
Andrew Geissler <geissonator@yahoo.com> |
bmc-ready: don't allow power operations if not ready
Tested: - Put BMC in NotReady state and verified error was returned when requesting a chassis or host power on - Verified that a power off was
bmc-ready: don't allow power operations if not ready
Tested: - Put BMC in NotReady state and verified error was returned when requesting a chassis or host power on - Verified that a power off was still possible in this state
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I8f17c681469c01c701e80cdb57ed623e04c8b921
show more ...
|
fc1020f2 | 24-May-2023 |
Andrew Geissler <geissonator@yahoo.com> |
bmc-ready: utility function to check bmc state
Add a utility function that chassis and host code can call to determine if the BMC is in a Ready state.
Signed-off-by: Andrew Geissler <geissonator@ya
bmc-ready: utility function to check bmc state
Add a utility function that chassis and host code can call to determine if the BMC is in a Ready state.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: Ibf11a3f160c57a9a1570ee639e0b9c4ab020bf45
show more ...
|
629e3c40 | 25-May-2023 |
Andrew Geissler <geissonator@yahoo.com> |
bmc-ready: new optional feature definition
This is the start of a series of commits which will enable a new feature within phosphor-state-manager to not allow host or chassis operations if the BMC i
bmc-ready: new optional feature definition
This is the start of a series of commits which will enable a new feature within phosphor-state-manager to not allow host or chassis operations if the BMC is not in the "Ready" state.
Some systems require (and assume) all BMC services are up and running before a chassis or host operation is started. For example IBM systems collect VPD from i2c devices shared with the host firmware, the BMC must complete collecting all of that VPD before the host is started. The completion of the VPD collection is required for the BMC to reach Ready state.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I0aed9323348f92dffb330089143c5f569b57a1fb
show more ...
|
14560f5b | 01-Jun-2023 |
Andrew Geissler <geissonator@yahoo.com> |
fix existing markdownlint issues in file
Note that markdownlint tries to put <> around anything with a "@." in it assuming it's an email. Need to add a \ before the @ to let it know it's not a email
fix existing markdownlint issues in file
Note that markdownlint tries to put <> around anything with a "@." in it assuming it's an email. Need to add a \ before the @ to let it know it's not a email address.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I97965e16512da80d60ae031f984c30faeb60014f
show more ...
|
57c0a893 | 03-May-2023 |
Andrew Geissler <geissonator@yahoo.com> |
hypervisor: remove OSStart from state association
Turns out the hypervisor never utilized the OSStart BootProgress. Remove it from our mapping to hypervisor state.
Our hostboot BIOS team is actuall
hypervisor: remove OSStart from state association
Turns out the hypervisor never utilized the OSStart BootProgress. Remove it from our mapping to hypervisor state.
Our hostboot BIOS team is actually looking to utilize this BootProgress to indicate when they start the hypervisor. This would just be a standard BootProgress that PSM needs no special handling of.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I99a7110de47943a98a35f0e8bf2516a27bb7e6fa
show more ...
|
9e5cd389 | 10-May-2023 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: copy latest and re-format
clang-format-16 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest
clang-format: copy latest and re-format
clang-format-16 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest .clang-format from the docs repository and reformat the repository.
Change-Id: I2612058799afbcd10f98bd32d2e191b0be7e437b Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|