| acf75792 | 19-Jan-2026 |
Konstantin Aladyshev <aladyshev22@gmail.com> |
platform-mc: Fix setSupportedTypeVersions function
Since the structure used for storing PLDM supported type versions is a map, incoming type shouldn't be compared to structure size.
Tested: Now sup
platform-mc: Fix setSupportedTypeVersions function
Since the structure used for storing PLDM supported type versions is a map, incoming type shouldn't be compared to structure size.
Tested: Now supportedTypeVersions are correctly populated to terminus.
Change-Id: I63e9c0718ec37937561245eebbb581215d4085c3 Signed-off-by: Konstantin Aladyshev <aladyshev22@gmail.com>
show more ...
|
| 8edcd7ef | 23-Oct-2025 |
Aditya Kurdunkar <adityakurdunkar2@gmail.com> |
platform-mc: Handle exceptions while UTF-16 to UTF-8 conversion
This commit wraps `std::wstring_convert` operations in try-catch blocks in `parseSensorAuxiliaryNamesPDR()` and `parseEntityAuxiliaryN
platform-mc: Handle exceptions while UTF-16 to UTF-8 conversion
This commit wraps `std::wstring_convert` operations in try-catch blocks in `parseSensorAuxiliaryNamesPDR()` and `parseEntityAuxiliaryNamesPDR()` to handle potential conversion exceptions gracefully. When an exception occurs, log an error message and skip the problematic name instead of crashing the application.
Tested. pldmd no longer crashes when an exception is thrown while `std::wstring_convert` operations.
Change-Id: I246479899110ff371aec6bc89419a5d6937a0a2e Signed-off-by: Aditya Kurdunkar <adityakurdunkar2@gmail.com>
show more ...
|
| 2f9079e4 | 16-Jan-2026 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
oem: meta: http boot: Migrate away from libpldm/utils.h
Use more precise includes where we can.
Change-Id: Ice4c66e83ef0f287c187b6b4b487639636a562a5 Signed-off-by: Andrew Jeffery <andrew@codeconstr
oem: meta: http boot: Migrate away from libpldm/utils.h
Use more precise includes where we can.
Change-Id: Ice4c66e83ef0f287c187b6b4b487639636a562a5 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| 29bb562d | 07-Jan-2026 |
Manojkiran Eda <manojkiran.eda@gmail.com> |
pldmtool: fix ComponentActivationMethods check
According to the firmware update specification, ComponentActivationMethods is a 16-bit bitmap that indicates the activation capabilities supported by t
pldmtool: fix ComponentActivationMethods check
According to the firmware update specification, ComponentActivationMethods is a 16-bit bitmap that indicates the activation capabilities supported by the FD, and multiple activation methods can be enabled simultaneously. So fix the code to properly support and interpret multiple activation methods instead of treating it as a single-value field.
Change-Id: I02032e5317d488f376e7678ba75288b4f1098a25 Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>
show more ...
|
| 9c1455c0 | 12-Jan-2026 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
pldmtool: pldm_bios_cmd: Migrate away from libpldm/utils.h
Be more precise where we can.
Change-Id: Id9d3f7a6140efe668ed61b6ee7b05b6d266687af Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com
pldmtool: pldm_bios_cmd: Migrate away from libpldm/utils.h
Be more precise where we can.
Change-Id: Id9d3f7a6140efe668ed61b6ee7b05b6d266687af Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| e82ef153 | 12-Jan-2026 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
pldmtool: Move off deprecated ver2str()
Switch to pldm_base_ver2str().
Change-Id: I81d863d5f68413c178abd3fa04a712877ad1cacb Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au> |
| 8464571f | 12-Jan-2026 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
pldmtool: bios: Move off deprecated bcd2dec16()
Switch to pldm_bcd_bcd2dec16().
Change-Id: I71ea69b500cae7d7543474b8b8f55c9da026a0aa Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au> |
| 3a14b55a | 12-Jan-2026 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
pldmtool: bios: Move off deprecated bcd2dec8()
Switch to pldm_bcd_bcd2dec8().
Change-Id: I8a5c465966f037081ef9c4333f2dc4ef4f429cdb Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au> |
| 8758d562 | 01-Aug-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
meson: Describe dependencies as system includes
Avoid static analysis penalizing the pldm build for issues in dependencies.
Change-Id: I0da511e090e9b3d6738e9d28e593da7551bef22c Signed-off-by: Andre
meson: Describe dependencies as system includes
Avoid static analysis penalizing the pldm build for issues in dependencies.
Change-Id: I0da511e090e9b3d6738e9d28e593da7551bef22c Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| af14a38b | 14-Jan-2026 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
Revert "platform-mc: Add 64-bit numeric sensor support"
This reverts commit e1e59bc6ebf461d7f125a526004ac9c98b7af4bb.
The corresponding libpldm commit[1] has not yet been merged. pldm now fails to
Revert "platform-mc: Add 64-bit numeric sensor support"
This reverts commit e1e59bc6ebf461d7f125a526004ac9c98b7af4bb.
The corresponding libpldm commit[1] has not yet been merged. pldm now fails to build with e.g:
``` ../platform-mc/sensor_manager.cpp: In member function ‘exec::task<int> pldm::platform_mc::SensorManager::getSensorReading(std::shared_ptr<pldm::platform_mc::NumericSensor>)’: ../platform-mc/sensor_manager.cpp:336:30: error: ‘PLDM_SENSOR_DATA_SIZE_SINT64’ was not declared in this scope; did you mean ‘PLDM_SENSOR_DATA_SIZE_SINT8’? 336 | uint8_t sensorDataSize = PLDM_SENSOR_DATA_SIZE_SINT64; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ | PLDM_SENSOR_DATA_SIZE_SINT8 ```
[1]: https://gerrit.openbmc.org/c/openbmc/libpldm/+/84665
Change-Id: I1f9d33dd813bc65b4f5bc932cebd7b51cd41ca00 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
| 31247827 | 03-Dec-2025 |
Marc Olberding <molberding@nvidia.com> |
fw-update: make percentage reporting more granular
This makes percentage completion reporting more granular. Previously issues were seen around devices that took longer than five minutes to update,
fw-update: make percentage reporting more granular
This makes percentage completion reporting more granular. Previously issues were seen around devices that took longer than five minutes to update, since xfering the firmware wasn't counted as progress. This adds a new class UpdateProgress, which tracks the stages of update, including how far into a transfer we are
Tested: loaded onto nvl32-obmc and performed a full fwpkg update The percentage complete increases monotonically and doesn't time out as it did previously for updates that take longer than 5 min ``` { "@odata.id": "/redfish/v1/TaskService/Tasks/0", "@odata.type": "#Task.v1_4_3.Task", "EndTime": "2026-01-06T21:49:01+00:00", "HidePayload": false, "Id": "0", "Messages": [ { "@odata.type": "#Message.v1_1_1.Message", "Message": "The task with Id '0' has started.", "MessageArgs": [ "0" ], "MessageId": "TaskEvent.1.0.TaskStarted", "MessageSeverity": "OK", "Resolution": "None." }, { "@odata.type": "#Message.v1_1_1.Message", "Message": "The task with Id '0' has changed to progress 1 percent complete.", "MessageArgs": [ "0", "1" ], "MessageId": "TaskEvent.1.0.TaskProgressChanged", "MessageSeverity": "OK", "Resolution": "None." }, { "@odata.type": "#Message.v1_1_1.Message", "Message": "The task with Id '0' has changed to progress 2 percent complete.", "MessageArgs": [ "0", "2" ], "MessageId": "TaskEvent.1.0.TaskProgressChanged", "MessageSeverity": "OK", "Resolution": "None." }, { "@odata.type": "#Message.v1_1_1.Message", "Message": "The task with Id '0' has changed to progress 3 percent complete.", "MessageArgs": [ "0", "3" ], "MessageId": "TaskEvent.1.0.TaskProgressChanged", "MessageSeverity": "OK", "Resolution": "None." }, { "@odata.type": "#Message.v1_1_1.Message", "Message": "The task with Id '0' has changed to progress 4 percent complete.", "MessageArgs": [ "0", "4" ], "MessageId": "TaskEvent.1.0.TaskProgressChanged", "MessageSeverity": "OK", "Resolution": "None." }, { "@odata.type": "#Message.v1_1_1.Message", "Message": "The task with Id '0' has changed to progress 5 percent complete.", "MessageArgs": [ "0", "5" ], "MessageId": "TaskEvent.1.0.TaskProgressChanged", "MessageSeverity": "OK", "Resolution": "None." }, { "@odata.type": "#Message.v1_1_1.Message", "Message": "The task with Id '0' has changed to progress 6 percent complete.", "MessageArgs": [ "0", "6" ], "MessageId": "TaskEvent.1.0.TaskProgressChanged", "MessageSeverity": "OK", "Resolution": "None." }, { "@odata.type": "#Message.v1_1_1.Message", "Message": "The task with Id '0' has changed to progress 7 percent complete.", "MessageArgs": [ "0", "7" ], "MessageId": "TaskEvent.1.0.TaskProgressChanged", "MessageSeverity": "OK", "Resolution": "None." }, ... { "@odata.type": "#Message.v1_1_1.Message", "Message": "The task with Id '0' has changed to progress 100 percent complete.", "MessageArgs": [ "0", "100" ], "MessageId": "TaskEvent.1.0.TaskProgressChanged", "MessageSeverity": "OK", "Resolution": "None." }, { "@odata.type": "#Message.v1_1_1.Message", "Message": "The task with Id '0' has completed.", "MessageArgs": [ "0" ], "MessageId": "TaskEvent.1.0.TaskCompletedOK", "MessageSeverity": "OK", "Resolution": "None." } ], ```
Change-Id: Ib2d5b6b9e2dbf025fd1391a5ba63c78937186122 Signed-off-by: Marc Olberding <molberding@nvidia.com>
show more ...
|
| e1e59bc6 | 11-Dec-2025 |
Apparao Puli <apuli@nvidia.com> |
platform-mc: Add 64-bit numeric sensor support
Add UINT64/SINT64 sensor data type support as specified in DSP0248 v1.3.0. This enables proper representation of 64-bit sensor readings without truncat
platform-mc: Add 64-bit numeric sensor support
Add UINT64/SINT64 sensor data type support as specified in DSP0248 v1.3.0. This enables proper representation of 64-bit sensor readings without truncation.
Tested: Verified on Alon8 platform, all sensors show correctly.
Change-Id: I23fad4a47e59194c22e07526a1effdbf319b72e2 Signed-off-by: Apparao Puli <apuli@nvidia.com>
show more ...
|
| f9090f37 | 15-Jul-2025 |
Eric Yang <eric.yang.wiwynn@gmail.com> |
pldm: Use std::expected for instance ID allocation
Refactor InstanceIdDb::next() to return std::expected<uint8_t, InstanceIdError> instead of throwing exceptions. With this change, errors are no lon
pldm: Use std::expected for instance ID allocation
Refactor InstanceIdDb::next() to return std::expected<uint8_t, InstanceIdError> instead of throwing exceptions. With this change, errors are no longer thrown by default. Instead, the caller can inspect allocation errors as values, extract the error message or code as needed, or explicitly throw the error further up the stack if appropriate. This approach allows for more flexible and explicit error handling, and reduces reliance on exception-based control flow.
Motivation: This change aims to improve robustness by enabling explicit error handling and reducing the risk of uncaught exceptions that could lead to a pldmd core dump if an instance ID allocation fails for a single EID. Such a core dump could disrupt ongoing operations such as sensor polling or firmware updates for other EIDs
Note: Currently, some call sites are still void-returning functions and cannot propagate errors via return values. As a result, errors from InstanceIdDb::next() are thrown as InstanceIdError at these locations to avoid silent failures. Ideally, it would be preferable for these functions to propagate errors by value (for example, using std::expected), so that errors can always be handled explicitly without relying on exceptions.
Change-Id: I7189e97f206bae1eed5c8db44ebbbcd4393c8f8d Signed-off-by: Eric Yang <eric.yang.wiwynn@gmail.com>
show more ...
|
| 0b06dd89 | 26-Nov-2025 |
Aditya Kurdunkar <adityakurdunkar2@gmail.com> |
oem-nvidia: Add support for legacy CPER event handling
Add OEM support to handle legacy CPER events using event class 0xFA for existing NVIDIA platforms.
Prior to DSP0248 V1.3.0, NVIDIA used OEM ev
oem-nvidia: Add support for legacy CPER event handling
Add OEM support to handle legacy CPER events using event class 0xFA for existing NVIDIA platforms.
Prior to DSP0248 V1.3.0, NVIDIA used OEM event class 0xFA to report CPER events. The spec later standardized CPER events as class 0x07 (PLDM_CPER_EVENT). This change maintains backwards compatibility by registering handlers for both the legacy 0xFA and the standardized 0x07 event classes.
This ensures continued support for NVIDIA platforms using older firmware while being compatible with the current PLDM specification.
Tested.
This patch was tested on Nvidia GB200 Platform on Grace CPU Terminus. The CPER payload was generated in /var/cper
''' $ ls /var/cper/* /var/cper/cper-lSaBc '''
Change-Id: Ia0bb6c78b6abdc2c9ac2ea9249f180177d4aabcf Signed-off-by: Aditya Kurdunkar <adityakurdunkar2@gmail.com>
show more ...
|
| 28ba36aa | 24-Apr-2025 |
Pavithra Barithaya <pavithrabarithaya07@gmail.com> |
fru: Function to remove the individual FRU Record
When there is a concurrent maintenance operation a FRU can be removed or added. When the FRU is removed we must make sure that the associated FRU Re
fru: Function to remove the individual FRU Record
When there is a concurrent maintenance operation a FRU can be removed or added. When the FRU is removed we must make sure that the associated FRU Record set PDRs, State Effecter PDRs, State Sensor PDRs, EntityAssociation PDRs need to be removed from the repository. This commit adds the function that does the required functionality.
Tested: Removal of a FRU say a Fan by making the present property of the FRU as false. This action removes the corresponding FRURecordSet PDRs, State effecter PDRs, State sensor PDRs and also the Entity association PDRs from the repo. This also removes the node corresponding to that FRU from the entity association tree. This behavior is observed for other FRUs as well.
Change-Id: I6c6e17e21807940ce6d4a230dbceafd9f7c5c958 Signed-off-by: Pavithra Barithaya <pavithrabarithaya07@gmail.com>
show more ...
|
| d237a65d | 08-Dec-2025 |
Carter Chen <carter.chen.wiwynn@gmail.com> |
oem-meta: Fix to_hex_string truncation issue for values > 0xFF
Description: Change parameter type from uint8_t to uint32_t and fix the format string to properly handle hexadecimal values larger than
oem-meta: Fix to_hex_string truncation issue for values > 0xFF
Description: Change parameter type from uint8_t to uint32_t and fix the format string to properly handle hexadecimal values larger than 0xFF.
Motivation: The current implementation truncates values larger than 0xFF due to uint8_t limitation, causing incorrect display in event messages.
Change-Id: I791c7f0771d3a2ae7b637ca22fed959d94bc86df Signed-off-by: Carter Chen <carter.chen.wiwynn@gmail.com>
show more ...
|
| b249a645 | 02-Dec-2025 |
Luka Strizic <lstrz@google.com> |
requester: Adds a missing try-catch
A try-catch in propertiesChangedCb was missing. Now it's added.
Tested: Successfully restarted pldmd on a machine. Change-Id: Ic7f3d210dddaa9857841a6f53c9e26db7f
requester: Adds a missing try-catch
A try-catch in propertiesChangedCb was missing. Now it's added.
Tested: Successfully restarted pldmd on a machine. Change-Id: Ic7f3d210dddaa9857841a6f53c9e26db7fae3e92 Signed-off-by: Luka Strizic <lstrz@google.com>
show more ...
|
| 1e58365a | 02-Dec-2025 |
Luka Strizic <lstrz@google.com> |
.gitignore: Adds .idea to ignorefile
Change-Id: I07d9947b7dc589471de160b5f9d5a0794ac111f6 Signed-off-by: Luka Strizic <lstrz@google.com> |
| 3c99e773 | 02-Dec-2025 |
Alexander Hansen <alexander.hansen@9elements.com> |
use PDI symbols for Inventory.Decorator.Compatible
Use PDI symbols instead of string literals for property names, method names, signal names and interface names.
Tested: Inspection only
Change-Id:
use PDI symbols for Inventory.Decorator.Compatible
Use PDI symbols instead of string literals for property names, method names, signal names and interface names.
Tested: Inspection only
Change-Id: I4378ab2093c67d5a6ef5dce58bdc3f0d47f9cad7 Signed-off-by: Alexander Hansen <alexander.hansen@9elements.com>
show more ...
|
| 42afe90f | 02-Dec-2025 |
Alexander Hansen <alexander.hansen@9elements.com> |
use PDI constants for Association interface
Use PDI symbols instead of string literals for the interface name of `xyz.openbmc_project.Association`.
This change depends on fix [1] which was merged r
use PDI constants for Association interface
Use PDI symbols instead of string literals for the interface name of `xyz.openbmc_project.Association`.
This change depends on fix [1] which was merged recently.
Tested: Inspection only
References: [1] https://gerrit.openbmc.org/c/openbmc/phosphor-dbus-interfaces/+/85601
Change-Id: Ie90f49897ba2a9c2b953d19b38ce01576397937f Signed-off-by: Alexander Hansen <alexander.hansen@9elements.com>
show more ...
|
| f1776bfa | 08-Dec-2025 |
Jayashankar Padath <jayashankarpadath@gmail.com> |
oem-ibm: Adding Huygens system BIOS attr support
This commit adds the irequired BIOS attributes for the new system named as Huygens.
Tested By: Verified that BIOS attributes are getting listed whil
oem-ibm: Adding Huygens system BIOS attr support
This commit adds the irequired BIOS attributes for the new system named as Huygens.
Tested By: Verified that BIOS attributes are getting listed while querying with pldmtool
Change-Id: I3cfd0207b898a39f57f9eb4836a5530e7d2f64de Signed-off-by: Jayashankar Padath <jayashankarpadath@gmail.com>
show more ...
|
| 94657ece | 26-Nov-2025 |
Alexander Hansen <alexander.hansen@9elements.com> |
common/utils: use PDI definitions
Use PDI symbols instead of string literals for property names, method names, signal names and interface names.
Tested: Inspection only.
Change-Id: I6062c13cb68ea5
common/utils: use PDI definitions
Use PDI symbols instead of string literals for property names, method names, signal names and interface names.
Tested: Inspection only.
Change-Id: I6062c13cb68ea5fe62aa3db4ed948964c04e098f Signed-off-by: Alexander Hansen <alexander.hansen@9elements.com>
show more ...
|
| d20f0ac4 | 26-Nov-2025 |
Alexander Hansen <alexander.hansen@9elements.com> |
mctp_endpoint_discovery: use PDI definitions
Use PDI symbols instead of string literals for the interface name of `xyz.openbmc_project.Common.UUID`.
Tested: Inspection only.
Change-Id: Ia608e7ead5
mctp_endpoint_discovery: use PDI definitions
Use PDI symbols instead of string literals for the interface name of `xyz.openbmc_project.Common.UUID`.
Tested: Inspection only.
Change-Id: Ia608e7ead5d4b165df03e1bcc14c94d1cbd05ecf Signed-off-by: Alexander Hansen <alexander.hansen@9elements.com>
show more ...
|
| 1976152a | 26-Nov-2025 |
Alexander Hansen <alexander.hansen@9elements.com> |
libpldmresponder/bios: use PDI definitions
Use PDI definitions instead of string literals for xyz.openbmc_project.Time.EpochTime xyz.openbmc_project.Time.Synchronization
Tested: Inspection only
Ch
libpldmresponder/bios: use PDI definitions
Use PDI definitions instead of string literals for xyz.openbmc_project.Time.EpochTime xyz.openbmc_project.Time.Synchronization
Tested: Inspection only
Change-Id: I53bf5785770cac9334275181043e9c7c792ee682 Signed-off-by: Alexander Hansen <alexander.hansen@9elements.com>
show more ...
|
| 8187cb19 | 26-Nov-2025 |
Alexander Hansen <alexander.hansen@9elements.com> |
event_manager: use PDI definitions
Use PDI symbols instead of string literals for method names and interface names for the `xyz.openbmc_project.Dump.Create`.
Tested: Inspection only.
Change-Id: Ic
event_manager: use PDI definitions
Use PDI symbols instead of string literals for method names and interface names for the `xyz.openbmc_project.Dump.Create`.
Tested: Inspection only.
Change-Id: Ic47b395e3b1be27326ef4ce87ebf62a176b27f2a Signed-off-by: Alexander Hansen <alexander.hansen@9elements.com>
show more ...
|