History log of /openbmc/pldm/common/ (Results 51 – 75 of 88)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
47266d6f27-Jun-2023 Andrew Jeffery <andrew@aj.id.au>

bios_utils: BIOSTableIter: Failure to create iter throws exception

It's possible that the heap allocation invoked by
pldm_bios_table_iter_create() fails. The existing behaviour is to
assert() in the

bios_utils: BIOSTableIter: Failure to create iter throws exception

It's possible that the heap allocation invoked by
pldm_bios_table_iter_create() fails. The existing behaviour is to
assert() in the implementation that it hadn't failed, but that will be
changed to instead have the API return NULL.

Check for the NULL condition with the understanding that it may occur in
the future, and if observed, throw an exception to uphold the existing
assumptions in the code.

Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Change-Id: I20016e8db4c814017306cc68a536a9c232c74e0e

show more ...

4779227413-Jun-2023 Andrew Jeffery <andrew@aj.id.au>

pldm: Include config.h via compiler argument

This removes any ambiguity about which config.h is being included.
Subprojects such as libpldm and phosphor-logging also generate config.h
files, and the

pldm: Include config.h via compiler argument

This removes any ambiguity about which config.h is being included.
Subprojects such as libpldm and phosphor-logging also generate config.h
files, and these are exposed in the include path.

Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Change-Id: I3e0ccd6339f088380ffa29d41167b07aefc7dd16

show more ...

9138c20919-May-2023 vkaverap@in.ibm.com <vkaverap@in.ibm.com>

PLDM : Change the dbus timeout to 5 seconds

Dbus timeout value for every dbus call in PLDM is set to 5 seconds
instead of default 25 seconds so that all dbus calls that expect a
reply exists after 5

PLDM : Change the dbus timeout to 5 seconds

Dbus timeout value for every dbus call in PLDM is set to 5 seconds
instead of default 25 seconds so that all dbus calls that expect a
reply exists after 5 seconds if there is no response from the client.
While BMC is still waiting for a response on any dbus calls it is
possible that host can timeout and return an error.
Another reason is that memory address from where BMC would read data
sent by host may get deallocated after 20 seconds and it is possible
for this to happen even before BMC has read the data. This has lead
to DMA issues.

Tested by adding a sleep for 10 seconds inside main function of
phospher-host-postd and executed get dbus property on snoopd
interface from pldm. PLDM dbus call timed out after 5 seconds.

Change-Id: I1aa1b4ad7fceff2224a3ccc3bcf6abd5705963bc
Signed-off-by: Varsha Kaverappa <vkaverap@in.ibm.com>

show more ...


utils.cpp
utils.hpp
/openbmc/pldm/fw-update/device_updater.cpp
/openbmc/pldm/fw-update/inventory_manager.cpp
/openbmc/pldm/fw-update/inventory_manager.hpp
/openbmc/pldm/fw-update/manager.hpp
/openbmc/pldm/fw-update/test/device_updater_test.cpp
/openbmc/pldm/fw-update/test/inventory_manager_test.cpp
/openbmc/pldm/fw-update/test/meson.build
/openbmc/pldm/fw-update/update_manager.hpp
/openbmc/pldm/host-bmc/dbus_to_event_handler.cpp
/openbmc/pldm/host-bmc/dbus_to_event_handler.hpp
/openbmc/pldm/host-bmc/dbus_to_host_effecters.cpp
/openbmc/pldm/host-bmc/dbus_to_host_effecters.hpp
/openbmc/pldm/host-bmc/host_pdr_handler.cpp
/openbmc/pldm/host-bmc/host_pdr_handler.hpp
/openbmc/pldm/host-bmc/test/dbus_to_host_effecter_test.cpp
/openbmc/pldm/host-bmc/test/meson.build
/openbmc/pldm/libpldmresponder/base.cpp
/openbmc/pldm/libpldmresponder/base.hpp
/openbmc/pldm/libpldmresponder/bios.cpp
/openbmc/pldm/libpldmresponder/bios.hpp
/openbmc/pldm/libpldmresponder/bios_config.cpp
/openbmc/pldm/libpldmresponder/bios_config.hpp
/openbmc/pldm/libpldmresponder/fru.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_base_test.cpp
/openbmc/pldm/libpldmresponder/test/meson.build
/openbmc/pldm/meson.build
/openbmc/pldm/meson_options.txt
/openbmc/pldm/oem/ibm/configurations/bios/enum_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/string_attrs.json
/openbmc/pldm/oem/ibm/configurations/fru/Motherboard_UTIL.json
/openbmc/pldm/oem/ibm/libpldmresponder/file_io.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_dump.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_pel.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/platform_oem_ibm.hpp
/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_oem_platform_test.cpp
/openbmc/pldm/pldmd/dbus_impl_requester.hpp
/openbmc/pldm/pldmd/instance_id.hpp
/openbmc/pldm/pldmd/pldmd.cpp
/openbmc/pldm/pldmtool/pldm_cmd_helper.cpp
/openbmc/pldm/pldmtool/pldmtool.cpp
/openbmc/pldm/requester/handler.hpp
/openbmc/pldm/requester/mctp_endpoint_discovery.cpp
/openbmc/pldm/requester/test/handler_test.cpp
/openbmc/pldm/requester/test/meson.build
/openbmc/pldm/softoff/softoff.cpp
/openbmc/pldm/test/meson.build
/openbmc/pldm/test/test_instance_id.hpp
6da4f91b10-May-2023 Patrick Williams <patrick@stwcx.xyz>

clang-format: copy latest and re-format

clang-format-16 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest

clang-format: copy latest and re-format

clang-format-16 has some backwards incompatible changes that require
additional settings for best compatibility and re-running the formatter.
Copy the latest .clang-format from the docs repository and reformat the
repository.

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

show more ...


