Name | Date | Size | #Lines | LOC | ||
---|---|---|---|---|---|---|
.. | - | - | ||||
i2c/ | H | - | - | 145 | 122 | |
include/ | H | - | - | 827 | 513 | |
pldm/ | H | - | - | 951 | 664 | |
src/ | H | - | - | 1,063 | 827 | |
README.md | H A D | 12-Jun-2025 | 1.2 KiB | 35 | 22 | |
meson.build | H A D | 21-Sep-2025 | 601 | 24 | 19 |
README.md
1# Common Firmware Library 2 3This library follows the code update design: 4<https://github.com/openbmc/docs/blob/master/designs/code-update.md> 5 6It enables implementing code updaters for different devices. Each one inherits 7from the classes found in the common folder. 8 9Device-specific class members can be added to implement the code update flow for 10different devices. 11 12## Example Code 13 14To understand the control flow, consider looking at 'ExampleDevice' and 15'ExampleCodeUpdater'. 16 17The ExampleCodeUpdater implements the classes from common firmware library and 18serves as a demonstration & testing tool. 19 20It implements everything expected of a device-specific code updater and can be 21used as a starting point. 22 23## PLDM Package Parser 24 25The PackageParser in the pldm directory currently references a following 26revision from the openbmc/pldm repository - 27 28<https://github.com/openbmc/pldm/blob/f48015b39f945c2f9534e674819bdfef7b6c7054/fw-update/package_parser.cpp#L294> 29 30However, this code will be deprecated and replaced with the package parsing APIs 31provided by libpldm once they become available. 32 33The PackageParser has a maximum supported PLDM firmware package revision of 341.0.0. 35