History log of /openbmc/phosphor-bmc-code-mgmt/static/ (Results 1 – 25 of 28)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
61c1a8aa05-Dec-2024 Adriana Kobylak <anoo@us.ibm.com>

Add the new Software.Manager to service dependencies

Remove the Wants dependencies to the old code update service, these
services start by default. Add Before/After dependencies on the new
Software.

Add the new Software.Manager to service dependencies

Remove the Wants dependencies to the old code update service, these
services start by default. Add Before/After dependencies on the new
Software.Manager service to support both the old and the new flow.

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

show more ...


/openbmc/phosphor-bmc-code-mgmt/.clang-format
/openbmc/phosphor-bmc-code-mgmt/.clang-tidy
/openbmc/phosphor-bmc-code-mgmt/.gitignore
/openbmc/phosphor-bmc-code-mgmt/OWNERS
/openbmc/phosphor-bmc-code-mgmt/activation.cpp
/openbmc/phosphor-bmc-code-mgmt/activation.hpp
/openbmc/phosphor-bmc-code-mgmt/download_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/download_manager.hpp
/openbmc/phosphor-bmc-code-mgmt/flash.hpp
/openbmc/phosphor-bmc-code-mgmt/gen-bios-tar
/openbmc/phosphor-bmc-code-mgmt/image_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/image_manager.hpp
/openbmc/phosphor-bmc-code-mgmt/image_verify.cpp
/openbmc/phosphor-bmc-code-mgmt/image_verify.hpp
/openbmc/phosphor-bmc-code-mgmt/item_updater.cpp
/openbmc/phosphor-bmc-code-mgmt/item_updater.hpp
/openbmc/phosphor-bmc-code-mgmt/item_updater_helper.hpp
/openbmc/phosphor-bmc-code-mgmt/item_updater_main.cpp
/openbmc/phosphor-bmc-code-mgmt/meson.build
/openbmc/phosphor-bmc-code-mgmt/meson.options
/openbmc/phosphor-bmc-code-mgmt/mmc/obmc-flash-mmc-mount.service.in
/openbmc/phosphor-bmc-code-mgmt/mmc/obmc-flash-mmc-umount.service.in
/openbmc/phosphor-bmc-code-mgmt/msl_verify.cpp
/openbmc/phosphor-bmc-code-mgmt/msl_verify.hpp
/openbmc/phosphor-bmc-code-mgmt/openssl_alloc.hpp
/openbmc/phosphor-bmc-code-mgmt/serialize.cpp
/openbmc/phosphor-bmc-code-mgmt/side-switch/phosphor-bmc-side-switch.service
/openbmc/phosphor-bmc-code-mgmt/side-switch/side_switch.cpp
/openbmc/phosphor-bmc-code-mgmt/software_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/software_utils.cpp
/openbmc/phosphor-bmc-code-mgmt/software_utils.hpp
obmc-flash-bmc-static-mount-alt.service.in
/openbmc/phosphor-bmc-code-mgmt/subprojects/boost.wrap
/openbmc/phosphor-bmc-code-mgmt/subprojects/packagefiles/boost/meson.build
/openbmc/phosphor-bmc-code-mgmt/sync_manager.hpp
/openbmc/phosphor-bmc-code-mgmt/sync_manager_main.cpp
/openbmc/phosphor-bmc-code-mgmt/sync_watch.cpp
/openbmc/phosphor-bmc-code-mgmt/sync_watch.hpp
/openbmc/phosphor-bmc-code-mgmt/test/README.md
/openbmc/phosphor-bmc-code-mgmt/test/utest.cpp
/openbmc/phosphor-bmc-code-mgmt/ubi/flash.cpp
/openbmc/phosphor-bmc-code-mgmt/ubi/item_updater_helper.cpp
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-ubiremount.service.in
/openbmc/phosphor-bmc-code-mgmt/update_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/update_manager.hpp
/openbmc/phosphor-bmc-code-mgmt/usb/meson.build
/openbmc/phosphor-bmc-code-mgmt/usb/services/usb-code-update@.service
/openbmc/phosphor-bmc-code-mgmt/usb/usb_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/usb/usb_manager.hpp
/openbmc/phosphor-bmc-code-mgmt/usb/usb_manager_main.cpp
/openbmc/phosphor-bmc-code-mgmt/version.cpp
/openbmc/phosphor-bmc-code-mgmt/version.hpp
/openbmc/phosphor-bmc-code-mgmt/watch.cpp
/openbmc/phosphor-bmc-code-mgmt/xyz.openbmc_project.Software.Manager.service.in
1e9a5f1a23-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.

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

show more ...