/openbmc/pldm/.clang-format
flight_recorder.hpp
utils.cpp
utils.hpp
/openbmc/pldm/fw-update/activation.hpp
/openbmc/pldm/fw-update/device_updater.cpp
/openbmc/pldm/fw-update/device_updater.hpp
/openbmc/pldm/fw-update/package_parser.cpp
/openbmc/pldm/fw-update/test/package_parser_test.cpp
/openbmc/pldm/fw-update/update_manager.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_pdr_handler.cpp
/openbmc/pldm/host-bmc/test/dbus_to_host_effecter_test.cpp
/openbmc/pldm/libpldmresponder/base.cpp
/openbmc/pldm/libpldmresponder/base.hpp
/openbmc/pldm/libpldmresponder/bios.cpp
/openbmc/pldm/libpldmresponder/bios_config.cpp
/openbmc/pldm/libpldmresponder/bios_config.hpp
/openbmc/pldm/libpldmresponder/bios_enum_attribute.cpp
/openbmc/pldm/libpldmresponder/bios_integer_attribute.cpp
/openbmc/pldm/libpldmresponder/bios_string_attribute.cpp
/openbmc/pldm/libpldmresponder/bios_table.cpp
/openbmc/pldm/libpldmresponder/event_parser.hpp
/openbmc/pldm/libpldmresponder/fru.cpp
/openbmc/pldm/libpldmresponder/fru.hpp
/openbmc/pldm/libpldmresponder/fru_parser.cpp
/openbmc/pldm/libpldmresponder/oem_handler.hpp
/openbmc/pldm/libpldmresponder/pdr.cpp
/openbmc/pldm/libpldmresponder/pdr_numeric_effecter.hpp
/openbmc/pldm/libpldmresponder/pdr_state_effecter.hpp
/openbmc/pldm/libpldmresponder/pdr_state_sensor.hpp
/openbmc/pldm/libpldmresponder/pdr_utils.cpp
/openbmc/pldm/libpldmresponder/pdr_utils.hpp
/openbmc/pldm/libpldmresponder/platform.cpp
/openbmc/pldm/libpldmresponder/platform.hpp
/openbmc/pldm/libpldmresponder/platform_numeric_effecter.hpp
/openbmc/pldm/libpldmresponder/platform_state_effecter.hpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_base_test.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_bios_config_test.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_bios_test.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_pdr_effecter_test.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_platform_test.cpp
/openbmc/pldm/libpldmresponder/test/mocked_bios.hpp
/openbmc/pldm/meson_options.txt
/openbmc/pldm/oem/ibm/configurations/bios/enum_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/integer_attrs.json
/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_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.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_progress_src.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/inband_code_update.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/inband_code_update.hpp
/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.hpp
/openbmc/pldm/oem/ibm/requester/dbus_to_file_handler.cpp
/openbmc/pldm/oem/ibm/test/libpldmresponder_oem_platform_test.cpp
/openbmc/pldm/pldmd/dbus_impl_pdr.cpp
/openbmc/pldm/pldmd/handler.hpp
/openbmc/pldm/pldmd/instance_id.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_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.hpp
/openbmc/pldm/requester/request.hpp
/openbmc/pldm/requester/test/request_test.cpp
/openbmc/pldm/softoff/softoff.cpp
/openbmc/pldm/test/pldmd_registration_test.cpp
49cfb13802-Mar-2023 Riya Dixit <riyadixitagra@gmail.com>

PLDM: Implementing Phosphor-Logging/LG2 logging

This commit adds changes in PLDM for implementing
structured LG2 logging, thereby moving away from
std::cout/cerr practice of logging which are
output

PLDM: Implementing Phosphor-Logging/LG2 logging

This commit adds changes in PLDM for implementing
structured LG2 logging, thereby moving away from
std::cout/cerr practice of logging which are
output streams and not logging mechanism.

PLDM now can make use of lg2 features like accurate
CODE LINE Number and CODE_FUNCTION Name and better
detailing in json object values which can be used in
log tracking.

More detailed logging change:
https://gist.github.com/riyadixitagra/c251685c1ba84248181891f7bc282395

Tested:
Ran a power off, on, cycle, and reset-reload.

Change-Id: I0485035f15f278c3fd172f0581b053c1c37f3a5b
Signed-off-by: Riya Dixit <riyadixitagra@gmail.com>

show more ...


/openbmc/pldm/OWNERS
flight_recorder.hpp
test/meson.build
utils.cpp
/openbmc/pldm/configurations/events/stateSensorPdrs.json
/openbmc/pldm/configurations/pdr/11.json
/openbmc/pldm/fw-update/device_updater.cpp
/openbmc/pldm/fw-update/inventory_manager.cpp
/openbmc/pldm/fw-update/package_parser.cpp
/openbmc/pldm/fw-update/test/meson.build
/openbmc/pldm/fw-update/update_manager.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_pdr_handler.cpp
/openbmc/pldm/host-bmc/test/meson.build
/openbmc/pldm/libpldmresponder/base.cpp
/openbmc/pldm/libpldmresponder/base.hpp
/openbmc/pldm/libpldmresponder/bios.cpp
/openbmc/pldm/libpldmresponder/bios_config.cpp
/openbmc/pldm/libpldmresponder/bios_config.hpp
/openbmc/pldm/libpldmresponder/bios_enum_attribute.cpp
/openbmc/pldm/libpldmresponder/bios_integer_attribute.cpp
/openbmc/pldm/libpldmresponder/bios_string_attribute.cpp
/openbmc/pldm/libpldmresponder/event_parser.cpp
/openbmc/pldm/libpldmresponder/fru.cpp
/openbmc/pldm/libpldmresponder/fru_parser.cpp
/openbmc/pldm/libpldmresponder/meson.build
/openbmc/pldm/libpldmresponder/oem_handler.hpp
/openbmc/pldm/libpldmresponder/pdr_numeric_effecter.hpp
/openbmc/pldm/libpldmresponder/pdr_state_effecter.hpp
/openbmc/pldm/libpldmresponder/pdr_state_sensor.hpp
/openbmc/pldm/libpldmresponder/pdr_utils.cpp
/openbmc/pldm/libpldmresponder/pdr_utils.hpp
/openbmc/pldm/libpldmresponder/platform.cpp
/openbmc/pldm/libpldmresponder/platform.hpp
/openbmc/pldm/libpldmresponder/platform_numeric_effecter.hpp
/openbmc/pldm/libpldmresponder/platform_state_effecter.hpp
/openbmc/pldm/libpldmresponder/platform_state_sensor.hpp
/openbmc/pldm/libpldmresponder/test/meson.build
/openbmc/pldm/meson.build
/openbmc/pldm/oem/ibm/configurations/bios/enum_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/integer_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/string_attrs.json
/openbmc/pldm/oem/ibm/configurations/events/oem_ibm_event_state_sensor.json
/openbmc/pldm/oem/ibm/configurations/fileTable.json
/openbmc/pldm/oem/ibm/configurations/fru/Motherboard_PSPD.json
/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_type_cert.cpp
/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_pel.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_progress_src.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_table.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/inband_code_update.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/oem_ibm_handler.cpp
/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/pldmd/pldmd.cpp
/openbmc/pldm/pldmtool/pldm_cmd_helper.hpp
/openbmc/pldm/pldmtool/pldm_fw_update_cmd.cpp
/openbmc/pldm/pldmtool/pldm_platform_cmd.cpp
/openbmc/pldm/requester/handler.hpp
/openbmc/pldm/requester/request.hpp
/openbmc/pldm/requester/test/meson.build
/openbmc/pldm/softoff/main.cpp
/openbmc/pldm/softoff/meson.build
/openbmc/pldm/softoff/softoff.cpp
/openbmc/pldm/subprojects/phosphor-logging.wrap
/openbmc/pldm/tools/fw-update/README.md
/openbmc/pldm/tools/fw-update/metadata-example.json
/openbmc/pldm/tools/fw-update/pldm_fwup_pkg_creator.py
/openbmc/pldm/utilities/meson.build
/openbmc/pldm/utilities/requester/set_state_effecter.cpp
/openbmc/pldm/utilities/requester/set_state_effecter_async.cpp
c453e16421-Dec-2022 George Liu <liuxiwei@inspur.com>

