History log of /openbmc/phosphor-bmc-code-mgmt/mmc/item_updater_helper.cpp (Results 1 – 7 of 7)
Revision Date Author Comments
# 87c5b5bd 15-Nov-2022 Lakshmi Yadlapati <lakshmiy@us.ibm.com>

u-boot mirroring support

Design is at the link below.
https://gerrit.openbmc.org/c/openbmc/docs/+/58025

Tested:
Tested all "Test Scenarios" specified in the design.

Signed-off-by: Lakshmi Yadlap

u-boot mirroring support

Design is at the link below.
https://gerrit.openbmc.org/c/openbmc/docs/+/58025

Tested:
Tested all "Test Scenarios" specified in the design.

Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>
Change-Id: I064115ee1e966a0a1b3ce7ec246c1f88f0bd87f7

show more ...


# 25773a7e 21-Jan-2022 Adriana Kobylak <anoo@us.ibm.com>

Use flash id to write image to flash

Update the item updater helper functions to take the flash id instead of
the version id since flash id is the name of the volumes/partitions.

The flash id was b

Use flash id to write image to flash

Update the item updater helper functions to take the flash id instead of
the version id since flash id is the name of the volumes/partitions.

The flash id was being persisted for the mmc layout with the name of
"partlabel". This is not needed anymore since the flash id is now being
passed by the service files.

The write functions/service files still use the version id to know where
the image files are located in /tmp/. They then set the value of flash
id (Path property) which is then used by the other functions such as
Delete and setting the u-boot environment variables.

Tested: Code update and Delete functions work on ubi and mmc.

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

show more ...


# 7eebeaac 15-Jun-2021 Isaac Kurth <isaac.kurth@ibm.com>

item_updater_helper: implement factoryReset

helper::factoryReset in the mmc item_updater_helper needs to set the
environment variable rwreset to true so that upon reboot, the mmc
ini

item_updater_helper: implement factoryReset

helper::factoryReset in the mmc item_updater_helper needs to set the
environment variable rwreset to true so that upon reboot, the mmc
initrd scripts can perform a factory reset by recreating all r/w
volumes.

Tested: Use busctl to call the Reset method. Verify with fw_printenv
that rwreset is set to true.

Signed-off-by: Isaac Kurth <isaac.kurth@ibm.com>
Change-Id: Iea8aa5c359e5f332105b915f58aef7472eae260b

show more ...


# c31943e1 29-Jul-2020 Adriana Kobylak <anoo@us.ibm.com>

mmc: Remove: Sleep to allow service to finish

There's not currently a good solution for waiting for systemd
service files before returning from a function. The way to achieve
this is

mmc: Remove: Sleep to allow service to finish

There's not currently a good solution for waiting for systemd
service files before returning from a function. The way to achieve
this is to add a sleep before returning.

Need to add a sleep for the mmc remove function to allow the device
to be erased before the update, otherwise the delete and update may
run at the same time causing corruption.

This race condition is not seeing in ubi because the update creates
a new volume for the image, while in the background the old volume
is being erased, although this could still cause issues if space is
tight and the delete is not finished by the time the new image is
written, but this issue hasn't been seen so focusing on mmc only
for this commit.

Tested: Verified no corruption was seen on the tacoma system where
the issue was reported.

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

show more ...


# 34124351 22-May-2020 Adriana Kobylak <anoo@us.ibm.com>

mmc: Set updated version to primary

Once the update is successful, mark the version as primary so that
it boots from the updated version upon BMC reboot.

Add a sleep to wait for

mmc: Set updated version to primary

Once the update is successful, mark the version as primary so that
it boots from the updated version upon BMC reboot.

Add a sleep to wait for the service file to complete setting the
primary version. Otherwise, the BMC could mark a Delete or
Priority value change as complete and the service is not done yet,
and if the BMC is rebooted it could try to boot from a non-existent
version.

As backgroung, reference issue openbmc/openbmc#2857 that attempted
to create a 'wait for service' function but was not successful.
This could be investigated further at a later time, which would
benefit other functions like Factory Reset that are also using
sleep as a workaround to wait for systemd service files.

Tested: Verified the version was set to primary during code update
and delete, and that 3s passed (service file finished in
about 1s) before the delete/update continued.

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

show more ...


# 70f5bc04 13-May-2020 Adriana Kobylak <anoo@us.ibm.com>

mmc: Update and remove functions for the kernel and rootfs

Add support for update and remove of eMMC images.

The code update tarball contains an image-kernel and image-rofs
file

mmc: Update and remove functions for the kernel and rootfs

Add support for update and remove of eMMC images.

The code update tarball contains an image-kernel and image-rofs
files. These can be flashed directly to the eMMC partitions since
they're filesystem files compressed with zstd:

https://gerrit.openbmc-project.xyz/c/openbmc/meta-phosphor/+/30781
https://gerrit.openbmc-project.xyz/c/openbmc/meta-phosphor/+/34334

The image-rofs contains the BMC rootfs files, and the image-kernel
contains the fitImage file which is loaded by U-Boot.

Tested: Verified the non-running rofs and kernel partitions were updated.

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

show more ...


# 86013f39 13-May-2020 Adriana Kobylak <anoo@us.ibm.com>

Add initial support for eMMC layout

Initial commit to add an mmc layout option to update eMMC chips.

Tested: Compiled with each of the three supported options:
'meson bu

Add initial support for eMMC layout

Initial commit to add an mmc layout option to update eMMC chips.

Tested: Compiled with each of the three supported options:
'meson build -Dbmc-layout=<option>' and verified a build/<option>
subdir was created.

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

show more ...