/openbmc/phosphor-bmc-code-mgmt/.clang-format
/openbmc/phosphor-bmc-code-mgmt/activation.cpp
/openbmc/phosphor-bmc-code-mgmt/activation.hpp
/openbmc/phosphor-bmc-code-mgmt/download_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/download_manager.hpp
/openbmc/phosphor-bmc-code-mgmt/gen-bios-tar
/openbmc/phosphor-bmc-code-mgmt/image_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/image_verify.cpp
/openbmc/phosphor-bmc-code-mgmt/image_verify.hpp
/openbmc/phosphor-bmc-code-mgmt/item_updater.cpp
/openbmc/phosphor-bmc-code-mgmt/item_updater.hpp
/openbmc/phosphor-bmc-code-mgmt/meson.build
/openbmc/phosphor-bmc-code-mgmt/meson_options.txt
/openbmc/phosphor-bmc-code-mgmt/mmc/flash.cpp
/openbmc/phosphor-bmc-code-mgmt/mmc/obmc-flash-mmc-mount.service.in
/openbmc/phosphor-bmc-code-mgmt/msl_verify.cpp
/openbmc/phosphor-bmc-code-mgmt/msl_verify.hpp
/openbmc/phosphor-bmc-code-mgmt/obmc-flash-bmc
/openbmc/phosphor-bmc-code-mgmt/serialize.hpp
/openbmc/phosphor-bmc-code-mgmt/side-switch/meson.build
/openbmc/phosphor-bmc-code-mgmt/side-switch/phosphor-bmc-side-switch.service
/openbmc/phosphor-bmc-code-mgmt/side-switch/side_switch.cpp
flash.cpp
/openbmc/phosphor-bmc-code-mgmt/sync_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/sync_watch.cpp
/openbmc/phosphor-bmc-code-mgmt/ubi/flash.cpp
/openbmc/phosphor-bmc-code-mgmt/ubi/item_updater_helper.cpp
/openbmc/phosphor-bmc-code-mgmt/usb/meson.build
/openbmc/phosphor-bmc-code-mgmt/version.cpp
/openbmc/phosphor-bmc-code-mgmt/version.hpp
/openbmc/phosphor-bmc-code-mgmt/xyz.openbmc_project.Software.BMC.Updater.service.in
44b9fef907-Feb-2023 George Liu <liuxiwei@inspur.com>

Fix the core dump by using filesystem error_code

The currently used filesystem method will cause an exception if the
file system is damaged for some reason, resulting in a core dump of
the process.

Fix the core dump by using filesystem error_code

The currently used filesystem method will cause an exception if the
file system is damaged for some reason, resulting in a core dump of
the process.
So the overloaded method with the error_code parameter should be used
here to ensure that the process core dump will not be caused after an
exception is thrown.

Fixes: openbmc/phosphor-bmc-code-mgmt#12

Tested: built phosphor-bmc-code-mgmt successfully and CI passes.

Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: I329f78b481cb466e755bc1b78562583620f561c2

show more ...

bf2bb2b122-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 ...


/openbmc/phosphor-bmc-code-mgmt/.shellcheck
/openbmc/phosphor-bmc-code-mgmt/OWNERS
/openbmc/phosphor-bmc-code-mgmt/README.md
/openbmc/phosphor-bmc-code-mgmt/activation.cpp
/openbmc/phosphor-bmc-code-mgmt/activation.hpp
/openbmc/phosphor-bmc-code-mgmt/download_manager.hpp
/openbmc/phosphor-bmc-code-mgmt/download_manager_main.cpp
/openbmc/phosphor-bmc-code-mgmt/flash.hpp
/openbmc/phosphor-bmc-code-mgmt/gen-bios-tar
/openbmc/phosphor-bmc-code-mgmt/image_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/image_manager.hpp
/openbmc/phosphor-bmc-code-mgmt/image_manager_main.cpp
/openbmc/phosphor-bmc-code-mgmt/image_verify.cpp
/openbmc/phosphor-bmc-code-mgmt/image_verify.hpp
/openbmc/phosphor-bmc-code-mgmt/item_updater.cpp
/openbmc/phosphor-bmc-code-mgmt/item_updater.hpp
/openbmc/phosphor-bmc-code-mgmt/item_updater_helper.hpp
/openbmc/phosphor-bmc-code-mgmt/item_updater_main.cpp
/openbmc/phosphor-bmc-code-mgmt/meson.build
/openbmc/phosphor-bmc-code-mgmt/meson_options.txt
/openbmc/phosphor-bmc-code-mgmt/mmc/flash.cpp
/openbmc/phosphor-bmc-code-mgmt/msl_verify.cpp
/openbmc/phosphor-bmc-code-mgmt/obmc-flash-bmc
/openbmc/phosphor-bmc-code-mgmt/side-switch/meson.build
/openbmc/phosphor-bmc-code-mgmt/side-switch/phosphor-bmc-side-switch.service
/openbmc/phosphor-bmc-code-mgmt/side-switch/side_switch.cpp
/openbmc/phosphor-bmc-code-mgmt/side-switch/side_switch.hpp
flash.cpp
/openbmc/phosphor-bmc-code-mgmt/subprojects/CLI11.wrap
/openbmc/phosphor-bmc-code-mgmt/subprojects/phosphor-dbus-interfaces.wrap
/openbmc/phosphor-bmc-code-mgmt/subprojects/phosphor-logging.wrap
/openbmc/phosphor-bmc-code-mgmt/subprojects/sdbusplus.wrap
/openbmc/phosphor-bmc-code-mgmt/subprojects/sdeventplus.wrap
/openbmc/phosphor-bmc-code-mgmt/sync-once.sh
/openbmc/phosphor-bmc-code-mgmt/sync_manager_main.cpp
/openbmc/phosphor-bmc-code-mgmt/test/utest.cpp
/openbmc/phosphor-bmc-code-mgmt/ubi/flash.cpp
/openbmc/phosphor-bmc-code-mgmt/ubi/item_updater_helper.cpp
/openbmc/phosphor-bmc-code-mgmt/usb/meson.build
/openbmc/phosphor-bmc-code-mgmt/usb/usb_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/usb/usb_manager.hpp
/openbmc/phosphor-bmc-code-mgmt/utils.cpp
/openbmc/phosphor-bmc-code-mgmt/utils.hpp
/openbmc/phosphor-bmc-code-mgmt/version.cpp
/openbmc/phosphor-bmc-code-mgmt/version.hpp
984cef5916-Dec-2021 Lei YU <yulei.sh@bytedance.com>