libpldm: Correct reference to libpldm header files

When relying on header files from external libraries, #include<> should
be used instead of #include "" to avoid ambiguity.

Tested: Built pldm succ

libpldm: Correct reference to libpldm header files

When relying on header files from external libraries, #include<> should
be used instead of #include "" to avoid ambiguity.

Tested: Built pldm successfully after enabling ibm-oem

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

show more ...


/openbmc/pldm/.gitignore
/openbmc/pldm/.linter-ignore
/openbmc/pldm/README.md
bios_utils.hpp
test/pldm_utils_test.cpp
utils.cpp
utils.hpp
/openbmc/pldm/configurations/events/stateSensorPdrs.json
/openbmc/pldm/configurations/fru_master.json
/openbmc/pldm/configurations/host/dbus_to_host_effecter.json
/openbmc/pldm/configurations/host/host_frus.json
/openbmc/pldm/configurations/pdr/11.json
/openbmc/pldm/configurations/pdr/4.json
/openbmc/pldm/fw-update/device_updater.cpp
/openbmc/pldm/fw-update/inventory_manager.cpp
/openbmc/pldm/fw-update/inventory_manager.hpp
/openbmc/pldm/fw-update/manager.hpp
/openbmc/pldm/fw-update/package_parser.cpp
/openbmc/pldm/fw-update/package_parser.hpp
/openbmc/pldm/fw-update/test/device_updater_test.cpp
/openbmc/pldm/fw-update/test/inventory_manager_test.cpp
/openbmc/pldm/fw-update/update_manager.hpp
/openbmc/pldm/host-bmc/dbus_to_event_handler.cpp
/openbmc/pldm/host-bmc/dbus_to_event_handler.hpp
/openbmc/pldm/host-bmc/dbus_to_host_effecters.cpp
/openbmc/pldm/host-bmc/host_pdr_handler.cpp
/openbmc/pldm/host-bmc/host_pdr_handler.hpp
/openbmc/pldm/host-bmc/test/host_effecter_jsons/good/dbus_to_host_effecter.json
/openbmc/pldm/libpldmresponder/base.cpp
/openbmc/pldm/libpldmresponder/base.hpp
/openbmc/pldm/libpldmresponder/bios.cpp
/openbmc/pldm/libpldmresponder/bios.hpp
/openbmc/pldm/libpldmresponder/bios_attribute.hpp
/openbmc/pldm/libpldmresponder/bios_config.cpp
/openbmc/pldm/libpldmresponder/bios_config.hpp
/openbmc/pldm/libpldmresponder/bios_table.cpp
/openbmc/pldm/libpldmresponder/bios_table.hpp
/openbmc/pldm/libpldmresponder/examples/bios/enum_attrs.json
/openbmc/pldm/libpldmresponder/examples/bios/integer_attrs.json
/openbmc/pldm/libpldmresponder/examples/bios/string_attrs.json
/openbmc/pldm/libpldmresponder/examples/effecter/dbus_to_host_effecter.json
/openbmc/pldm/libpldmresponder/examples/events/event_state_sensor.json
/openbmc/pldm/libpldmresponder/examples/fru/Board_General.json
/openbmc/pldm/libpldmresponder/examples/fru/Board_VINI.json
/openbmc/pldm/libpldmresponder/examples/fru/Cpu_General.json
/openbmc/pldm/libpldmresponder/examples/fru/FRU_Master.json
/openbmc/pldm/libpldmresponder/examples/fru/host_frus.json
/openbmc/pldm/libpldmresponder/examples/pdr/effecter_pdr.json
/openbmc/pldm/libpldmresponder/examples/pdr/sensor_pdr.json
/openbmc/pldm/libpldmresponder/fru.cpp
/openbmc/pldm/libpldmresponder/fru.hpp
/openbmc/pldm/libpldmresponder/pdr_numeric_effecter.hpp
/openbmc/pldm/libpldmresponder/pdr_state_effecter.hpp
/openbmc/pldm/libpldmresponder/pdr_state_sensor.hpp
/openbmc/pldm/libpldmresponder/pdr_utils.cpp
/openbmc/pldm/libpldmresponder/pdr_utils.hpp
/openbmc/pldm/libpldmresponder/platform.cpp
/openbmc/pldm/libpldmresponder/platform.hpp
/openbmc/pldm/libpldmresponder/platform_numeric_effecter.hpp
/openbmc/pldm/libpldmresponder/platform_state_effecter.hpp
/openbmc/pldm/libpldmresponder/platform_state_sensor.hpp
/openbmc/pldm/libpldmresponder/test/bios_jsons/enum_attrs.json
/openbmc/pldm/libpldmresponder/test/bios_jsons/integer_attrs.json
/openbmc/pldm/libpldmresponder/test/bios_jsons/string_attrs.json
/openbmc/pldm/libpldmresponder/test/event_jsons/good/event_state_sensor.json
/openbmc/pldm/libpldmresponder/test/fru_jsons/fru_master/fru_master.json
/openbmc/pldm/libpldmresponder/test/fru_jsons/good/Board_General.json
/openbmc/pldm/libpldmresponder/test/fru_jsons/good/Board_VINI.json
/openbmc/pldm/libpldmresponder/test/fru_jsons/good/Cpu_General.json
/openbmc/pldm/libpldmresponder/test/fru_jsons/good/FRU_Master.json
/openbmc/pldm/libpldmresponder/test/libpldmresponder_base_test.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_bios_config_test.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_bios_test.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_pdr_effecter_test.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_pdr_sensor_test.cpp
/openbmc/pldm/libpldmresponder/test/meson.build
/openbmc/pldm/libpldmresponder/test/pdr_jsons/state_effecter/good/effecter_pdr.json
/openbmc/pldm/libpldmresponder/test/pdr_jsons/state_sensor/good/sensor_pdr.json
/openbmc/pldm/meson.build
/openbmc/pldm/meson_options.txt
/openbmc/pldm/oem/ibm/configurations/bios/enum_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/integer_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/string_attrs.json
/openbmc/pldm/oem/ibm/configurations/events/oem_ibm_event_state_sensor.json
/openbmc/pldm/oem/ibm/configurations/fileTable.json
/openbmc/pldm/oem/ibm/configurations/fru/Battery_LocationCode.json
/openbmc/pldm/oem/ibm/configurations/fru/Bmc_LocationCode.json
/openbmc/pldm/oem/ibm/configurations/fru/Bmc_VINI.json
/openbmc/pldm/oem/ibm/configurations/fru/Bmc_VR10.json
/openbmc/pldm/oem/ibm/configurations/fru/Bmc_VW10.json
/openbmc/pldm/oem/ibm/configurations/fru/Chassis_LocationCode.json
/openbmc/pldm/oem/ibm/configurations/fru/Chassis_VCEN.json
/openbmc/pldm/oem/ibm/configurations/fru/Chassis_VINI.json
/openbmc/pldm/oem/ibm/configurations/fru/Connector_LocationCode.json
/openbmc/pldm/oem/ibm/configurations/fru/DiskBackplane_LocationCode.json
/openbmc/pldm/oem/ibm/configurations/fru/DiskBackplane_VINI.json
/openbmc/pldm/oem/ibm/configurations/fru/Fan_LocationCode.json
/openbmc/pldm/oem/ibm/configurations/fru/Fan_VINI.json
/openbmc/pldm/oem/ibm/configurations/fru/Motherboard_DINF.json
/openbmc/pldm/oem/ibm/configurations/fru/Motherboard_LXR0.json
/openbmc/pldm/oem/ibm/configurations/fru/Motherboard_LocationCode.json
/openbmc/pldm/oem/ibm/configurations/fru/Motherboard_VCEN.json
/openbmc/pldm/oem/ibm/configurations/fru/Motherboard_VINI.json
/openbmc/pldm/oem/ibm/configurations/fru/Motherboard_VSYS.json
/openbmc/pldm/oem/ibm/configurations/fru/PCIeDevice_LocationCode.json
/openbmc/pldm/oem/ibm/configurations/fru/PCIeDevice_VINI.json
/openbmc/pldm/oem/ibm/configurations/fru/PCIeSlot_LocationCode.json
/openbmc/pldm/oem/ibm/configurations/fru/Panel_LocationCode.json
/openbmc/pldm/oem/ibm/configurations/fru/Panel_VINI.json
/openbmc/pldm/oem/ibm/configurations/fru/PowerSupply_LocationCode.json
/openbmc/pldm/oem/ibm/configurations/fru/PowerSupply_VINI.json
/openbmc/pldm/oem/ibm/configurations/fru/System_LocationCode.json
/openbmc/pldm/oem/ibm/configurations/fru/System_VSYS.json
/openbmc/pldm/oem/ibm/configurations/fru/Tpm_LocationCode.json
/openbmc/pldm/oem/ibm/configurations/fru/Tpm_VINI.json
/openbmc/pldm/oem/ibm/configurations/fru/Vrm_LocationCode.json
/openbmc/pldm/oem/ibm/configurations/fru/Vrm_VINI.json
/openbmc/pldm/oem/ibm/configurations/fru_master.json
/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_type_cert.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_dump.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_pel.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_table.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_table.hpp
/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/pldmd/dbus_impl_pdr.cpp
/openbmc/pldm/pldmd/dbus_impl_pdr.hpp
/openbmc/pldm/pldmd/handler.hpp
/openbmc/pldm/pldmd/invoker.hpp
/openbmc/pldm/pldmd/pldmd.cpp
/openbmc/pldm/pldmtool/README.md
/openbmc/pldm/pldmtool/oem/ibm/oem_ibm_state_set.hpp
/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/requester/README.md
/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/request_test.cpp
/openbmc/pldm/softoff/softoff.cpp
/openbmc/pldm/softoff/softoff.hpp
/openbmc/pldm/subprojects/libpldm.wrap
/openbmc/pldm/test/pldmd_registration_test.cpp
/openbmc/pldm/tools/fw-update/README.md
/openbmc/pldm/tools/fw-update/metadata-example.json
/openbmc/pldm/tools/fw-update/pldm_fwup_pkg_creator.py
/openbmc/pldm/tools/visualize-pdr/README.md
/openbmc/pldm/tools/visualize-pdr/pldm_visualise_pdrs.py
/openbmc/pldm/utilities/requester/set_state_effecter.cpp
/openbmc/pldm/utilities/requester/set_state_effecter_async.cpp
eefe49bf27-Jun-2022 Sridevi Ramesh <sridevra@in.ibm.com>

