History log of /openbmc/openpower-pnor-code-mgmt/item_updater.hpp (Results 1 – 25 of 49)
Revision Date Author Comments
# f8e02429 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: Id6c141dd4eba2423f476499b999aec9cb42f6192
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


# 96442c88 16-Jun-2024 Manojkiran Eda <manojkiran.eda@gmail.com>

Fix spelling mistakes using codespell

This commit corrects various spelling mistakes throughout the
repository. The corrections were made automatically using `codespell`[1]
tool.

[1]: https://githu

Fix spelling mistakes using codespell

This commit corrects various spelling mistakes throughout the
repository. The corrections were made automatically using `codespell`[1]
tool.

[1]: https://github.com/codespell-project/codespell

Change-Id: I014e7670ca4ba57f7e1b80e96c001474cf7a6676
Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>

show more ...


# 7fb6c346 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: I4530f5b9df4f5898e26a2eef7efcf82e9728197f
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


# 2b31497e 01-Jul-2022 Marri Devender Rao <devenrao@in.ibm.com>

Guard: Guarded DIMMS/CPU are not enabled back after factory reset

User not able to enable some of the guarded dimm/cpu after host
factory reset even though host cleared the guards in the guard
parti

Guard: Guarded DIMMS/CPU are not enabled back after factory reset

User not able to enable some of the guarded dimm/cpu after host
factory reset even though host cleared the guards in the guard
partition.

BMC will not know that host took a factory reset for it to clear the
disabled flag for the earlier guarded dimm/cpu.

Modified to force enable all the cpu/dimm during host factory reset.
Test result:
openpower-update-manager[2001]:ItemUpdaterMMC::reset
openpower-update-manager[2001]:GardResetMMC::reset
openpower-update-manager[2001]:GardResetMMC::enableInventoryItems
openpower-update-manager[2001]:GardResetMMC::enableInventoryItemsHelper
openpower-update-manager[2001]:enable specified inventory items
OBJ(/xyz/openbmc_project/inventory/system/chassis/motherboard/dcm0/cpu0/core13)
openpower-update-manager[2001]:enable specified inventory items
OBJ(/xyz/openbmc_project/inventory/system/chassis/motherboard/dcm0/cpu0/core14)
openpower-update-manager[2001]:GardResetMMC::enableInventoryItemsHelper
openpower-update-manager[2001]:enable specified inventory items
OBJ(/xyz/openbmc_project/inventory/system/chassis/motherboard/dimm0)