dual-image: Add reset-cs0-aspeed to reset the CS

When BMC is running on the secondary flash, and the primary flash is
updated, the BMC needs to reboot to the primary flash.

On aspeed, this is done

dual-image: Add reset-cs0-aspeed to reset the CS

When BMC is running on the secondary flash, and the primary flash is
updated, the BMC needs to reboot to the primary flash.

On aspeed, this is done by clearing the wdt2 state register bit, and
could be implemented by writing non-zero to
/sys/class/watchdog/watchdog1/access_cs0.
But it has a side effect that the CS will be swapped back to normal,
which means the running rootfs will be swapped to the primary flash.
So this needs to be done after the rootfs is umounted.

Add reset-cs0-aspeed to insert a line in `/run/initramfs/shutdown`
to write non-zero to /sys/class/watchdog/watchdog1/access_cs0.

Tested: Verify that the BMC is reboot to the primary flash after
flashing in the secondary image.

Signed-off-by: Lei YU <yulei.sh@bytedance.com>
Change-Id: I4c988017ed45131318625f349a84500e1831e171

show more ...

b5171acd16-Dec-2021 Lei YU <yulei.sh@bytedance.com>

dual-image: remount alt partitions during update

When the BMC is to updating the alt image, it needs to stop the sync
manager, umount the rofs/rwfs-alt partitions before the flashing,
mount them aft

dual-image: remount alt partitions during update

When the BMC is to updating the alt image, it needs to stop the sync
manager, umount the rofs/rwfs-alt partitions before the flashing,
mount them after it's done, and restart the sync manager.

Otherwise the mount point of rofs/rwfs-alt will get error because the
content is updated.

Tested: Verify the rofs/rwfs-alt are umounted during the alt flashing,
and are mounted again after the flashing is done, and the sync
manager is restarted.

Signed-off-by: Lei YU <yulei.sh@bytedance.com>
Change-Id: I21e2bd8e0616cf529b9b4e5245d5da1ea4dfb51e

show more ...

d8c9eea316-Dec-2021 Lei YU <yulei.sh@bytedance.com>

dual-image: Implement BMC update when running on secondary

Implement the BMC code update when it's running on the secondary image.
It will update the alt flash by obmc-flash-bmc-alt@.service and
wai

dual-image: Implement BMC update when running on secondary

Implement the BMC code update when it's running on the secondary image.
It will update the alt flash by obmc-flash-bmc-alt@.service and
wait for the completion.
After the update is done, it needs reboot to take effect.

Note if the BMC is running on the secondary, it requires a following
commit to reset the CS to make the SoC to boot from the primary flash.

This commit only flashes the alt image when it's running on the
secondary image, there will be future commits to support other cases,
e.g. flashing both images.

Tested: Verify the code update process is successful and it flashes the
whole primary chip when the BMC is running on the secondary
chip.

Signed-off-by: Lei YU <yulei.sh@bytedance.com>
Change-Id: Ifa849e55c28f17b46d7f999ff43a7ad7e73f2ea1

show more ...

8474967815-Dec-2021 Lei YU <yulei.sh@bytedance.com>

dual-image: Sync files before sync-manager starts

The sync-manager only sync files when it's changed/deleted, but does not
sync when it's untouched.
If the service starts and there is no change, the

dual-image: Sync files before sync-manager starts