Add API to create fru records only for present frus.

This commit builds the fru records only for the present
frus. Any item which is a FRU should by default implement
the Inventory.Item Interface an

Add API to create fru records only for present frus.

This commit builds the fru records only for the present
frus. Any item which is a FRU should by default implement
the Inventory.Item Interface and host the present property.
So, if the present property is not hosted then FRU is absent.

Signed-off-by: Sridevi Ramesh <sridevra@in.ibm.com>
Change-Id: I5534d6cc1a9f7a1b329975cdd5de54110f456f39

show more ...


/openbmc/pldm/README.md
utils.cpp
utils.hpp
/openbmc/pldm/configurations/events/stateSensorPdrs.json
/openbmc/pldm/host-bmc/host_pdr_handler.cpp
/openbmc/pldm/host-bmc/host_pdr_handler.hpp
/openbmc/pldm/libpldm/oem/ibm/libpldm/file_io.h
/openbmc/pldm/libpldm/oem/ibm/libpldm/state_set_oem_ibm.h
/openbmc/pldm/libpldm/platform.c
/openbmc/pldm/libpldmresponder/bios.cpp
/openbmc/pldm/libpldmresponder/fru.cpp
/openbmc/pldm/libpldmresponder/platform.cpp
/openbmc/pldm/libpldmresponder/platform_state_sensor.hpp
/openbmc/pldm/meson.build
/openbmc/pldm/meson_options.txt
/openbmc/pldm/oem/ibm/configurations/fileTable.json
/openbmc/pldm/oem/ibm/configurations/fru/Chassis_VCEN.json
/openbmc/pldm/oem/ibm/configurations/fru/Motherboard_VCEN.json
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_by_type.cpp
/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/inband_code_update.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/platform_oem_ibm.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/service_files/meson.build
/openbmc/pldm/oem/ibm/service_files/pldm-create-phyp-nvram-cksum.service
/openbmc/pldm/oem/ibm/service_files/pldm-create-phyp-nvram.service
/openbmc/pldm/oem/ibm/service_files/scripts/create-NVRAM-cksum-file
/openbmc/pldm/oem/ibm/service_files/scripts/create-NVRAM-file
/openbmc/pldm/oem/ibm/service_files/scripts/meson.build
/openbmc/pldm/pldmd/pldmd.cpp
/openbmc/pldm/pldmd/service_files/pldmd.service
06fca44117-Aug-2022 Manojkiran Eda <manojkiran.eda@gmail.com>

