#
fc33ba86 |
| 16-Aug-2024 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: re-format for clang-18
clang-format-18 isn't compatible with the clang-format-17 output, so we need to reformat the code with the latest version. The way clang-18 handles lambda forma
clang-format: re-format for clang-18
clang-format-18 isn't compatible with the clang-format-17 output, so we need to reformat the code with the latest version. The way clang-18 handles lambda formatting also changed, so we have made changes to the organization default style format to better handle lambda formatting.
See I5e08687e696dd240402a2780158664b7113def0e for updated style. See Iea0776aaa7edd483fa395e23de25ebf5a6288f71 for clang-18 enablement.
Change-Id: I2b9626d95674508bb090745de6471fe2755c89fd Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
#
bddb0a46 |
| 26-Jun-2024 |
Pavithra Barithaya <pavithrabarithaya07@gmail.com> |
clang-tidy: Enable readability-redundant-string-cstr check
This check finds unnecessary calls to std::string::c_str().
Change-Id: I4bf2b9848ad6b6fa748f8e3bdd8d670cdeee90ff Signed-off-by: Pavithra B
clang-tidy: Enable readability-redundant-string-cstr check
This check finds unnecessary calls to std::string::c_str().
Change-Id: I4bf2b9848ad6b6fa748f8e3bdd8d670cdeee90ff Signed-off-by: Pavithra Barithaya <pavithrabarithaya07@gmail.com>
show more ...
|
#
d5e8e73b |
| 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: I50e60f2b1a9db9039cb5450ae509064eaeaa9d2e Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
#
16ff30e7 |
| 22-Jul-2022 |
Andrew Geissler <geissonator@yahoo.com> |
side-switch: ensure both host and chassis off
Ran into an issue where the BMC reboot occurs so early in the boot that the chassis power never changed from Off to On, so the BMC reboot was instant. T
side-switch: ensure both host and chassis off
Ran into an issue where the BMC reboot occurs so early in the boot that the chassis power never changed from Off to On, so the BMC reboot was instant. This caused an unwanted failure in a host-start service which led to a BMC dump being generated on the subsequent BMC reboot.
Enhance the code to look for both the chassis and host to be off before initiating the BMC reboot.
Tested: - Verified on p10bmc hardware that the unwanted service failure no longer occurs and side-switch waits for both host and chassis to be off prior to rebooting the BMC
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: Ifb5e71aeaa4dbfff7ea21fa0bdce01642a3bec37
show more ...
|
#
bf2bb2b1 |
| 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: I96286490697ce5d7fecc1c9c358f5f1d054137ec
show more ...
|
#
a3cec434 |
| 24-Mar-2022 |
Andrew Geissler <geissonator@yahoo.com> |
side-switch: request bmc reboot to switch to new image
The final piece is to issue a BMC reboot so the system can get over to the image with the highest priority.
Tested: - Set running firmware pri
side-switch: request bmc reboot to switch to new image
The final piece is to issue a BMC reboot so the system can get over to the image with the highest priority.
Tested: - Set running firmware priority to 1 and ran the application. Side switch detection ran and BMC was rebooted. After the reboot, the system automatically powered on and running image was priority 0.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: Iaafea49f75ad7dd959d4c71a4de29e763f593a83
show more ...
|
#
788c6a65 |
| 24-Mar-2022 |
Andrew Geissler <geissonator@yahoo.com> |
side-switch: set power restore policy to always-on
Utilize the one-time feature of the automatic power restore functionality to ensure a one-time automatic boot of the system occurs after the BMC re
side-switch: set power restore policy to always-on
Utilize the one-time feature of the automatic power restore functionality to ensure a one-time automatic boot of the system occurs after the BMC reboot.
This makes the whole process seamless to the user. They start a boot, this function detects a bmc reboot is needed to pick up the priority 0 image, and this ensures the boot starts back up after the bmc reboot.
Tested: - Verify policy set correctly <6> Checking for side switch reboot <6> Running firmware version path is /xyz/openbmc_project/software/74575136 <6> Running firmware version priority is 1 <6> Running image is at priority 1, execute side switch <6> chassis power is off <6> RestorePolicy set to AlwaysOn
busctl get-property xyz.openbmc_project.Settings /xyz/openbmc_project/control/host0/power_restore_policy/one_time xyz.openbmc_project.Control.Power.RestorePolicy PowerRestorePolicy s "xyz.openbmc_project.Control.Power.RestorePolicy.Policy.AlwaysOn"
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I126283386c577fd9ec899a1402ae36e6111f1780
show more ...
|
#
cdac8f47 |
| 24-Mar-2022 |
Andrew Geissler <geissonator@yahoo.com> |
side-switch: power off chassis in prep for update
When switching to a new level of firmware, ensure the host is off and the chassis power is off before switching to the new firmware.
Tested: - Veri
side-switch: power off chassis in prep for update
When switching to a new level of firmware, ensure the host is off and the chassis power is off before switching to the new firmware.
Tested: - Verify power off works <6> Checking for side switch reboot <6> Running firmware version path is /xyz/openbmc_project/software/74575136 <6> Running firmware version priority is 1 <6> Running image is at priority 1, execute side switch <see power off occur in journal> <6> chassis power is off
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: Ifdb3e0c51fe66e55ebb1c3fca7097af49607bf35
show more ...
|
#
03b3082c |
| 24-Mar-2022 |
Andrew Geissler <geissonator@yahoo.com> |
side-switch: check priority of running image
If the running image does not have the highest priority, then return a side switch is needed
Tested: - Running image has priority 0: <6> Checking for si
side-switch: check priority of running image
If the running image does not have the highest priority, then return a side switch is needed
Tested: - Running image has priority 0: <6> Checking for side switch reboot <6> Running firmware version path is /xyz/openbmc_project/software/74575136 <6> Running firmware version priority is 0 <6> Side switch not needed
- Running image has priority 1: <6> Checking for side switch reboot <6> Running firmware version path is /xyz/openbmc_project/software/74575136 <6> Running firmware version priority is 1 <6> Running image is at priority 1, execute side switch
- Running image has priority 1, alternate has priority 2 <6> Checking for side switch reboot <6> Running firmware version path is /xyz/openbmc_project/software/ef4fd5ae <6> Running firmware version priority is 1 <6> /xyz/openbmc_project/software/ef4fd5ae is the running image, skip <6> Side switch not needed
- Running image is priority 3, alternate has priority 2 <6> Checking for side switch reboot <6> Running firmware version path is /xyz/openbmc_project/software/ef4fd5ae <6> Running firmware version priority is 3 <6> /xyz/openbmc_project/software/bf984b17 has a higher priority, 2, then running priority
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: Id05f7b7f624059f4e2d7181283577e0cbd10e88f
show more ...
|
#
70d72f8d |
| 23-Mar-2022 |
Andrew Geissler <geissonator@yahoo.com> |
side-switch: introduce new bmc update feature
This is the first commit in a series which will introduce a feature within phosphor-bmc-code-mgmt that users can optionally install on their systems to
side-switch: introduce new bmc update feature
This is the first commit in a series which will introduce a feature within phosphor-bmc-code-mgmt that users can optionally install on their systems to cause a side-switch boot.
A side-switch boot is a boot of a system in which the BMC detects that the user has requested the alternate image on the flash chip be booted from. The detection is done by looking at the available images, their priorities, and the running image. If a higher priority image is available on the non-running side, then it should be switched to. This feature utilizes the one-time auto-power-on service to cause an automatic boot of the system after the bmc side switch occurs.
At a high level, a service will be put into the obmc-host-start@.target which runs before any other services in that target. It will launch the executable being created in this series of commits. That application will determine if a side switch is needed, and if so it will: - Initiate and wait for a chassis power off of the system - Set the one-time auto-power-on policy to AlwaysOn - Issue a reboot to the BMC
But why did the user not just reboot the BMC themselves when they installed the new image? There are use cases (at least on IBM systems) where the user of the system wants to switch to the alternate image in flash, but they want to defer that until someone reboots the BMC manually OR the next time the user starts a boot of the system.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I58a914ec2c3f3cf15ac41a02725e9a800dffcf30
show more ...
|