The sync-manager only sync files when it's changed/deleted, but does not
sync when it's untouched.
If the service starts and there is no change, the files will not be
synced.

Mount the rwfs-alt and add a script to sync the files before the
sync-manager starts, so that they are always synced when the
sync-manager is running.

Tested: Verify the files are synced before the sync-manager starts.

Signed-off-by: Lei YU <yulei.sh@bytedance.com>
Change-Id: I5613738b7b490201c556a175425b48aebae1505b

show more ...

531fbc2510-Dec-2021 Lei YU <yulei.sh@bytedance.com>

dual-image: Detect the running image slot

Add detect-slot-aspeed to detect which slot it is running on, and
assign the member variable, which will be used in future commits.

Tested:
* In normal

dual-image: Detect the running image slot

Add detect-slot-aspeed to detect which slot it is running on, and
assign the member variable, which will be used in future commits.

Tested:
* In normal case, verify the primary slot is 0 and secondary slot
is 1.
* Manually assign value 1 in /run/media/slot, and verify the slot
number is reversed.
* Manually trigger wdt2 timeout and verify in secondary flash that
the slot number is correct, that the running slot is 1 and the
other slot is 0.

Signed-off-by: Lei YU <yulei.sh@bytedance.com>
Change-Id: I69edb1961b4c4bb79e7897c38b9ce8dded42f829

show more ...

6376964e10-Dec-2021 Lei YU <yulei.sh@bytedance.com>

dual-image: Mount alt dirs

To support dual image in static layout, it needs to mount secondary's
rofs/rwfs.

Update obmc-flash-bmc tool to support mounting 'alt-xxx' directories in
/run/media/alt-xx

dual-image: Mount alt dirs

To support dual image in static layout, it needs to mount secondary's
rofs/rwfs.

Update obmc-flash-bmc tool to support mounting 'alt-xxx' directories in
/run/media/alt-xxx, and try to mount the alt-rofs, alt-rwfs before
xyz.openbmc_project.Software.BMC.Updater.service starts.

The ExecStart command is prepended with `-` so that it does not matter
if the mount fails, because the alt chip may be empty or contain invalid
data.

Tested: Verify the obmc-flash-bmc-static-mount-alt.service starts before
xyz.openbmc_project.Software.BMC.Updater.service, and verify it
mounts alt-rofs for dual image systems.
The alt-rwfs will be mounted by the needed service in future
commits.

Signed-off-by: Lei YU <yulei.sh@bytedance.com>
Change-Id: I2133a99d5324a1008c3508154f865ae54a716219

show more ...

25773a7e21-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 ...


/openbmc/phosphor-bmc-code-mgmt/.clang-format
/openbmc/phosphor-bmc-code-mgmt/.gitignore
/openbmc/phosphor-bmc-code-mgmt/MAINTAINERS
/openbmc/phosphor-bmc-code-mgmt/OWNERS
/openbmc/phosphor-bmc-code-mgmt/activation.cpp
/openbmc/phosphor-bmc-code-mgmt/download_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/image_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/image_manager.hpp
/openbmc/phosphor-bmc-code-mgmt/image_manager_main.cpp
/openbmc/phosphor-bmc-code-mgmt/image_verify.cpp
/openbmc/phosphor-bmc-code-mgmt/image_verify.hpp
/openbmc/phosphor-bmc-code-mgmt/item_updater.cpp
/openbmc/phosphor-bmc-code-mgmt/item_updater.hpp
/openbmc/phosphor-bmc-code-mgmt/item_updater_helper.hpp
/openbmc/phosphor-bmc-code-mgmt/item_updater_main.cpp
/openbmc/phosphor-bmc-code-mgmt/meson.build
/openbmc/phosphor-bmc-code-mgmt/meson_options.txt
/openbmc/phosphor-bmc-code-mgmt/mmc/flash.cpp
/openbmc/phosphor-bmc-code-mgmt/mmc/item_updater_helper.cpp
/openbmc/phosphor-bmc-code-mgmt/mmc/obmc-flash-mmc-setprimary@.service.in
/openbmc/phosphor-bmc-code-mgmt/mmc/obmc-flash-mmc@.service.in
/openbmc/phosphor-bmc-code-mgmt/msl_verify.cpp
/openbmc/phosphor-bmc-code-mgmt/msl_verify.hpp
/openbmc/phosphor-bmc-code-mgmt/obmc-flash-bmc
/openbmc/phosphor-bmc-code-mgmt/serialize.cpp
/openbmc/phosphor-bmc-code-mgmt/serialize.hpp
item_updater_helper.cpp
/openbmc/phosphor-bmc-code-mgmt/subprojects/CLI11.wrap
/openbmc/phosphor-bmc-code-mgmt/subprojects/cereal.wrap
/openbmc/phosphor-bmc-code-mgmt/subprojects/phosphor-dbus-interfaces.wrap
/openbmc/phosphor-bmc-code-mgmt/subprojects/phosphor-logging.wrap
/openbmc/phosphor-bmc-code-mgmt/subprojects/sdbusplus.wrap
/openbmc/phosphor-bmc-code-mgmt/subprojects/sdeventplus.wrap
/openbmc/phosphor-bmc-code-mgmt/sync_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/sync_manager_main.cpp
/openbmc/phosphor-bmc-code-mgmt/sync_watch.cpp
/openbmc/phosphor-bmc-code-mgmt/test/utest.cpp
/openbmc/phosphor-bmc-code-mgmt/ubi/flash.cpp
/openbmc/phosphor-bmc-code-mgmt/ubi/item_updater_helper.cpp
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-updateubootvars@.service.in
/openbmc/phosphor-bmc-code-mgmt/usb/70-bmc-usb.rules
/openbmc/phosphor-bmc-code-mgmt/usb/meson.build
/openbmc/phosphor-bmc-code-mgmt/usb/services/usb-code-update@.service
/openbmc/phosphor-bmc-code-mgmt/usb/usb_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/usb/usb_manager.hpp
/openbmc/phosphor-bmc-code-mgmt/usb/usb_manager_main.cpp
/openbmc/phosphor-bmc-code-mgmt/utils.cpp
/openbmc/phosphor-bmc-code-mgmt/utils.hpp
/openbmc/phosphor-bmc-code-mgmt/version.cpp
/openbmc/phosphor-bmc-code-mgmt/version.hpp
/openbmc/phosphor-bmc-code-mgmt/watch.cpp
/openbmc/phosphor-bmc-code-mgmt/xyz/openbmc_project/Software/Image/meson.build
56ec62e220-Jan-2021 Adriana Kobylak <anoo@us.ibm.com>