Add missing dependencies

There are multiple places where the dependencies are
explicitly missing & its working as of today because
of the way the code was organised.

The intent behind this commit i

Add missing dependencies

There are multiple places where the dependencies are
explicitly missing & its working as of today because
of the way the code was organised.

The intent behind this commit is add the missing dependencies
explicitly. This commit fixes :
1. common tests depends on header files in common folder, but
it is not added as a dependency, fixing this by adding libpldmutils
as the dependency.
2. fw-update tests depends on header files in common folder as well,
but it is not added as a dependency , fixing this by adding libpldmutils
as the dependency.
3. requester test code includes header files in the pldmd folder, but
that is not added as a dependency as well, fixing this by adding
include_directories and making it a dependency.

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

show more ...

84b790cb22-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: I8e2242adb79be342562c9b7f3d2153dfdf578085

show more ...


/openbmc/pldm/OWNERS
utils.hpp
/openbmc/pldm/fw-update/activation.hpp
/openbmc/pldm/host-bmc/dbus_to_event_handler.cpp
/openbmc/pldm/host-bmc/dbus_to_event_handler.hpp
/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/libpldm/firmware_update.c
/openbmc/pldm/libpldm/firmware_update.h
/openbmc/pldm/libpldm/platform.h
/openbmc/pldm/libpldm/pldm_types.h
/openbmc/pldm/libpldm/tests/libpldm_firmware_update_test.cpp
/openbmc/pldm/libpldm/tests/libpldm_utils_test.cpp
/openbmc/pldm/libpldmresponder/base.cpp
/openbmc/pldm/libpldmresponder/bios.cpp
/openbmc/pldm/libpldmresponder/bios_config.cpp
/openbmc/pldm/libpldmresponder/bios_config.hpp
/openbmc/pldm/libpldmresponder/pdr_numeric_effecter.hpp
/openbmc/pldm/libpldmresponder/platform_numeric_effecter.hpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_base_test.cpp
/openbmc/pldm/oem/ibm/configurations/bios/enum_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/integer_attrs.json
/openbmc/pldm/oem/ibm/libpldm/file_io.c
/openbmc/pldm/oem/ibm/libpldm/file_io.h
/openbmc/pldm/oem/ibm/libpldmresponder/file_io.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/inband_code_update.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/inband_code_update.hpp
/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/test/libpldm_fileio_test.cpp
/openbmc/pldm/oem/ibm/test/libpldmresponder_oem_platform_test.cpp
/openbmc/pldm/pldmd/dbus_impl_pdr.hpp
/openbmc/pldm/pldmd/dbus_impl_requester.hpp
/openbmc/pldm/pldmd/handler.hpp
/openbmc/pldm/pldmd/pldmd.cpp
/openbmc/pldm/pldmtool/pldm_platform_cmd.cpp
/openbmc/pldm/requester/mctp_endpoint_discovery.cpp
/openbmc/pldm/requester/mctp_endpoint_discovery.hpp
/openbmc/pldm/softoff/services/pldmSoftPowerOff.service
/openbmc/pldm/softoff/softoff.cpp
/openbmc/pldm/softoff/softoff.hpp
3ca4045304-Oct-2021 Manojkiran Eda <manojkiran.eda@gmail.com>

Remove PDR's based on Terminus Handle

The current pldm infrastructure is written in way that
it deletes all the PDR's which are marked as "remote",when
we get a PDR refresh entire repository signal

Remove PDR's based on Terminus Handle

The current pldm infrastructure is written in way that
it deletes all the PDR's which are marked as "remote",when
we get a PDR refresh entire repository signal comes from remote
PLDM terminus,this does not work in muti-host scenario where BMC
talks to more than one HOST that talks pldm.

When a repository refresh signal comes form a remote PLDM terminus,
BMC is supposed to only delete the PDR's corresponding to the same
PLDM terminus.

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

show more ...

ca1998f306-Jun-2022 Manojkiran Eda <manojkiran.eda@gmail.com>

update clang-format

This commit would update the repo's clang-format file to
the latest of docs/style/cpp/clang-format file.

Following is the new change that is added:
Brad :
clang-format: cpp: r

update clang-format

This commit would update the repo's clang-format file to
the latest of docs/style/cpp/clang-format file.

Following is the new change that is added:
Brad :
clang-format: cpp: remove empty lines

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

show more ...


