History log of /openbmc/pldm/ (Results 1 – 25 of 1354)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
acf7579219-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 ...

8edcd7ef23-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 ...

2f9079e416-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 ...

29bb562d07-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 ...

9c1455c012-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 ...

e82ef15312-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>

8464571f12-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>

3a14b55a12-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>

8758d56201-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 ...

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

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

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

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

0b06dd8926-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 ...

28ba36aa24-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 ...

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

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

1e58365a02-Dec-2025 Luka Strizic <lstrz@google.com>

.gitignore: Adds .idea to ignorefile

Change-Id: I07d9947b7dc589471de160b5f9d5a0794ac111f6
Signed-off-by: Luka Strizic <lstrz@google.com>

3c99e77302-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 ...

42afe90f02-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 ...

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

94657ece26-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 ...

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

1976152a26-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 ...

8187cb1926-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 ...

12345678910>>...55