reset: Call execute() instead of systemd service

The obmc-flash-bmc-setenv@.service file calls a script that
runs the fw_setenv command. Call the fw_setenv command directly
as an effort to move away

reset: Call execute() instead of systemd service

The obmc-flash-bmc-setenv@.service file calls a script that
runs the fw_setenv command. Call the fw_setenv command directly
as an effort to move away from systemd service calls which are
async calls and are harder to monitor for completion.

The only difference is that the script calls fw_setenv twice
because for certain variables such as field mode, the code
parses the actual environment file to get the value, and if
the system supports a redundant environment, then fw_setenv
is needed to be called twice so that the updated value is
reflected in both redundant copies and the code parses the
value correctly.

Factory reset is not a value that is parsed by this code,
so a single call is enough.

Tested: Verified in witherspoon that the rwreset environment
variable was set and factory reset occurred upon reboot.

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

show more ...

8e9ccfe718-Nov-2019 Bright Cheng <bright_cheng@wiwynn.com>

Add support for full BMC FW flash image

Add BMC flash file name list for full flash image.
Save the information for which images are being updated.

Tested: Update '.static.mtd.all.tar' with redfish

Add support for full BMC FW flash image

Add BMC flash file name list for full flash image.
Save the information for which images are being updated.

Tested: Update '.static.mtd.all.tar' with redfish API (
UpdateService.SimpleUpdate).
Verified the code update works well.

Change-Id: Icb47e518db61a8d17998179aed328d0cf56db6f5
Signed-off-by: Bright Cheng <bright_cheng@wiwynn.com>
Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>

show more ...

436be81617-Jun-2020 Adriana Kobylak <anoo@us.ibm.com>

build: Rename .service files to service.in

Rename the .service files to .service.in to allow service files
to support config variable substitution. Ex, this line in .in:
ExecStart=/usr/bin/obmc-fl

build: Rename .service files to service.in

Rename the .service files to .service.in to allow service files
to support config variable substitution. Ex, this line in .in:
ExecStart=/usr/bin/obmc-flash-bmc ubiro @IMG_UPLOAD_DIR@
would become this in .service file:
ExecStart=/usr/bin/obmc-flash-bmc ubiro "/tmp/images"

This allows the service files to use the user defined config
values instead of making assumptions that the default is used.

This commit only renames the service files. The subsequent
commit will make use of this feature.

In addition, the subdir meson.build files were deleted with
this commit. The reason is that the service files need to be
moved to the main meson.build to be able to read the conf file,
and without the service files, the subdir meson.build files are
just a couple lines long so there's not really a reason to have a
separate meson.build file.

Tested: Verified the service files were installed as before.

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

show more ...