/openbmc/pldm/.clang-format
flight_recorder.hpp
test/pldm_utils_test.cpp
utils.cpp
/openbmc/pldm/configurations/pdr/11.json
/openbmc/pldm/fw-update/activation.hpp
/openbmc/pldm/fw-update/manager.hpp
/openbmc/pldm/fw-update/update_manager.cpp
/openbmc/pldm/host-bmc/dbus_to_host_effecters.cpp
/openbmc/pldm/libpldmresponder/bios.cpp
/openbmc/pldm/libpldmresponder/bios_integer_attribute.cpp
/openbmc/pldm/libpldmresponder/fru.cpp
/openbmc/pldm/libpldmresponder/fru.hpp
/openbmc/pldm/libpldmresponder/fru_parser.cpp
/openbmc/pldm/libpldmresponder/fru_parser.hpp
/openbmc/pldm/libpldmresponder/meson.build
/openbmc/pldm/libpldmresponder/platform.cpp
/openbmc/pldm/libpldmresponder/platform_numeric_effecter.hpp
/openbmc/pldm/libpldmresponder/test/meson.build
/openbmc/pldm/meson.build
/openbmc/pldm/oem/ibm/configurations/bios/enum_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/integer_attrs.json
/openbmc/pldm/oem/ibm/configurations/bios/string_attrs.json
/openbmc/pldm/oem/ibm/configurations/events/oem_ibm_event_state_sensor.json
/openbmc/pldm/oem/ibm/configurations/fru/Chassis_VCEN.json
/openbmc/pldm/oem/ibm/configurations/fru/Motherboard_VCEN.json
/openbmc/pldm/oem/ibm/libpldmresponder/file_io.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/oem_ibm_handler.cpp
/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/pldmd/dbus_impl_pdr.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_fw_update_cmd.cpp
/openbmc/pldm/pldmtool/pldmtool.cpp
/openbmc/pldm/requester/handler.hpp
/openbmc/pldm/softoff/services/pldmSoftPowerOff.service
/openbmc/pldm/subprojects/CLI11.wrap
/openbmc/pldm/subprojects/nlohmann-json.wrap
/openbmc/pldm/subprojects/phosphor-dbus-interfaces.wrap
/openbmc/pldm/subprojects/sdbusplus.wrap
/openbmc/pldm/subprojects/sdeventplus.wrap
/openbmc/pldm/subprojects/stdplus.wrap
/openbmc/pldm/tools/visualize-pdr/requirements.txt
ef77305928-Jul-2021 Manojkiran Eda <manojkiran.eda@gmail.com>

In-Memory FlightRecorder support for pldmd

pldm daemon in BMC can act both as a requester and
responder, and it is capable of talking to any device
that talks pldm spec.

With the rapid increase in

In-Memory FlightRecorder support for pldmd

pldm daemon in BMC can act both as a requester and
responder, and it is capable of talking to any device
that talks pldm spec.

With the rapid increase in the number of commands supported
by pldmd, and also with the async request/response support
enabled, its becomes extremely tough to debug the failures
in the communication.

And most of times, the essential information that is needed
to debug are the last few commands that BMC pldm responded to.
So this commit is an attempt to bring in an in-memory flight
recorder that could save the last 10(can be configurable)
pldm transactions in a circular buffer, and dumps the contents
of it into a file when it receives a SIGUR1 signal.

Resolves openbmc/pldm#24

Tested By :

1. Power on host
2. In the middle of poweron, send the SIGUSR1 signal to pldmd

root@rain118bmc:/tmp# kill -10 836
Received SIGUR1(10) Signal interrupt
root@rain118bmc:/tmp# Dumping the flight recorder into /tmp/pldm_flight_recorder

3. Make sure pldmd is not killed and does the rest of the power on
operation.

4. check the contents of /tmp/pldm_flight_recorder
root@p10bmc:~# cat /tmp/pldm_flight_recorder
UTC Nov 05 / 11:27:25.334606 : Tx :
0a 3f 0d 00
UTC Nov 05 / 11:27:26.292988 : Rx :
09 01 8b 3f 0d 00 00 7b 1e 00 50 00
UTC Nov 05 / 11:27:26.296915 : Tx :
0b 3f 0d 00
UTC Nov 05 / 11:27:27.250999 : Rx :
09 01 8c 3f 0d 00 00 7c 1e 00 50 00
UTC Nov 05 / 11:27:27.254762 : Tx :
0c 3f 0d 00
UTC Nov 05 / 11:27:28.212168 : Rx :
09 01 8d 3f 0d 00 00 7d 1e 00 50 00
UTC Nov 05 / 11:27:28.216086 : Tx :
0d 3f 0d 00
UTC Nov 05 / 11:27:29.171228 : Rx :
09 01 8e 3f 0d 00 00 7e 1e 00 50 00
UTC Nov 05 / 11:27:29.175143 : Tx :
0e 3f 0d 00
UTC Nov 05 / 11:27:25.330716 : Rx :
09 01 8a 3f 0d 00 00 7a 1e 00 50 00

5. Configure with -Dflightrecorder-max-entries=0
root@p10bmc:~# kill -10 21847
Received SIGUR1(10) Signal interrupt
Fight recorder policy is disabled

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

show more ...

872f0f6925-Nov-2021 George Liu <liuxiwei@inspur.com>

utils: Add split method

Add the method of splitting the string, split the string according to
the special identifier and return a vector.

Tested: Add Unit Test and test passes.

Signed-off-by: Geor

utils: Add split method

Add the method of splitting the string, split the string according to
the special identifier and return a vector.

Tested: Add Unit Test and test passes.

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

show more ...

1ef62c3723-Apr-2021 Manojkiran Eda <manojkiran.eda@gmail.com>

Add getSubtree utility functions

- Added getSubtree utility function that can returns
the service name & dbus object paths that implement a
particular dbus interface.

Signed-off-by: Manojkiran

Add getSubtree utility functions

- Added getSubtree utility function that can returns
the service name & dbus object paths that implement a
particular dbus interface.

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

show more ...

fb3bc06f17-Aug-2021 Tom Joseph <rushtotom@gmail.com>

fw-update: Firmware discovery of MCTP endpoints

Tested:

a) Verified MCTP endpoints are discovered by PLDM and fetching the firmware
inventory commands.
b) PLDM firmware update successful after u

fw-update: Firmware discovery of MCTP endpoints

Tested:

a) Verified MCTP endpoints are discovered by PLDM and fetching the firmware
inventory commands.
b) PLDM firmware update successful after uploading the package, which depends
on the firmware inventory commands.
c) Verified MCTP endpoints are discovered irrespective of the startup order
with the MCTP control application.

Signed-off-by: Tom Joseph <rushtotom@gmail.com>
Change-Id: I7ee9aed40433a8e5a4ebb8e61f917ec82dde9c35

show more ...

1630f39929-Jun-2021 Tom Joseph <rushtotom@gmail.com>

fw-update: Implement firmware update package parser

PackageParser implements parsing the common elements across version
1 and version 2 of the PackageHeader. PackageParserV1 handles parsing
the pack

fw-update: Implement firmware update package parser

PackageParser implements parsing the common elements across version
1 and version 2 of the PackageHeader. PackageParserV1 handles parsing
the package header version 1 as defined in DSP0267_1.0.0 and
DSP0267_1.0.1.

Tested: Unit tests added

Signed-off-by: Tom Joseph <rushtotom@gmail.com>
Change-Id: Iddabd435755f462c042a85a286b1b0a50eb346b1

show more ...

75356c1a20-Jun-2021 Tom Joseph <rushtotom@gmail.com>

fw-update: Implement inventory manager

1. Discover firmware devices that implement fw update specification
2. Implements request/response for QueryDeviceIdentifiers command
3. Implements request/res

