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 ...
|
cce26eb0 | 09-May-2023 |
Andrew Geissler <geissonator@yahoo.com> |
systemd: no installation in templated targets
Upstream yocto introduced a change via e510222 (systemd-systemctl: fix instance template WantedBy symlink construction).
This fixes a bug that we in Op
systemd: no installation in templated targets
Upstream yocto introduced a change via e510222 (systemd-systemctl: fix instance template WantedBy symlink construction).
This fixes a bug that we in OpenBMC had been taking advantage of in that we were able to document our templated target dependencies without it actually doing anything. The real installation of services within targets occurs in our bitbake recipes due to the complexity of chassis and host instances on a per machine basis.
Leave the dependency information in the service files but comment them out. It's useful to be able to look at a service and understand which targets it's going to be installed into by the bitbake recipes.
In some cases, we had hard coded the target instance, which does install the service correctly, but only in that one target. All services should be installed via the bitbake recipe to ensure the service is properly installed in all instances of the target. Once the bump for this commit goes into openbmc/openbmc, I will ensure the recipe is updated to install all services correctly.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I401f988e92efb37f4928b14433b9d3035ec462d5
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 ...
|
e80b5bcb | 12-Apr-2023 |
Patrick Williams <patrick@stwcx.xyz> |
meson: remove deprecated get_pkgconfig_variable
Since meson 0.56, the `get_pkgconfig_variable` has been deprecated. In meson 0.58 the `get_variable` was enhanced to no longer require the `pkgconfig
meson: remove deprecated get_pkgconfig_variable
Since meson 0.56, the `get_pkgconfig_variable` has been deprecated. In meson 0.58 the `get_variable` was enhanced to no longer require the `pkgconfig` keyword argument. Ensure meson 0.58 is required and update the usage of all `get_pkgconfig_variable` and `get_variable` to be the modern variant.
Change-Id: I46c094c1a1e4793556e93f9e5158bff7c6042cc4 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
42089e34 | 30-Mar-2023 |
Andrew Geissler <geissonator@yahoo.com> |
side-switch: adapt do chassis state instance change
phosphor-state-manager moved to a multi chassis and multi host design point. This made their corresponding service files instance based. For backw
side-switch: adapt do chassis state instance change
phosphor-state-manager moved to a multi chassis and multi host design point. This made their corresponding service files instance based. For backwards support, instance 0 will always represent the entire system, so utilize that as the dependency in this service file.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I6a32ff5944b803cdeaa4ba9fd5faa0e3d49263fe
show more ...
|
299081b1 | 14-Feb-2023 |
Brad Bishop <bradleyb@fuzziesquirrel.com> |
treewide: remove dependencies on mapper.target
The mapper is dbus activated now, so these explicit dependency declarations are unnecessary and redundant.
Change-Id: Icea089154e642e8296847c30b662979
treewide: remove dependencies on mapper.target
The mapper is dbus activated now, so these explicit dependency declarations are unnecessary and redundant.
Change-Id: Icea089154e642e8296847c30b6629797a9a1625d Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
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 ...
|
119e5a2c | 25-Mar-2022 |
Andrew Geissler <geissonator@yahoo.com> |
side-switch: add service to run side-switch function
The side switch check should occur on any host firmware boot so put in the obmc-host-startmin@.target. Ensure this service does not run when the
side-switch: add service to run side-switch function
The side switch check should occur on any host firmware boot so put in the obmc-host-startmin@.target. Ensure this service does not run when the BMC is reset while the host is at runtime. Do not want to ever cause a power down of a running host.
Tested: - Booted system with running firmware at priority 0 and verified a quick return and successful boot. - Booted system with running firmware at priority 1 and verified system was powered off, bmc was rebooted to other image, and system auto powered on up to operating system.
Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I5553ab6fb5ebd58734d1169663ea25ede7f37dd3
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 ...
|