/openbmc/phosphor-bmc-code-mgmt/.clang-format
/openbmc/phosphor-bmc-code-mgmt/download_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/download_manager.hpp
/openbmc/phosphor-bmc-code-mgmt/elog-errors.hpp
/openbmc/phosphor-bmc-code-mgmt/force-reboot.service.in
/openbmc/phosphor-bmc-code-mgmt/image_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/image_manager.hpp
/openbmc/phosphor-bmc-code-mgmt/image_manager_main.cpp
/openbmc/phosphor-bmc-code-mgmt/image_verify.cpp
/openbmc/phosphor-bmc-code-mgmt/image_verify.hpp
/openbmc/phosphor-bmc-code-mgmt/item_updater.cpp
/openbmc/phosphor-bmc-code-mgmt/item_updater.hpp
/openbmc/phosphor-bmc-code-mgmt/item_updater_helper.hpp
/openbmc/phosphor-bmc-code-mgmt/meson.build
/openbmc/phosphor-bmc-code-mgmt/meson_options.txt
/openbmc/phosphor-bmc-code-mgmt/mmc/flash.cpp
/openbmc/phosphor-bmc-code-mgmt/mmc/item_updater_helper.cpp
/openbmc/phosphor-bmc-code-mgmt/obmc-flash-bmc-setenv@.service.in
/openbmc/phosphor-bmc-code-mgmt/obmc-flash-host-bios@.service.in
/openbmc/phosphor-bmc-code-mgmt/openssl_alloc.hpp
/openbmc/phosphor-bmc-code-mgmt/reboot-guard-disable.service.in
/openbmc/phosphor-bmc-code-mgmt/reboot-guard-enable.service.in
/openbmc/phosphor-bmc-code-mgmt/serialize.cpp
/openbmc/phosphor-bmc-code-mgmt/sync_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/sync_manager_main.cpp
/openbmc/phosphor-bmc-code-mgmt/sync_watch.cpp
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-cleanup.service.in
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-mirroruboot.service.in
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-ubiremount.service.in
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-ubiro-remove@.service.in
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-ubiro@.service.in
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-ubirw-remove.service.in
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-ubirw.service.in
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-updateubootvars@.service.in
/openbmc/phosphor-bmc-code-mgmt/usr-local.mount.in
/openbmc/phosphor-bmc-code-mgmt/utils.hpp
/openbmc/phosphor-bmc-code-mgmt/version.cpp
/openbmc/phosphor-bmc-code-mgmt/version.hpp
/openbmc/phosphor-bmc-code-mgmt/watch.cpp
/openbmc/phosphor-bmc-code-mgmt/xyz.openbmc_project.Software.BMC.Updater.service.in
/openbmc/phosphor-bmc-code-mgmt/xyz.openbmc_project.Software.Download.service.in
/openbmc/phosphor-bmc-code-mgmt/xyz.openbmc_project.Software.Sync.service.in
/openbmc/phosphor-bmc-code-mgmt/xyz.openbmc_project.Software.Version.service.in
/openbmc/phosphor-bmc-code-mgmt/xyz/openbmc_project/Software/Image.errors.yaml
/openbmc/phosphor-bmc-code-mgmt/xyz/openbmc_project/Software/Image.metadata.yaml
5a43b37306-May-2020 Adriana Kobylak <anoo@us.ibm.com>

meson: build: Remove automake files and update READMEs

Tested: Ran CI and code update on witherspoon.

Change-Id: I4d9695cdddf48e4a4d884fb9b8e30108ee6dfe6c
Signed-off-by: Adriana Kobylak <anoo@us.ib

meson: build: Remove automake files and update READMEs

Tested: Ran CI and code update on witherspoon.

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

show more ...

e0aa780b05-May-2020 Adriana Kobylak <anoo@us.ibm.com>

meson: build: Generate binaries

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

c98d912e05-May-2020 Adriana Kobylak <anoo@us.ibm.com>

Use std::filesystem instead of std::experimental

std::filesystem is fully supported in c++17, no need to keep
the experimental around anymore.

Note that the path append behavior changed, so appendi

Use std::filesystem instead of std::experimental

std::filesystem is fully supported in c++17, no need to keep
the experimental around anymore.

Note that the path append behavior changed, so appending an
absolute path replaces the path instead of appending, therefore
need to use .relative_path().

Tested: Did a code update on witherspoon and verified the sync
path was correct.

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

show more ...

292159f405-May-2020 Adriana Kobylak <anoo@us.ibm.com>

meson: Fix compile errors

Meson runs stricter compiler checks. Fix the following errors in
preparation to moving to meson:

- Unusued parameters. Ex:
../download_manager_main.cpp:7:14: error: unused

meson: Fix compile errors

Meson runs stricter compiler checks. Fix the following errors in
preparation to moving to meson:

- Unusued parameters. Ex:
../download_manager_main.cpp:7:14: error: unused parameter ‘argc’ [-Werror=unused-parameter]
../static/item_updater_helper.cpp:16:42: error: unused parameter ‘entryId’ [-Werror=unused-parameter]
../watch.cpp:77:38: error: unused parameter ‘s’ [-Werror=unused-parameter]
[test/utest.cpp:166]: (style) Variable 'pubKeyConfFile' is assigned a value that is never used.