fw-update: Implement inventory manager

1. Discover firmware devices that implement fw update specification
2. Implements request/response for QueryDeviceIdentifiers command
3. Implements request/response for GetFirmwareParameters command
4. Enumerates device identifiers and component information to be used
for fw-update

Signed-off-by: Tom Joseph <rushtotom@gmail.com>
Change-Id: Ifa035c801a7c62bac9a7e947ed4a43d48f85a4ed

show more ...

60e1fe9108-Oct-2021 Manojkiran Eda <manojkiran.eda@gmail.com>

Make Terminus info a class variable

The terminus information is needed at various places in
pldm and instead of passing that structure around via
function arguments, it is cheaper to maintain it as

Make Terminus info a class variable

The terminus information is needed at various places in
pldm and instead of passing that structure around via
function arguments, it is cheaper to maintain it as a
class variable.

And this commit also removes the redundant structure that
stores partial terminus information.

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

show more ...

c30a82cf07-Oct-2021 Brad Bishop <bradleyb@fuzziesquirrel.com>

utils: print out host EID path

Print out the host EID path when it is missing to make debugging build
time configuration problems a little easier.

Change-Id: Ibb1b71751ad3c9b4ceb076f77458ace5432deb

utils: print out host EID path

Print out the host EID path when it is missing to make debugging build
time configuration problems a little easier.

Change-Id: Ibb1b71751ad3c9b4ceb076f77458ace5432debbb
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>

show more ...

5133058506-Oct-2021 Patrick Williams <patrick@stwcx.xyz>

catch exceptions as const

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


/openbmc/pldm/.clang-format
/openbmc/pldm/.eslintignore
/openbmc/pldm/OWNERS
utils.cpp
/openbmc/pldm/configurations/events/stateSensorPdrs.json
/openbmc/pldm/configurations/pdr/11.json
/openbmc/pldm/configurations/pdr/4.json
/openbmc/pldm/host-bmc/host_pdr_handler.cpp
/openbmc/pldm/libpldm/bios_table.c
/openbmc/pldm/libpldmresponder/base.cpp
/openbmc/pldm/libpldmresponder/base.hpp
/openbmc/pldm/libpldmresponder/bios.cpp
/openbmc/pldm/libpldmresponder/bios_attribute.cpp
/openbmc/pldm/libpldmresponder/bios_config.cpp
/openbmc/pldm/libpldmresponder/bios_enum_attribute.cpp
/openbmc/pldm/libpldmresponder/bios_integer_attribute.cpp
/openbmc/pldm/libpldmresponder/bios_string_attribute.cpp
/openbmc/pldm/libpldmresponder/bios_table.cpp
/openbmc/pldm/libpldmresponder/examples/bios/enum_attrs.json
/openbmc/pldm/libpldmresponder/examples/bios/integer_attrs.json
/openbmc/pldm/libpldmresponder/examples/bios/string_attrs.json
/openbmc/pldm/libpldmresponder/examples/effecter/dbus_to_host_effecter.json
/openbmc/pldm/libpldmresponder/examples/events/event_state_sensor.json
/openbmc/pldm/libpldmresponder/examples/fru/Board_General.json
/openbmc/pldm/libpldmresponder/examples/fru/Board_VINI.json
/openbmc/pldm/libpldmresponder/examples/fru/Cpu_General.json
/openbmc/pldm/libpldmresponder/examples/fru/FRU_Master.json
/openbmc/pldm/libpldmresponder/examples/fru/host_frus.json
/openbmc/pldm/libpldmresponder/examples/pdr/sensor_pdr.json
/openbmc/pldm/libpldmresponder/fru.cpp
/openbmc/pldm/libpldmresponder/oem_handler.hpp
/openbmc/pldm/libpldmresponder/pdr.hpp
/openbmc/pldm/libpldmresponder/pdr_state_effecter.hpp
/openbmc/pldm/libpldmresponder/pdr_state_sensor.hpp
/openbmc/pldm/libpldmresponder/platform.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_base_test.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_pdr_effecter_test.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_platform_test.cpp
/openbmc/pldm/libpldmresponder/test/pdr_jsons/state_sensor/malformed/sensor_pdr.json
/openbmc/pldm/meson.build
/openbmc/pldm/meson_options.txt
/openbmc/pldm/oem/ibm/configurations/bios/enum_attrs.json
/openbmc/pldm/oem/ibm/libpldm/state_set.h
/openbmc/pldm/oem/ibm/libpldmresponder/file_io.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_dump.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/inband_code_update.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/inband_code_update.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/oem_ibm_handler.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/oem_ibm_handler.hpp
/openbmc/pldm/oem/ibm/requester/dbus_to_file_handler.cpp
/openbmc/pldm/oem/ibm/test/libpldmresponder_oem_platform_test.cpp
/openbmc/pldm/pldmd/pldmd.cpp
/openbmc/pldm/pldmtool/oem/ibm/oem_ibm_state_set.hpp
/openbmc/pldm/pldmtool/pldm_bios_cmd.cpp
/openbmc/pldm/tools/visualize-pdr/pldm_visualise_pdrs.py
e5268cda07-Sep-2021 Tom Joseph <rushtotom@gmail.com>

Refactor the verbose tracing in PLDM

1. Add verbose tracing in requester code
2. Change the prefix of verbose tracing to "Tx: " and "Rx: "
3. Remove explicit verbose tracing flag in libpldmresponder

Refactor the verbose tracing in PLDM

1. Add verbose tracing in requester code
2. Change the prefix of verbose tracing to "Tx: " and "Rx: "
3. Remove explicit verbose tracing flag in libpldmresponder
4. Change the prefix of pldmtool verbose tracing to "pldmtool: Tx: "
and "pldmtool: Rx: "

Signed-off-by: Tom Joseph <rushtotom@gmail.com>
Change-Id: Ie2c6b323e32e0828ed5ecaeb3e61943a98a2f089

show more ...

4fea7a2002-Sep-2021 Patrick Williams <patrick@stwcx.xyz>

exception: switch to public sdbus exception

SdBusError was intended to be a private error type inside sdbusplus.
Switch all catch locations to use the general sdbusplus::exception type.

Signed-off-

exception: switch to public sdbus exception

SdBusError was intended to be a private error type inside sdbusplus.
Switch all catch locations to use the general sdbusplus::exception type.

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

show more ...

70a47baf02-Sep-2021 Patrick Williams <patrick@stwcx.xyz>

dos2unix conversion

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

06052cc516-Aug-2021 Brad Bishop <bradleyb@fuzziesquirrel.com>