Signed-off-by: Marri Devender Rao <devenrao@in.ibm.com>`
Change-Id: I7f7d3981d38cdc6cc7dda4e3ee49403c772dc5ef

show more ...


# 0dea1992 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: If9a7314dade153dd7dbd149a76352aca8257839d

show more ...


# 9c887d14 05-Apr-2022 Patrick Williams <patrick@stwcx.xyz>

sdbusplus: object: don't use 'bool' argument constructor

`sdbusplus::server::object_t` has long had an enum-based parameter for
signal action, but maintained a backwards compatible boolean mapping.

sdbusplus: object: don't use 'bool' argument constructor

`sdbusplus::server::object_t` has long had an enum-based parameter for
signal action, but maintained a backwards compatible boolean mapping.
It is time to remove this boolean to make it more observable which
actions are being used in applications. Map all `true` occurrences to
`action::defer_emit` or `action::emit_interface_added`.

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

show more ...


# 8facccfa 04-Nov-2020 Brad Bishop <bradleyb@fuzziesquirrel.com>

style: update clang-format

Pull the most recent OpenBMC style rules and run clang-format.

Change-Id: Ifecce87b6aa64a2800dab3ba1e09ae415accb548
Signed-off-by: Brad Bishop <bradle

style: update clang-format

Pull the most recent OpenBMC style rules and run clang-format.

Change-Id: Ifecce87b6aa64a2800dab3ba1e09ae415accb548
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>

show more ...


# 3c81037e 15-Jul-2020 Adriana Kobylak <anoo@us.ibm.com>

pnor: Add updatable association to active PNOR FW

Add 'updateable' association to the active PNOR
firmware version object. This 'updateable' association
can be used to mark all the f

pnor: Add updatable association to active PNOR FW

Add 'updateable' association to the active PNOR
firmware version object. This 'updateable' association
can be used to mark all the firmware components
which can be programmable from pnor interfaces like
Redfish.

Signed-off-by: Miguel Gomez <mgomez@mx1.ibm.com>
Change-Id: I33f7ac70c8bfa446aeb045c65c741e2d72ce108a

show more ...


# ab139ce9 16-May-2020 Andrew Geissler <geissonator@yahoo.com>

string: ensure string included

Latest upstream yocto appears to have removed a free include of string.
This is causing compile failures for files which do not include it
properly.

string: ensure string included

Latest upstream yocto appears to have removed a free include of string.
This is causing compile failures for files which do not include it
properly.

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

show more ...


# d05d4725 11-Sep-2019 John Wang <wangzqbj@inspur.com>

Move to new association interface

A new association interface is defined in phosphor-dbus-interfaces
It would be nice to move the local version of the interface
to the new one.

Move to new association interface

A new association interface is defined in phosphor-dbus-interfaces
It would be nice to move the local version of the interface
to the new one.

The behavior of how association work is described here:
https://github.com/openbmc/docs/blob/master/object-mapper.md#associations

Partially resolves openbmc/openbmc#3584

Tested: See the org.openbmc.Associations interface has been replaced by the xyz
one in /xyz/openbmc_project/software/version_id object and only when the
version number is less than PNOR_MSL, "PNOR Minimum Ship Level NOT met"
is reported.

Signed-off-by: John Wang <wangzqbj@inspur.com>
Change-Id: If4afeb69a9bd8bc494b77826f2ec2854a71f56f5

show more ...


# abe862aa 17-Jul-2019 Adriana Kobylak <anoo@us.ibm.com>

ubi: Rewrite freePriority

freePriority is called by RedundancyPriority::priority() to ensure that
there are no duplicate priority values. Originally, freePriority would
call priority

ubi: Rewrite freePriority

freePriority is called by RedundancyPriority::priority() to ensure that
there are no duplicate priority values. Originally, freePriority would
call priority() whenever it updated a priority value, but this would call
freePriority again. This can cause the priorities stored on flash to not
match the D-Bus values. The priorities on flash are used to determine
which version to boot from so that leads to unexpected behavior.

Example is if A has priority 1 and B has priority 2, and the priority of
B is changed to 1, this triggers the new value of 1 to be stored on
flash, then A is bumped to 2, but then B that originally had 2 is bumped
to 3, so that at the end of the operation, B has priority 3 on flash but
the correct 1 in D-Bus.

The solution is to prevent freePriority from calling itself, by sorting
all versions by priority in ascending order, so that if a version is
bumped, then only the remaining versions need to be checked. Then
locally update the priority values on flash and on D-Bus for each
changed one.

Tested: Changed priorities multipled times and verified the mismatch is not
seen anymore.

Change-Id: I704ee98f356a1a77f431b83e4b9d787b2671aeb2
Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>

show more ...


# 716de5b8 01-Mar-2019 Lei YU <mine260309@gmail.com>

test: Add sources of static PNOR

Add sources in static dir to test.
It generates a link error about duplcated GardReset::reset().

Then an issue is found that GardReset::~GardRes

test: Add sources of static PNOR

Add sources in static dir to test.
It generates a link error about duplcated GardReset::reset().

Then an issue is found that GardReset::~GardReset() is not virtual,
this will casuse the destructor not calling its super class' dtor.

To fix the above link error, add GardReset[Ubi|Static] to make
ubi/static specific implementation in its own class.

Tested: Verify the test build works fine.

Change-Id: I41bd4d522e8b9c4053283c0cf4373807ef4f2d1c
Signed-off-by: Lei YU <mine260309@gmail.com>

show more ...


# 6da3dae3 28-Feb-2019 Lei YU <mine260309@gmail.com>

Static layout: Do not update PNOR when host is on

Static layout only has 1 active and functional PNOR. When host is
running, do not update PNOR.
This is done by checking the return v

Static layout: Do not update PNOR when host is on

Static layout only has 1 active and functional PNOR. When host is
running, do not update PNOR.
This is done by checking the return value of freeSpace(), and if it
returns false, it means there is no space for PNOR because the host is
running and erase() returns false.

Tested: Verify the status becomes Failed when trying to activate a PNOR
while host is running.

Change-Id: Ie2986b0c6fd29557685f67eb77ccc29709e1669a
Signed-off-by: Lei YU <mine260309@gmail.com>

show more ...


# a9ac9279 22-Feb-2019 Lei YU <mine260309@gmail.com>

Refactor: Make createActivation() common

The function is almost the same for ubi and static layout, except a few
differences that creates the ubi objects.

Add below pure virtual

Refactor: Make createActivation() common

The function is almost the same for ubi and static layout, except a few
differences that creates the ubi objects.

Add below pure virtual functions for ubi to create ubi specific objects
* createActivationObject()
* createVersionObject()

Then it is possible to move most of the code in createActivation() into
the commone one.

Tested: On the last commit of the patch series, run code update and
factory reset on Witherspoon and all work fine.

Change-Id: Ieb3e783bc5b251529a55909f9e9f644230b274e7
Signed-off-by: Lei YU <mine260309@gmail.com>

show more ...


# eaa9b076 25-Feb-2019 Lei YU <mine260309@gmail.com>

Refactor: Remove unused isLowestPriority()

The function isLowestPriority() is not used, remove it.

Tested: On the last commit of the patch series, run code update and
fa

Refactor: Remove unused isLowestPriority()

The function isLowestPriority() is not used, remove it.

Tested: On the last commit of the patch series, run code update and
factory reset on Witherspoon and all work fine.

Change-Id: Ib71ce5b9ad0319f8d7db3442d507c3fee7aba7fa
Signed-off-by: Lei YU <mine260309@gmail.com>

show more ...


# bee51406 25-Feb-2019 Lei YU <mine260309@gmail.com>

Refactor: Move determinId to ubi

The function determinId is used only in ubi case, move it to ubi.

Tested: On the last commit of the patch series, run code update and
fa

Refactor: Move determinId to ubi

The function determinId is used only in ubi case, move it to ubi.

Tested: On the last commit of the patch series, run code update and
factory reset on Witherspoon and all work fine.

Change-Id: I8974d25bf904a5202b913fc185790c5ecf8eca90
Signed-off-by: Lei YU <mine260309@gmail.com>

show more ...


# f3ce4337 21-Feb-2019 Lei YU <mine260309@gmail.com>

Refactor: Split item_updater to common and ubi

The existing item_updater is highly coupled with ubifs.
It will support static layout and ubi in future.
So split the functions in to c

Refactor: Split item_updater to common and ubi

The existing item_updater is highly coupled with ubifs.
It will support static layout and ubi in future.
So split the functions in to common ones and ubi specific ones, and move
the ubi specific code in ubi dir.

1. Keep common functions and make them virtual for extension.
createActiveAssociation()
updateFunctionalAssociation()
removeAssociation()
erase()
2. Create ubi/item_updater_ubi and move other functions into it.
3. Change updateFunctionalAssociation() parameter for future use.

To support static layout, a new item_updater_static will be written.

Tested: On the last commit of the patch series, run code update and
factory reset on Witherspoon and all work fine.

Change-Id: I4cc55b31ee3f37c5b27168611305dee8ce02880a
Signed-off-by: Lei YU <mine260309@gmail.com>

show more ...


# b5237174 30-Oct-2018 Adriana Kobylak <anoo@us.ibm.com>

item_updater: Call remove association on delete

The remove association function was supposed to be called
on delete but was never implemented so if the associations
are queried but t

item_updater: Call remove association on delete

The remove association function was supposed to be called
on delete but was never implemented so if the associations
are queried but the version has been deleted, that'd be
false information, so call to remove the associations on delete,
also rename it to delete all associations, because the
functional pnor version can be deleted if the chassis state
is off and the delete function already made that determination.

Tested: Verified all associations (active and functional) are
deleted with a DeleteAll call.

Change-Id: I6e5589256dd8f62ac2ecf7574b9d08920b8b5e3d
Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>

show more ...


# f6ed5897 07-Sep-2018 Gunnar Mills <gmills@us.ibm.com>

clang-format: Update to match docs repo

Update the .clang-format file.
Now includes header sorting and updating PointerAlignment.

Change-Id: I7119c12f1cc0a461cb7e4576dff6a02dcc9

clang-format: Update to match docs repo

Update the .clang-format file.
Now includes header sorting and updating PointerAlignment.

Change-Id: I7119c12f1cc0a461cb7e4576dff6a02dcc95cbc4
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>

show more ...


# 70dcb63a 27-Feb-2018 Adriana Kobylak <anoo@us.ibm.com>

Enable clang code format

Change-Id: I4490e930459a7eab6f6dd15198418c5314755d3f
Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>


# fedbf3d3 17-Jan-2018 Gunnar Mills <gmills@us.ibm.com>

fix item updater freeSpace()

Fixed freeSpace() to remove more than 1 version if that is what is
needed to get the number of active PNOR versions at
ACTIVE_PNOR_MAX_ALLOWED -1. Curren

fix item updater freeSpace()

Fixed freeSpace() to remove more than 1 version if that is what is
needed to get the number of active PNOR versions at
ACTIVE_PNOR_MAX_ALLOWED -1. Currently, ACTIVE_PNOR_MAX_ALLOWED is
set to 2. We have seen cases where there are 3 active PNOR versions.
In those cases, freeSpace() only removes 1 active PNOR version, when
it should remove 2 to bring the total number of active PNOR
versions to 1.

Resolves openbmc/openbmc#2806

Change-Id: I0e9f5b6835298ae86091848f889bbc316e0a7f57
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>

show more ...


# 7cb480ed 07-Nov-2017 Adriana Kobylak <anoo@us.ibm.com>

item_updater: Add Volatile Object Enable dbus object

Add an Enable dbus object to determine if the Volatile PNOR partitions
should be cleared. An Enabled value of false (default) means v

item_updater: Add Volatile Object Enable dbus object

Add an Enable dbus object to determine if the Volatile PNOR partitions
should be cleared. An Enabled value of false (default) means volatile
is disabled and the partitions should not be cleared.

This property would be set by the host via IPMI, and the BMC would
check it on the power on path.

Part of openbmc/openbmc#2397

Change-Id: Ic9362206d2b1d4fd44b3505ed53e72ec240ad60c
Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>

show more ...


# 4ecea0f3 05-Dec-2017 Michael Tritz <mtritz@us.ibm.com>

Gard reset: Fix the typo in the D-Bus path

The path to the Gard reset should be /org/open_power/control/gard. This
commit adds the missing underscore.

Change-Id: I01284596d7f52c

Gard reset: Fix the typo in the D-Bus path

The path to the Gard reset should be /org/open_power/control/gard. This
commit adds the missing underscore.

Change-Id: I01284596d7f52c31bf3c11e31ae6b8bd717a3fa4
Signed-off-by: Michael Tritz <mtritz@us.ibm.com>

show more ...


# 5b75651b 06-Oct-2017 Michael Tritz <mtritz@us.ibm.com>

Host updater: Remove the Object.Delete interface from functional version

This commit enhances the host updater by dynamically removing the
Object.Delete interface from a host activation

Host updater: Remove the Object.Delete interface from functional version

This commit enhances the host updater by dynamically removing the
Object.Delete interface from a host activation that is currently
running. Once the host isn't running anymore, the interface is re-added
so that the activation may be deleted.

Additionally, isVersionFunctional() from the parent updater is exposed,
since this function is needed to determine whether a given activation
is currently running on the host.

Add the Delete interface to all interfaces when the item updater starts
up, because the chassis state would be off initially, and in the case
where it automatically powers on because the BMC rebooted while the host
was on, the chassis property signal would cause the Delete interface to
be removed.

Change-Id: I4afcc1ebe2e8a3ce212b426749295e79b68cac62
Signed-off-by: Michael Tritz <mtritz@us.ibm.com>

show more ...


# b541f1b6 15-Oct-2017 Michael Tritz <mtritz@us.ibm.com>

Host updater: implement GUARD factory reset

This commit extends the functionality of the host updater with a second
implementation of FactoryReset. This implementation is placed under th

Host updater: implement GUARD factory reset

This commit extends the functionality of the host updater with a second
implementation of FactoryReset. This implementation is placed under the
/org/openpower/control/guard path and clears the PNOR GUARD partition.

Resolves openbmc/openbmc#2389

Change-Id: Id89aafe9211b48aee5238ff06b957fa7a99324ab
Signed-off-by: Michael Tritz <mtritz@us.ibm.com>

show more ...


12