- Add destructor and initialize variable in init list:
../flash.hpp:18:7: error: ‘class phosphor::software::updater::Flash’ has virtual functions and accessible non-virtual destructor [-Werror=non-virtual-dtor]
[version.hpp:81]: callback is assigned in constructor body. Consider performing initialization in initialization list

Tested: Verified code update on witherspoon still worked.

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

show more ...

22848ece28-Oct-2019 Adriana Kobylak <anoo@us.ibm.com>

Move function to enable field mode to common code

The only different between ubi and static layout for setting field mode
was masking the usr-local.mount service file. Now that the service file
is i

Move function to enable field mode to common code

The only different between ubi and static layout for setting field mode
was masking the usr-local.mount service file. Now that the service file
is in the common code, it makes sense to move the function to the common
code.

Tested:
- Witherspoon: Verified setting field mode disabled the /usr/local mount
as it currently does.
- Romulus: Verified that after setting the field mode, the usr-local.mount
service file could not be started because it's masked.

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

show more ...


/openbmc/phosphor-bmc-code-mgmt/.clang-format
/openbmc/phosphor-bmc-code-mgmt/MAINTAINERS
/openbmc/phosphor-bmc-code-mgmt/Makefile.am
/openbmc/phosphor-bmc-code-mgmt/activation.cpp
/openbmc/phosphor-bmc-code-mgmt/activation.hpp
/openbmc/phosphor-bmc-code-mgmt/configure.ac
/openbmc/phosphor-bmc-code-mgmt/elog-errors.hpp
/openbmc/phosphor-bmc-code-mgmt/image_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/image_verify.hpp
/openbmc/phosphor-bmc-code-mgmt/item_updater.cpp
/openbmc/phosphor-bmc-code-mgmt/item_updater.hpp
/openbmc/phosphor-bmc-code-mgmt/item_updater_helper.hpp
/openbmc/phosphor-bmc-code-mgmt/obmc-flash-bmc
/openbmc/phosphor-bmc-code-mgmt/obmc-flash-bmc-setenv@.service
/openbmc/phosphor-bmc-code-mgmt/openssl_alloc.cpp
/openbmc/phosphor-bmc-code-mgmt/openssl_alloc.hpp
/openbmc/phosphor-bmc-code-mgmt/software.conf
item_updater_helper.cpp
/openbmc/phosphor-bmc-code-mgmt/sync_watch.cpp
/openbmc/phosphor-bmc-code-mgmt/sync_watch.hpp
/openbmc/phosphor-bmc-code-mgmt/synclist
/openbmc/phosphor-bmc-code-mgmt/test/utest.cpp
/openbmc/phosphor-bmc-code-mgmt/ubi/Makefile.am.include
/openbmc/phosphor-bmc-code-mgmt/ubi/force-reboot.service
/openbmc/phosphor-bmc-code-mgmt/ubi/item_updater_helper.cpp
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-cleanup.service
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-mirroruboot.service
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-ubiremount.service
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-ubiro-remove@.service
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-ubiro@.service
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-ubirw-remove.service
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-ubirw.service
/openbmc/phosphor-bmc-code-mgmt/ubi/obmc-flash-bmc-updateubootvars@.service
/openbmc/phosphor-bmc-code-mgmt/ubi/reboot-guard-disable.service
/openbmc/phosphor-bmc-code-mgmt/ubi/reboot-guard-enable.service
/openbmc/phosphor-bmc-code-mgmt/usr-local.mount
/openbmc/phosphor-bmc-code-mgmt/utils.cpp
/openbmc/phosphor-bmc-code-mgmt/utils.hpp
/openbmc/phosphor-bmc-code-mgmt/version.cpp
/openbmc/phosphor-bmc-code-mgmt/version.hpp
/openbmc/phosphor-bmc-code-mgmt/xyz.openbmc_project.Software.BMC.Updater.service
/openbmc/phosphor-bmc-code-mgmt/xyz.openbmc_project.Software.Download.service
/openbmc/phosphor-bmc-code-mgmt/xyz.openbmc_project.Software.Sync.service
/openbmc/phosphor-bmc-code-mgmt/xyz.openbmc_project.Software.Version.service
/openbmc/phosphor-bmc-code-mgmt/xyz/openbmc_project/Software/Image.errors.yaml
/openbmc/phosphor-bmc-code-mgmt/xyz/openbmc_project/Software/Image.metadata.yaml
b0ce996a07-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: I5c7690d8d83cdebe26ff3a73b90a2a8c17dd8054
Signed-off-by:

clang-format: Update to match docs repo

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

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

show more ...