build: un-hardcode prefix

/usr/share/pldm, /var/lib/pldm, and /etc are hardcoded in many places.
Workflows such as:
meson -Dprefix=$HOME/workspace -Dsysconfdir=$HOME/workspace builddir \
&& ninj

build: un-hardcode prefix

/usr/share/pldm, /var/lib/pldm, and /etc are hardcoded in many places.
Workflows such as:
meson -Dprefix=$HOME/workspace -Dsysconfdir=$HOME/workspace builddir \
&& ninja -C buildir install
result in pldmd looking for its data in the wrong place. Fix by
properly incorporating the user specified prefix into filesystem paths.

A number of paths remain hardcoded because they (presumably?) are owned
and provided by other packages (phosphor-software-manager) and those
packages do not provide any pkg-config from which we can extract their
installation prefixes.

Change-Id: I140d7a65e85342fd108af41f33010b422a0f77a5
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>

show more ...

5079ac4a19-Aug-2021 Brad Bishop <bradleyb@fuzziesquirrel.com>

treewide: remove 'using namespace' from headers

Using namespace at global scope in a header file violates the cpp core
guidelines. Quoting the guidelines:

"Doing so takes away an #includer’s abi

treewide: remove 'using namespace' from headers

Using namespace at global scope in a header file violates the cpp core
guidelines. Quoting the guidelines:

"Doing so takes away an #includer’s ability to effectively
disambiguate and to use alternatives. It also makes #included headers
order-dependent as they might have different meaning when included in
different orders."

For further reading:
https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Rs-using-directive

The guidelines don't call out using using namespace from namespace
scope, but it is only marginally less problematic and still unexpected,
so this patch removes those as well.

The process used to do the update is roughly:

1 - git grep 'using namespace' **.hpp
2 - For each instance, remove the offending 'using namespace' line
3 - build
4 - add 'using namespace' to cpp files or fully resolve types in hpp
files until the project builds again.

Further cleanup is possible - for example cpp files could be scrubbed
for unnecessary namespace qualification - this was not done here to make
review as simple as possible.

Change-Id: I4931f5e78a1b5b74b4a4774c035a549f4d59b91a
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>

show more ...


/openbmc/pldm/MAINTAINERS
/openbmc/pldm/OWNERS
/openbmc/pldm/README.md
test/mocked_utils.hpp
/openbmc/pldm/host-bmc/dbus_to_event_handler.cpp
/openbmc/pldm/host-bmc/dbus_to_event_handler.hpp
/openbmc/pldm/host-bmc/dbus_to_host_effecters.cpp
/openbmc/pldm/host-bmc/dbus_to_host_effecters.hpp
/openbmc/pldm/host-bmc/host_condition.cpp
/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/libpldm/base.h
/openbmc/pldm/libpldm/firmware_update.c
/openbmc/pldm/libpldm/firmware_update.h
/openbmc/pldm/libpldm/pdr.c
/openbmc/pldm/libpldm/pdr.h
/openbmc/pldm/libpldm/pldm_types.h
/openbmc/pldm/libpldm/state_set.h
/openbmc/pldm/libpldm/tests/libpldm_firmware_update_test.cpp
/openbmc/pldm/libpldm/tests/libpldm_pdr_test.cpp
/openbmc/pldm/libpldmresponder/bios.cpp
/openbmc/pldm/libpldmresponder/bios_attribute.cpp
/openbmc/pldm/libpldmresponder/bios_attribute.hpp
/openbmc/pldm/libpldmresponder/bios_config.cpp
/openbmc/pldm/libpldmresponder/bios_config.hpp
/openbmc/pldm/libpldmresponder/bios_enum_attribute.cpp
/openbmc/pldm/libpldmresponder/bios_enum_attribute.hpp
/openbmc/pldm/libpldmresponder/bios_integer_attribute.cpp
/openbmc/pldm/libpldmresponder/bios_integer_attribute.hpp
/openbmc/pldm/libpldmresponder/bios_string_attribute.cpp
/openbmc/pldm/libpldmresponder/bios_string_attribute.hpp
/openbmc/pldm/libpldmresponder/fru.cpp
/openbmc/pldm/libpldmresponder/fru.hpp
/openbmc/pldm/libpldmresponder/fru_parser.cpp
/openbmc/pldm/libpldmresponder/fru_parser.hpp
/openbmc/pldm/libpldmresponder/meson.build
/openbmc/pldm/libpldmresponder/oem_handler.hpp
/openbmc/pldm/libpldmresponder/pdr.hpp
/openbmc/pldm/libpldmresponder/pdr_numeric_effecter.hpp
/openbmc/pldm/libpldmresponder/pdr_state_effecter.hpp
/openbmc/pldm/libpldmresponder/pdr_state_sensor.hpp
/openbmc/pldm/libpldmresponder/pdr_utils.cpp
/openbmc/pldm/libpldmresponder/pdr_utils.hpp
/openbmc/pldm/libpldmresponder/platform.cpp
/openbmc/pldm/libpldmresponder/platform.hpp
/openbmc/pldm/libpldmresponder/platform_numeric_effecter.hpp
/openbmc/pldm/libpldmresponder/platform_state_effecter.hpp
/openbmc/pldm/libpldmresponder/platform_state_sensor.hpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_bios_attribute_test.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_bios_config_test.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_bios_enum_attribute_test.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_bios_integer_attribute_test.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_bios_string_attribute_test.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_pdr_effecter_test.cpp
/openbmc/pldm/libpldmresponder/test/libpldmresponder_platform_test.cpp
/openbmc/pldm/libpldmresponder/test/mocked_bios.hpp
/openbmc/pldm/oem/ibm/configurations/bios/enum_attrs.json
/openbmc/pldm/oem/ibm/libpldmresponder/file_io_type_cert.cpp
/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/inband_code_update.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/inband_code_update.hpp
/openbmc/pldm/oem/ibm/libpldmresponder/oem_ibm_handler.cpp
/openbmc/pldm/oem/ibm/libpldmresponder/oem_ibm_handler.hpp
/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/pldmd/pldmd.cpp
/openbmc/pldm/pldmd/service_files/pldmd.service
/openbmc/pldm/pldmtool/oem/ibm/oem_ibm_state_set.hpp
/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_platform_cmd.cpp
/openbmc/pldm/requester/handler.hpp
/openbmc/pldm/requester/request.hpp
/openbmc/pldm/requester/test/mock_request.hpp
/openbmc/pldm/tools/fw-update/pldm_fwup_pkg_creator.py

1234