History log of /openbmc/pldm/libpldmresponder/ (Results 1 – 25 of 375)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
5ea7237704-Feb-2025 Pavithra Barithaya <pavithrabarithaya07@gmail.com>

tests: Migrate to placement_new from reinterpret casting

reinterpret_cast is prohibited by the C++ core guidelines because
it takes the behavior outside the language definition and gives
problems wi

tests: Migrate to placement_new from reinterpret casting

reinterpret_cast is prohibited by the C++ core guidelines because
it takes the behavior outside the language definition and gives
problems with type safety. Placement-new on the other-hand allows
to control the object storage while still properly instantiating
an object,keeping the behavior inside the C++ language
specification.

Change-Id: Ifab9ea58b932db11d7af0b9def119bed1bfdc44d
Signed-off-by: Pavithra Barithaya <pavithrabarithaya07@gmail.com>

show more ...

677a455230-Jan-2025 Pavithra Barithaya <pavithrabarithaya07@gmail.com>

libpldmresponder : Migrate to placement_new from reinterpret casting

reinterpret_cast is prohibited by the C++ core guidelines because
it takes the behavior outside the language definition and gives

libpldmresponder : Migrate to placement_new from reinterpret casting

reinterpret_cast is prohibited by the C++ core guidelines because
it takes the behavior outside the language definition and gives
problems with type safety. Placement-new on the other-hand allows
to control the object storage while still properly instantiating
an object,keeping the behavior inside the C++ language
specification.

Change-Id: If96afcb2c9dbea8fb6815d74a2181ca9ed04903a
Signed-off-by: Pavithra Barithaya <pavithrabarithaya07@gmail.com>

show more ...


base.cpp
bios.cpp
bios_config.cpp
bios_enum_attribute.cpp
bios_integer_attribute.cpp
bios_string_attribute.cpp
fru.cpp
pdr_state_effecter.hpp
platform.cpp
platform.hpp
platform_numeric_effecter.hpp
platform_state_effecter.hpp
platform_state_sensor.hpp
/openbmc/pldm/meson.options
/openbmc/pldm/oem/ampere/event/oem_event_manager.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_by_type.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_dump.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_dump.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_lid.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_pel.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_progress_src.hpp
/openbmc/pldm/platform-mc/event_manager.cpp
/openbmc/pldm/platform-mc/event_manager.hpp
/openbmc/pldm/platform-mc/manager.hpp
/openbmc/pldm/platform-mc/numeric_sensor.cpp
/openbmc/pldm/platform-mc/numeric_sensor.hpp
/openbmc/pldm/platform-mc/platform_manager.hpp
/openbmc/pldm/platform-mc/sensor_manager.hpp
/openbmc/pldm/platform-mc/terminus.cpp
/openbmc/pldm/platform-mc/terminus.hpp
/openbmc/pldm/platform-mc/terminus_manager.hpp
/openbmc/pldm/platform-mc/test/event_manager_test.cpp
/openbmc/pldm/platform-mc/test/numeric_sensor_test.cpp
/openbmc/pldm/platform-mc/test/terminus_manager_test.cpp
/openbmc/pldm/platform-mc/test/terminus_test.cpp
/openbmc/pldm/pldmtool/oem/ibm/pldm_oem_ibm.cpp
/openbmc/pldm/pldmtool/pldm_base_cmd.cpp
/openbmc/pldm/pldmtool/pldm_bios_cmd.cpp
/openbmc/pldm/pldmtool/pldm_fru_cmd.cpp
/openbmc/pldm/pldmtool/pldm_fw_update_cmd.cpp
/openbmc/pldm/pldmtool/pldm_platform_cmd.cpp
/openbmc/pldm/utilities/requester/set_state_effecter.cpp
/openbmc/pldm/utilities/requester/set_state_effecter_async.cpp
dd1f28b811-Mar-2025 Manojkiran Eda <manojkiran.eda@gmail.com>

Move dbus_to_terminus_effecter code to platform-mc

In the current state , pldm build breaks when attempting to perform
a debug-optimized build (`-O2` optimization), leading to the following
linker e

Move dbus_to_terminus_effecter code to platform-mc

In the current state , pldm build breaks when attempting to perform
a debug-optimized build (`-O2` optimization), leading to the following
linker error:

```
undefined reference to `pldm::platform_mc::TerminusManager::getActiveEidByName
(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
```

This issue is not encountered in the CI environment, as CI uses the
`-Og` optimization flag, which does not aggressively inline functions.
Consequently, the reference to `getActiveEidByName()` is resolved
without issue. However, when building the project with default
optimizations (debugoptimized [-O2]), the build fails because the
linker cannot resolve the reference to `getActiveEidByName()`, which is
inlined by the compiler.

To address this problem, there are three potential solutions:

1. Prevent Inlining of the Function:
We could use `__attribute__((noinline))` to prevent the compiler
from inlining `getActiveEidByName()`.

2. Move Source Files into `libpldmresponder`:
We could move the `platform-mc/manager.cpp` and
`platform-mc/terminus_manager.cpp` files into the `libpldmresponder`
so the compiler can resolve the reference directly within the
library.

3. Migrate `dbus_to_terminus_effecter.cpp` to the `platform-mc` folder:

The most appropriate solution appears to be migrating the
`dbus_to_terminus_effecter.cpp` file into the `platform-mc` directory.
This file is not inherently tied to `libpldmresponder` but functions as
a requester. Additionally, there are existing community patches that
allow the system to scale from a single host terminus to multiple
terminii, further justifying this move. So, solution #3 is the most
fitting at this stage. By relocating the `dbus_to_terminus_effecter`
code to the `platform-mc` folder, we can ensure proper modularity,
while also resolving the build issue in a clean and scalable manner.

Tested By:
1. meson build -Doptimization=2 works fine with the patchset.

Change-Id: I0ac8be58253bfb0394500f1d34e8431c6103c924
Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>

show more ...


/openbmc/pldm/.eslintignore
/openbmc/pldm/.linter-ignore
/openbmc/pldm/common/utils.cpp
/openbmc/pldm/common/utils.hpp
/openbmc/pldm/fw-update/manager.hpp
/openbmc/pldm/host-bmc/dbus/board.hpp
/openbmc/pldm/host-bmc/dbus/custom_dbus.cpp
/openbmc/pldm/host-bmc/dbus/custom_dbus.hpp
/openbmc/pldm/host-bmc/dbus/panel.hpp
/openbmc/pldm/host-bmc/dbus/vrm.hpp
/openbmc/pldm/host-bmc/dbus_to_event_handler.cpp
/openbmc/pldm/host-bmc/host_pdr_handler.cpp
/openbmc/pldm/host-bmc/test/meson.build
meson.build
/openbmc/pldm/meson.build
/openbmc/pldm/oem/ampere/event/oem_event_manager.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_by_type.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_dump.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_lid.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_pel.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_pel.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_progress_src.hpp
/openbmc/pldm/platform-mc/dbus_to_terminus_effecters.cpp
/openbmc/pldm/platform-mc/dbus_to_terminus_effecters.hpp
/openbmc/pldm/platform-mc/manager.hpp
/openbmc/pldm/platform-mc/platform_manager.cpp
/openbmc/pldm/platform-mc/platform_manager.hpp
/openbmc/pldm/platform-mc/sensor_manager.cpp
/openbmc/pldm/platform-mc/sensor_manager.hpp
/openbmc/pldm/platform-mc/terminus.cpp
/openbmc/pldm/platform-mc/terminus.hpp
/openbmc/pldm/platform-mc/terminus_manager.cpp
/openbmc/pldm/platform-mc/terminus_manager.hpp
/openbmc/pldm/platform-mc/test/dbus_to_terminus_effecter_test.cpp
/openbmc/pldm/platform-mc/test/event_manager_test.cpp
/openbmc/pldm/platform-mc/test/host_effecter_jsons/good/dbus_to_terminus_effecter.json
/openbmc/pldm/platform-mc/test/host_effecter_jsons/malformed/dbus_to_terminus_effecter.json
/openbmc/pldm/platform-mc/test/host_effecter_jsons/no_json/dummy.json
/openbmc/pldm/platform-mc/test/meson.build
/openbmc/pldm/platform-mc/test/platform_manager_test.cpp
/openbmc/pldm/platform-mc/test/sensor_manager_test.cpp
/openbmc/pldm/platform-mc/test/terminus_manager_test.cpp
/openbmc/pldm/platform-mc/test/terminus_test.cpp
/openbmc/pldm/platform-mc/test/utils_test.hpp
/openbmc/pldm/pldmd/handler.hpp
/openbmc/pldm/pldmd/pldmd.cpp
/openbmc/pldm/requester/mctp_endpoint_discovery.cpp
/openbmc/pldm/requester/mctp_endpoint_discovery.hpp
/openbmc/pldm/requester/test/mctp_endpoint_discovery_test.cpp
/openbmc/pldm/requester/test/mock_mctp_discovery_handler_intf.hpp
/openbmc/pldm/softoff/softoff.cpp
c366447a04-Feb-2025 Archana Kakani <archana.kakani@ibm.com>

host-bmc: Implement Inventory Item interface

Adding support to host Inventory Item dbus interface. PLDM hosts the
dbus interface based on the entity type. The Inventory Item interface
is defined a

host-bmc: Implement Inventory Item interface

Adding support to host Inventory Item dbus interface. PLDM hosts the
dbus interface based on the entity type. The Inventory Item interface
is defined at [1].

Tested:
Functional test passed

[1]: https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/yaml/xyz/openbmc_project/Inventory/Item.interface.yaml

Change-Id: Ifed3cc01d825a69d64afcffd8447f7c8d9387913
Signed-off-by: Archana Kakani <archana.kakani@ibm.com>

show more ...

f935537d04-Feb-2025 Archana Kakani <archana.kakani@ibm.com>

host-bmc: Implement Availability interface

Adding support to host Availability dbus interface. PLDM hosts this dbus
interface to provide the availability of the FRUs hosted by PLDM. The
Availability

host-bmc: Implement Availability interface

Adding support to host Availability dbus interface. PLDM hosts this dbus
interface to provide the availability of the FRUs hosted by PLDM. The
Availability interface is defined at [1].

Tested:
Functional test passed

[1]: https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/yaml/xyz/openbmc_project/State/Decorator/Availability.interface.yaml

Change-Id: Ie5912b3683ce102a249c8b503ea9f455f0fbcabf
Signed-off-by: Archana Kakani <archana.kakani@ibm.com>

show more ...

1634a6e904-Feb-2025 Archana Kakani <archana.kakani@ibm.com>

host-bmc: Implement Asset interface

Adding support to host Asset dbus interface. Based on the Topology data
received from remote PLDM terminus, PLDM hosts the dbus interface. The
Asset interface i

host-bmc: Implement Asset interface

Adding support to host Asset dbus interface. Based on the Topology data
received from remote PLDM terminus, PLDM hosts the dbus interface. The
Asset interface is defined at [1].

Tested:
Functional test passed

[1]: https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/yaml/xyz/openbmc_project/Inventory/Decorator/Asset.interface.yaml

Change-Id: Ia32e69861192fca6db8c1613fbec281ca3faa3e8
Signed-off-by: Archana Kakani <archana.kakani@ibm.com>

show more ...

db65c3b403-Feb-2025 Archana Kakani <archana.kakani@ibm.com>

host-bmc: Implement Chassis interface

Adding support to host Chassis dbus interface. Based on the PDRs
received from remote PLDM terminus, PLDM hosts the dbus interface based
on the entity type. Th

host-bmc: Implement Chassis interface

Adding support to host Chassis dbus interface. Based on the PDRs
received from remote PLDM terminus, PLDM hosts the dbus interface based
on the entity type. The Chassis interface is defined at [1].

Tested: Functional test passed

[1]: https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/yaml/xyz/openbmc_project/Inventory/Item/Chassis.interface.yaml

Change-Id: Ia07c5974ae78314e0812cb09fbc6c738b4853cb9
Signed-off-by: Archana Kakani <archana.kakani@ibm.com>

show more ...

366507c803-Feb-2025 Patrick Williams <patrick@stwcx.xyz>

clang-format: update latest spec and reformat

Copy the latest format file from the docs repository and apply.

Change-Id: I95f756bab7f403af49a94011bbb1fe4e51f985ad
Signed-off-by: Patrick Williams <p

clang-format: update latest spec and reformat

Copy the latest format file from the docs repository and apply.

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

show more ...


/openbmc/pldm/.clang-format
/openbmc/pldm/common/test/mocked_utils.hpp
/openbmc/pldm/common/test/pldm_utils_test.cpp
/openbmc/pldm/common/transport.cpp
/openbmc/pldm/common/utils.cpp
/openbmc/pldm/common/utils.hpp
/openbmc/pldm/fw-update/activation.cpp
/openbmc/pldm/fw-update/activation.hpp
/openbmc/pldm/fw-update/update_manager.hpp
/openbmc/pldm/host-bmc/dbus/custom_dbus.cpp
/openbmc/pldm/host-bmc/dbus_to_terminus_effecters.cpp
/openbmc/pldm/host-bmc/host_pdr_handler.hpp
base.hpp
bios_attribute.hpp
bios_enum_attribute.hpp
bios_integer_attribute.hpp
bios_string_attribute.hpp
bios_table.cpp
bios_table.hpp
fru.cpp
fru.hpp
fru_parser.hpp
pdr.hpp
pdr_utils.cpp
pdr_utils.hpp
platform.hpp
platform_numeric_effecter.hpp
/openbmc/pldm/meson.build
/openbmc/pldm/meson.options
/openbmc/pldm/oem/ampere/event/cper.hpp
/openbmc/pldm/oem/ampere/event/meson.build
/openbmc/pldm/oem/ampere/event/oem_event_manager.cpp
/openbmc/pldm/oem/ampere/event/oem_event_manager.hpp
/openbmc/pldm/oem/ampere/meson.build
/openbmc/pldm/oem/ampere/oem_ampere.hpp
/openbmc/pldm/oem/ibm/configurations/fileTable.json
/openbmc/pldm/oem/ibm/libpldmresponder/collect_slot_vpd.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/collect_slot_vpd.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_by_type.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_by_type.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/utils.hpp
/openbmc/pldm/platform-mc/dbus_impl_fru.cpp
/openbmc/pldm/platform-mc/dbus_impl_fru.hpp
/openbmc/pldm/platform-mc/manager.cpp
/openbmc/pldm/platform-mc/manager.hpp
/openbmc/pldm/platform-mc/numeric_sensor.cpp
/openbmc/pldm/platform-mc/platform_manager.cpp
/openbmc/pldm/platform-mc/platform_manager.hpp
/openbmc/pldm/platform-mc/sensor_manager.cpp
/openbmc/pldm/platform-mc/terminus.cpp
/openbmc/pldm/platform-mc/terminus.hpp
/openbmc/pldm/platform-mc/terminus_manager.cpp
/openbmc/pldm/platform-mc/terminus_manager.hpp
/openbmc/pldm/platform-mc/test/meson.build
/openbmc/pldm/pldmd/dbus_impl_pdr.cpp
/openbmc/pldm/pldmd/pldmd.cpp
/openbmc/pldm/pldmtool/pldm_bios_cmd.cpp
/openbmc/pldm/pldmtool/pldm_fru_cmd.cpp
/openbmc/pldm/requester/handler.hpp
/openbmc/pldm/requester/mctp_endpoint_discovery.hpp
/openbmc/pldm/requester/test/handler_test.cpp
7c14fc4717-Dec-2024 Jayanth Othayoth <ojayanth@gmail.com>

clang-tidy: Replace NULL with nullptr

Replaced all instances of NULL with nullptr to improve type safety
and clarity, as nullptr is the modern C++ standard for null pointers.

Tested: Build verified

clang-tidy: Replace NULL with nullptr

Replaced all instances of NULL with nullptr to improve type safety
and clarity, as nullptr is the modern C++ standard for null pointers.

Tested: Build verified

Change-Id: If9e6c34c48821a7cf8577a2166727ce7db06fadc
Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>

show more ...

0ce01d7818-Dec-2024 Patrick Williams <patrick@stwcx.xyz>

clang-format: re-format for clang-19

clang-format-19 isn't compatible with the clang-format-18 output, so we
need to reformat the code with the latest version. A few parameters
in clang-tidy have b

clang-format: re-format for clang-19

clang-format-19 isn't compatible with the clang-format-18 output, so we
need to reformat the code with the latest version. A few parameters
in clang-tidy have been deprecated, so adjust the style file
accordingly.

See Ie2f6eb3b043f2d655c9df806815afd7971fd0947 for updated style.
See I88192b41ab7a95599a90915013579608af7bc56f for clang-19 enablement.

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

show more ...


/openbmc/pldm/.clang-format
/openbmc/pldm/OWNERS
/openbmc/pldm/common/types.hpp
/openbmc/pldm/fw-update/device_updater.cpp
test/libpldmresponder_bios_test.cpp
/openbmc/pldm/meson.build
/openbmc/pldm/meson.options
/openbmc/pldm/oem/ampere/event/cper.cpp
/openbmc/pldm/oem/ampere/event/cper.hpp
/openbmc/pldm/oem/ampere/event/meson.build
/openbmc/pldm/oem/ampere/event/oem_event_manager.cpp
/openbmc/pldm/oem/ampere/event/oem_event_manager.hpp
/openbmc/pldm/oem/ampere/oem_ampere.hpp
/openbmc/pldm/oem/ibm/configurations/bios/bios_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/com.ibm.Hardware.Chassis.Model.Bonnell/bios_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/com.ibm.Hardware.Chassis.Model.Everest/bios_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/com.ibm.Hardware.Chassis.Model.Rainier1S4U/bios_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/com.ibm.Hardware.Chassis.Model.Rainier2U/bios_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/com.ibm.Hardware.Chassis.Model.Rainier4U/bios_attrs.json
/openbmc/pldm/oem/ibm/configurations/fileTable.json
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_progress_src.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_progress_src.hpp
/openbmc/pldm/platform-mc/event_manager.cpp
/openbmc/pldm/platform-mc/event_manager.hpp
/openbmc/pldm/platform-mc/manager.hpp
/openbmc/pldm/platform-mc/terminus.hpp
/openbmc/pldm/platform-mc/terminus_manager.cpp
/openbmc/pldm/platform-mc/terminus_manager.hpp
/openbmc/pldm/platform-mc/test/terminus_manager_test.cpp
/openbmc/pldm/pldmtool/pldm_base_cmd.cpp
/openbmc/pldm/requester/mctp_endpoint_discovery.cpp
/openbmc/pldm/requester/mctp_endpoint_discovery.hpp
/openbmc/pldm/subprojects/libcper.wrap
a743e38426-Oct-2024 Chau Ly <chaul@amperecomputing.com>

oem-ampere: eventManager: Handle `BootProgress` sensor event

Add Ampere OEM code to handle the `sensorEvent` for PLDM `BootProgress`
sensor. In Ampere system, the SOC termini will have the TID 1 or

oem-ampere: eventManager: Handle `BootProgress` sensor event

Add Ampere OEM code to handle the `sensorEvent` for PLDM `BootProgress`
sensor. In Ampere system, the SOC termini will have the TID 1 or 2. The
Ampere OEM EventManager will check the terminus TID to confirm about the
terminus type. Base on the value of `BootProgress` sensor, the OEM code
will add the Redfish Log to report the boot progress of Ampere SoC.

Tested:
1. Power on the host.
2. Check the Redfish SEL log.

Signed-off-by: Chau Ly <chaul@amperecomputing.com>
Signed-off-by: Thu Nguyen <thu@os.amperecomputing.com>
Change-Id: Icc51537ef17ee8eb4b5b571eafeea7b5d7763cbe

show more ...


/openbmc/pldm/configurations/pdr/com.ibm.Hardware.Chassis.Model.Bonnell/11.json
platform.hpp
/openbmc/pldm/meson.build
/openbmc/pldm/meson.options
/openbmc/pldm/oem/ampere/event/meson.build
/openbmc/pldm/oem/ampere/event/oem_event_manager.cpp
/openbmc/pldm/oem/ampere/event/oem_event_manager.hpp
/openbmc/pldm/oem/ampere/meson.build
/openbmc/pldm/oem/ampere/oem_ampere.hpp
/openbmc/pldm/oem/ibm/configurations/bios/bios_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/com.ibm.Hardware.Chassis.Model.Bonnell/bios_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/com.ibm.Hardware.Chassis.Model.Everest/bios_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/com.ibm.Hardware.Chassis.Model.Rainier1S4U/bios_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/com.ibm.Hardware.Chassis.Model.Rainier2U/bios_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/com.ibm.Hardware.Chassis.Model.Rainier4U/bios_attrs.json
/openbmc/pldm/oem/ibm/libpldmresponder/fru_oem_ibm.cpp
/openbmc/pldm/platform-mc/event_manager.cpp
/openbmc/pldm/platform-mc/event_manager.hpp
/openbmc/pldm/platform-mc/manager.cpp
/openbmc/pldm/platform-mc/manager.hpp
/openbmc/pldm/platform-mc/numeric_sensor.cpp
/openbmc/pldm/platform-mc/numeric_sensor.hpp
/openbmc/pldm/platform-mc/platform_manager.cpp
/openbmc/pldm/platform-mc/sensor_manager.cpp
/openbmc/pldm/platform-mc/terminus.cpp
/openbmc/pldm/platform-mc/terminus.hpp
/openbmc/pldm/platform-mc/terminus_manager.cpp
/openbmc/pldm/platform-mc/test/event_manager_test.cpp
/openbmc/pldm/platform-mc/test/mock_event_manager.hpp
/openbmc/pldm/platform-mc/test/platform_manager_test.cpp
/openbmc/pldm/platform-mc/test/terminus_test.cpp
/openbmc/pldm/pldmd/pldmd.cpp
77e6fe7a06-Aug-2024 Gilbert Chen <gilbertc@nvidia.com>

platform-mc: Added EventManager

Added eventManager to handle sensor event class(00h) which is defined in
table 11 of DSP0248 v1.3.0. In this commit, the eventManager supports to
receive event asynch

platform-mc: Added EventManager

Added eventManager to handle sensor event class(00h) which is defined in
table 11 of DSP0248 v1.3.0. In this commit, the eventManager supports to
receive event asynchronously. The commit will also log the Ipmitool SEL
log and Redfish log for PLDM sensor event messages.

Change-Id: I1b337ccae454067841ffbbd8754631216a995542
Signed-off-by: Thu Nguyen <thu@os.amperecomputing.com>
Signed-off-by: Gilbert Chen <gilbertc@nvidia.com>

show more ...

a31ceb9121-Jul-2021 Manojkiran Eda <manojkiran.eda@gmail.com>

oem_ibm: Add Slot enable infrastructure in BMC

With this commit PDRs are created for each of these
PCIe slots and adapters which have a corresponding
entry in the entity associate map. The sensor/ef

oem_ibm: Add Slot enable infrastructure in BMC

With this commit PDRs are created for each of these
PCIe slots and adapters which have a corresponding
entry in the entity associate map. The sensor/effector
states are monitored and accordingly D-Bus calls are
sent for enabling a slot, process property change
of a PCIe slot, etc.

Tested By: SIMICS power on/off and reset reload.

Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>
Change-Id: I51b79b75c909ddf2cc29872fec6aa01c2d56b418

show more ...

40d4387c07-Sep-2024 Andrew Jeffery <andrew@codeconstruct.com.au>

pldm: Move off get_fru_record_by_option_check()

Generated with:

```
$ ./subprojects/libpldm/scripts/apply-renames ./subprojects/libpldm/evolutions/v0.9.1/get_fru_record_by_option_check.yaml
```

Ch

pldm: Move off get_fru_record_by_option_check()

Generated with:

```
$ ./subprojects/libpldm/scripts/apply-renames ./subprojects/libpldm/evolutions/v0.9.1/get_fru_record_by_option_check.yaml
```

Change-Id: I9b0f6748e2007bfa4d0b2db244bfd5e7444271d0
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>

show more ...

b3b84b4923-Aug-2024 Pavithra Barithaya <pavithrabarithaya07@gmail.com>

clang-tidy: Enable modernize-deprecated-headers check

Some headers from C library were deprecated in C++ and are no
longer welcome in C++ codebases. Some have no effect in C++ [1].

[1]: https://rel

clang-tidy: Enable modernize-deprecated-headers check

Some headers from C library were deprecated in C++ and are no
longer welcome in C++ codebases. Some have no effect in C++ [1].

[1]: https://releases.llvm.org/13.0.1/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-deprecated-headers.html

Change-Id: Ia3b1df10175e2e661c8fffb82e357c9db81b2e9c
Signed-off-by: Pavithra Barithaya <pavithrabarithaya07@gmail.com>

show more ...

51d66b5906-Aug-2024 Thu Nguyen <thu@os.amperecomputing.com>

platform-mc: Set the local terminus as event receiver

Send `SetEventReceiver` to the discoveried terminus with the
configurable local EID to set the local terminus as event receiver.
Before send `Se

platform-mc: Set the local terminus as event receiver

Send `SetEventReceiver` to the discoveried terminus with the
configurable local EID to set the local terminus as event receiver.
Before send `SetEventReceiver` the local terminus also send
`EventMessageSupported` to get the `synchronyConfigurationSupported`.
The `eventMessageGlobalEnable` and `heartbeatTimer` options in the
`SetEventReceiver` command will depend on the responded
`synchronyConfigurationSupported`.

Signed-off-by: Thu Nguyen <thu@os.amperecomputing.com>
Signed-off-by: Gilbert Chen <gilbertc@nvidia.com>
Change-Id: Ia798c1cd5d946ac519933bca60620e970fe10b0a

show more ...

90f28d7b26-Aug-2024 Thu Nguyen <thu@os.amperecomputing.com>

Rename dbus_to_host_effecter* to dbus_to_terminus_effecter*

Some `dbus_to_host_effecter*` files still are not changed to
`dbus_to_terminus_effecter*` in commit `a34a64b: Support numeric
effecters in

Rename dbus_to_host_effecter* to dbus_to_terminus_effecter*

Some `dbus_to_host_effecter*` files still are not changed to
`dbus_to_terminus_effecter*` in commit `a34a64b: Support numeric
effecters in dbus-to-host-effecter`. Rename those files.

Signed-off-by: Thu Nguyen <thu@os.amperecomputing.com>
Change-Id: I923083c5b1bda7b63969b28598189721a42899ad

show more ...

a34a64bb30-Mar-2022 Thu Nguyen <thu@os.amperecomputing.com>

Support numeric effecters in dbus-to-host-effecter

Adds support of the numeric effecter PDR (section `28.11 Numeric
Effecter PDR` DSP0248 V1.3.0) type in dbus-to-host-effecter handler.
This handler

Support numeric effecters in dbus-to-host-effecter

Adds support of the numeric effecter PDR (section `28.11 Numeric
Effecter PDR` DSP0248 V1.3.0) type in dbus-to-host-effecter handler.
This handler will be applied for all PLDM termini but not only host.
The setting for one numeric effecter of one device can be:
{
"mctp_eid": 20,
"effecter_info": {
"effecterPdrType": 9,
"effecterID": 2,
"entityType": 32903,
"entityInstance": 2,
"containerID": 2,
"compositeEffecterCount": 1,
"checkHostState": false
},
"effecters": [
{
"dbus_info": {
"object_path": "/xyz/openbmc_project/sensors/power/A",
"interface": "xyz.openbmc_project.Sensor.Value",
"property_name": "Value",
"property_type": "double"
},
"effecterDataSize": 5,
"resolution": 1,
"offset": 0,
"unitModifier": 0
}
]
}

Where:
+ effecterPdrType to difference state/numeric effecter type. Default
is state effecter.
+ effecterID should be effecter ID and should not empty.
+ checkHostState can be set to false to bypass checking host state.
+ effecterDataSize, resolution, offset, unitModifier are from numeric
effecter PDR (section `28.11 Numeric Effecter PDR` DSP0248 V1.3.0)

Signed-off-by: Thu Nguyen <thu@os.amperecomputing.com>
Change-Id: I438d7f204643edd4066e8a6ba28d53a97503fc4b

show more ...

3012b63222-Aug-2024 Manojkiran Eda <manojkiran.eda@gmail.com>

Format meson files with meson.format

Meson 1.5.0 introduced a new feature to format all the meson
files. Formatting all the meson files is now as simple as running
`meson format -i -r` command in th

Format meson files with meson.format

Meson 1.5.0 introduced a new feature to format all the meson
files. Formatting all the meson files is now as simple as running
`meson format -i -r` command in the repository root folder.

more details : https://mesonbuild.com/Commands.html#format

Change-Id: I9c5468cc502ae78b7a055e2de2a10296930cb9ec
Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>

show more ...

16c2a0a016-Aug-2024 Patrick Williams <patrick@stwcx.xyz>

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda forma

clang-format: re-format for clang-18

clang-format-18 isn't compatible with the clang-format-17 output, so we
need to reformat the code with the latest version. The way clang-18
handles lambda formatting also changed, so we have made changes to the
organization default style format to better handle lambda formatting.

See I5e08687e696dd240402a2780158664b7113def0e for updated style.
See Iea0776aaa7edd483fa395e23de25ebf5a6288f71 for clang-18 enablement.

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

show more ...


/openbmc/pldm/.clang-format
/openbmc/pldm/common/flight_recorder.hpp
/openbmc/pldm/common/test/mocked_utils.hpp
/openbmc/pldm/common/test/pldm_utils_test.cpp
/openbmc/pldm/common/transport.cpp
/openbmc/pldm/common/utils.cpp
/openbmc/pldm/common/utils.hpp
/openbmc/pldm/fw-update/device_updater.cpp
/openbmc/pldm/fw-update/device_updater.hpp
/openbmc/pldm/fw-update/inventory_manager.cpp
/openbmc/pldm/fw-update/inventory_manager.hpp
/openbmc/pldm/fw-update/package_parser.cpp
/openbmc/pldm/fw-update/package_parser.hpp
/openbmc/pldm/fw-update/update_manager.hpp
/openbmc/pldm/fw-update/watch.cpp
/openbmc/pldm/host-bmc/dbus_to_event_handler.cpp
/openbmc/pldm/host-bmc/dbus_to_host_effecters.cpp
/openbmc/pldm/host-bmc/dbus_to_host_effecters.hpp
/openbmc/pldm/host-bmc/host_condition.hpp
/openbmc/pldm/host-bmc/host_pdr_handler.cpp
/openbmc/pldm/host-bmc/host_pdr_handler.hpp
/openbmc/pldm/host-bmc/utils.cpp
base.hpp
bios.cpp
bios_attribute.cpp
bios_config.cpp
bios_config.hpp
bios_enum_attribute.cpp
bios_integer_attribute.cpp
bios_string_attribute.cpp
bios_table.cpp
bios_table.hpp
fru.cpp
fru.hpp
fru_parser.cpp
pdr.cpp
pdr_numeric_effecter.hpp
pdr_state_effecter.hpp
pdr_state_sensor.hpp
pdr_utils.cpp
pdr_utils.hpp
platform.cpp
platform.hpp
platform_config.cpp
platform_config.hpp
platform_numeric_effecter.hpp
platform_state_effecter.hpp
test/libpldmresponder_base_test.cpp
test/libpldmresponder_bios_config_test.cpp
test/libpldmresponder_fru_test.cpp
test/libpldmresponder_pdr_effecter_test.cpp
test/libpldmresponder_platform_test.cpp
test/libpldmresponder_systemspecific_bios_test.cpp
/openbmc/pldm/oem/ibm/configurations/fileTable.json
/openbmc/pldm/oem/ibm/host-bmc/host_lamp_test.cpp
/openbmc/pldm/oem/ibm/host-bmc/host_lamp_test.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_by_type.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_by_type.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_cert.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_cert.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_dump.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_lid.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_pcie.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_pcie.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_pel.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_progress_src.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_vpd.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_vpd.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/fru_oem_ibm.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/inband_code_update.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/oem_ibm_handler.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/oem_ibm_handler.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/platform_oem_ibm.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/utils.cpp
/openbmc/pldm/oem/ibm/requester/dbus_to_file_handler.cpp
/openbmc/pldm/oem/ibm/requester/dbus_to_file_handler.hpp
/openbmc/pldm/oem/ibm/test/libpldmresponder_fileio_test.cpp
/openbmc/pldm/oem/ibm/test/libpldmresponder_oem_platform_test.cpp
/openbmc/pldm/platform-mc/numeric_sensor.cpp
/openbmc/pldm/platform-mc/numeric_sensor.hpp
/openbmc/pldm/platform-mc/platform_manager.cpp
/openbmc/pldm/platform-mc/platform_manager.hpp
/openbmc/pldm/platform-mc/terminus.cpp
/openbmc/pldm/platform-mc/terminus.hpp
/openbmc/pldm/platform-mc/terminus_manager.cpp
/openbmc/pldm/platform-mc/terminus_manager.hpp
/openbmc/pldm/platform-mc/test/mock_terminus_manager.hpp
/openbmc/pldm/platform-mc/test/terminus_manager_test.cpp
/openbmc/pldm/platform-mc/test/terminus_test.cpp
/openbmc/pldm/pldmd/dbus_impl_pdr.cpp
/openbmc/pldm/pldmd/dbus_impl_pdr.hpp
/openbmc/pldm/pldmd/dbus_impl_requester.hpp
/openbmc/pldm/pldmd/handler.hpp
/openbmc/pldm/pldmd/oem_ibm.hpp
/openbmc/pldm/pldmd/pldmd.cpp
/openbmc/pldm/pldmtool/oem/ibm/pldm_oem_ibm.cpp
/openbmc/pldm/pldmtool/pldm_base_cmd.cpp
/openbmc/pldm/pldmtool/pldm_bios_cmd.cpp
/openbmc/pldm/pldmtool/pldm_cmd_helper.cpp
/openbmc/pldm/pldmtool/pldm_cmd_helper.hpp
/openbmc/pldm/pldmtool/pldm_fru_cmd.cpp
/openbmc/pldm/pldmtool/pldm_fw_update_cmd.cpp
/openbmc/pldm/pldmtool/pldm_platform_cmd.cpp
/openbmc/pldm/pldmtool/pldmtool.cpp
/openbmc/pldm/requester/handler.hpp
/openbmc/pldm/requester/mctp_endpoint_discovery.cpp
/openbmc/pldm/requester/request.hpp
/openbmc/pldm/requester/test/handler_test.cpp
/openbmc/pldm/requester/test/mctp_endpoint_discovery_test.cpp
/openbmc/pldm/softoff/softoff.cpp
/openbmc/pldm/utilities/requester/set_state_effecter.cpp
/openbmc/pldm/utilities/requester/set_state_effecter_async.cpp
0eb5bcef01-Aug-2024 Andrew Jeffery <andrew@codeconstruct.com.au>

pldm: Move off pldm_bios_table_append_pad_checksum_check()

Generated with:

```
$ CLANG_VERSION=18 ./subprojects/libpldm/scripts/apply-renames ./subprojects/libpldm/evolutions/current/pldm_bios_tabl

pldm: Move off pldm_bios_table_append_pad_checksum_check()

Generated with:

```
$ CLANG_VERSION=18 ./subprojects/libpldm/scripts/apply-renames ./subprojects/libpldm/evolutions/current/pldm_bios_table_append_pad_checksum_check.yaml
```

Change-Id: If9fd3e8e96a7889051b879e292e67223f2757fc3
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>

show more ...

a5f2fcdb01-Aug-2024 Andrew Jeffery <andrew@codeconstruct.com.au>

pldm: Move off pldm_bios_table_attr_value_entry_encode_integer_check()

Generated with:

```
$ CLANG_VERSION=18 ./subprojects/libpldm/scripts/apply-renames ./subprojects/libpldm/evolutions/current/pl

pldm: Move off pldm_bios_table_attr_value_entry_encode_integer_check()

Generated with:

```
$ CLANG_VERSION=18 ./subprojects/libpldm/scripts/apply-renames ./subprojects/libpldm/evolutions/current/pldm_bios_table_attr_value_entry_encode_integer_check.yaml
```

Change-Id: Ifdae4ebf848a43d9bd997292b35426b26dbf558c
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>

show more ...

25d3878901-Aug-2024 Andrew Jeffery <andrew@codeconstruct.com.au>

pldm: Move off pldm_bios_table_attr_value_entry_encode_string_check()

Generated with:

```
$ CLANG_VERSION=18 ./subprojects/libpldm/scripts/apply-renames ./subprojects/libpldm/evolutions/current/pld

pldm: Move off pldm_bios_table_attr_value_entry_encode_string_check()

Generated with:

```
$ CLANG_VERSION=18 ./subprojects/libpldm/scripts/apply-renames ./subprojects/libpldm/evolutions/current/pldm_bios_table_attr_value_entry_encode_string_check.yaml
```

Change-Id: If3454dc8a7b2036c035d49b1e6d9ba1b23547138
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>

show more ...

4663aaed01-Aug-2024 Andrew Jeffery <andrew@codeconstruct.com.au>

pldm: Move off pldm_bios_table_attr_value_entry_encode_enum_check()

Generated with:

```
$ CLANG_VERSION=18 ./subprojects/libpldm/scripts/apply-renames ./subprojects/libpldm/evolutions/current/pldm_

pldm: Move off pldm_bios_table_attr_value_entry_encode_enum_check()

Generated with:

```
$ CLANG_VERSION=18 ./subprojects/libpldm/scripts/apply-renames ./subprojects/libpldm/evolutions/current/pldm_bios_table_attr_value_entry_encode_enum_check.yaml
```

Change-Id: Id989540d8ad4ea114ee059992be4293254e1ecc2
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>

show more ...

228dae3e01-Aug-2024 Andrew Jeffery <andrew@codeconstruct.com.au>

pldm: Move off pldm_bios_table_attr_entry_integer_encode_check()

Generated with:

```
$ CLANG_VERSION=18 ./subprojects/libpldm/scripts/apply-renames ./subprojects/libpldm/evolutions/current/pldm_bio

pldm: Move off pldm_bios_table_attr_entry_integer_encode_check()

Generated with:

```
$ CLANG_VERSION=18 ./subprojects/libpldm/scripts/apply-renames ./subprojects/libpldm/evolutions/current/pldm_bios_table_attr_entry_integer_encode_check.yaml
```

Change-Id: I1b5616570862b7069028fb3e4481a5fcd2db1a57
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>

show more ...

12345678910>>...15