/openbmc/phosphor-bmc-code-mgmt/.clang-format
/openbmc/phosphor-bmc-code-mgmt/Makefile.am
/openbmc/phosphor-bmc-code-mgmt/activation.cpp
/openbmc/phosphor-bmc-code-mgmt/activation.hpp
/openbmc/phosphor-bmc-code-mgmt/download_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/download_manager.hpp
/openbmc/phosphor-bmc-code-mgmt/download_manager_main.cpp
/openbmc/phosphor-bmc-code-mgmt/elog-errors.hpp
/openbmc/phosphor-bmc-code-mgmt/image_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/image_manager.hpp
/openbmc/phosphor-bmc-code-mgmt/image_manager_main.cpp
/openbmc/phosphor-bmc-code-mgmt/image_verify.cpp
/openbmc/phosphor-bmc-code-mgmt/image_verify.hpp
/openbmc/phosphor-bmc-code-mgmt/images.hpp
/openbmc/phosphor-bmc-code-mgmt/item_updater.cpp
/openbmc/phosphor-bmc-code-mgmt/item_updater.hpp
/openbmc/phosphor-bmc-code-mgmt/item_updater_helper.hpp
/openbmc/phosphor-bmc-code-mgmt/item_updater_main.cpp
/openbmc/phosphor-bmc-code-mgmt/serialize.cpp
/openbmc/phosphor-bmc-code-mgmt/serialize.hpp
flash.cpp
item_updater_helper.cpp
/openbmc/phosphor-bmc-code-mgmt/sync_manager.cpp
/openbmc/phosphor-bmc-code-mgmt/sync_manager_main.cpp
/openbmc/phosphor-bmc-code-mgmt/sync_watch.cpp
/openbmc/phosphor-bmc-code-mgmt/sync_watch.hpp
/openbmc/phosphor-bmc-code-mgmt/test/utest.cpp
/openbmc/phosphor-bmc-code-mgmt/ubi/flash.cpp
/openbmc/phosphor-bmc-code-mgmt/ubi/item_updater_helper.cpp
/openbmc/phosphor-bmc-code-mgmt/utils.cpp
/openbmc/phosphor-bmc-code-mgmt/utils.hpp
/openbmc/phosphor-bmc-code-mgmt/version.cpp
/openbmc/phosphor-bmc-code-mgmt/version.hpp
/openbmc/phosphor-bmc-code-mgmt/watch.cpp
/openbmc/phosphor-bmc-code-mgmt/watch.hpp
fa34e02304-Sep-2018 Gunnar Mills <gmills@us.ibm.com>

Clang 6 updates

Just some minor fixes.

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

76c79df327-Aug-2018 Lei YU <mine260309@gmail.com>

static layout: Support field mode

Enable support for field mode, which sets "fieldmode=true" in u-boot
env.

Tested: Verify field mode is enabled via REST API, and verify it is
still enabled

static layout: Support field mode

Enable support for field mode, which sets "fieldmode=true" in u-boot
env.

Tested: Verify field mode is enabled via REST API, and verify it is
still enabled after BMC reboot.

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

show more ...

28b2ba4a19-Jul-2018 Lei YU <mine260309@gmail.com>

static layout: support factory reset

Implement factory reset for static flash layout, that starts
obmc-flash-bmc-setenv to set factory-reset u-boot env and let
init to do the cleanup.

Tested: Invok

static layout: support factory reset

Implement factory reset for static flash layout, that starts
obmc-flash-bmc-setenv to set factory-reset u-boot env and let
init to do the cleanup.

Tested: Invoke factory reset on /xyz/openbmc_project/software and verify
everything in rwfs is deleted, and after reboot, the BMC acts
like a fresh new one.

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

show more ...

dd69157617-Jul-2018 Lei YU <mine260309@gmail.com>

Use separated images for fixed flash layout

For fixed flash layout code update, it was using the whole image-bmc.
For future features like image verification during boot, it needs to use
separated i

Use separated images for fixed flash layout

For fixed flash layout code update, it was using the whole image-bmc.
For future features like image verification during boot, it needs to use
separated images and separated keys.

So change the image-bmc to separated images.

Change-Id: I6cc56f82c786125bb4386af5ea1d931afed7901d
Tested: Do code update on Romulus without issue.
Signed-off-by: Lei YU <mine260309@gmail.com>

show more ...

bbcb7be117-Jul-2018 Adriana Kobylak <anoo@us.ibm.com>

Move setting the priority U-Boot variable to ubi

The service that sets the priority value is unique to the ubi
layout because there is only one version at a time on the
static layout.
Move the calli

Move setting the priority U-Boot variable to ubi

The service that sets the priority value is unique to the ubi
layout because there is only one version at a time on the
static layout.
Move the calling of the service to the ubi implementation.

Tested:
- Witherspoon: Priorities are still set.
- Romulus: The BMC.Updater app does not core dump with the
latest sdbusplus changes due to calling a non-existent service.

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

show more ...

12