#
a31ceb91 |
| 21-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 ...
|
#
a34a64bb |
| 30-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 ...
|
#
3012b632 |
| 22-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 ...
|
#
b49b7d80 |
| 08-Feb-2021 |
George Liu <liuxiwei@inspur.com> |
oem-ibm: Implement Host lamp test interface
IBM has a feature called LampTest and what it does is this: - BMC would set the state of LEDs to [ON] on all the BMC accessible LEDs. - For LEDs t
oem-ibm: Implement Host lamp test interface
IBM has a feature called LampTest and what it does is this: - BMC would set the state of LEDs to [ON] on all the BMC accessible LEDs. - For LEDs that are not accessible by BMC, a message is sent to the Host, so that the Host can exercise all the LEDs on the connected drawers and anything else that the BMC does not have access to.
This commit adds support to send message to Host when BMC has to tell the Host to exercise LEDs accessible by host.
When Host sees the effector is set, it goes ahead and turns [ON] all the LEDs for a specified time and automatically restores the states at timer expiration. BMC does not have to tell the Host to stop the test and it is part of Host's lamp test requirement.
TESTED: By setting the asserted property of the LED groups object
busctl set-property xyz.openbmc_project.LED.GroupManager /xyz/openbmc_project/led/groups/lamp_test xyz.openbmc_project.Led.Group Asserted b true
And verifying that the setEffecterStates call was made to the remote state effecter to turn on all LEDs
Signed-off-by: George Liu <liuxiwei@inspur.com> Change-Id: I990dce28d3017f20c73ff9029fced0e7ac84868f
show more ...
|
#
b40f4f8f |
| 06-Jun-2024 |
Archana Kakani <archana.kakani@ibm.com> |
pldm: Implement Cable interface
Adding support to host Cable dbus interface. Based on the PDRs received from remote PLDM terminus, PLDM hosts the dbus interface based on the entity type. The Cable i
pldm: Implement Cable interface
Adding support to host Cable dbus interface. Based on the PDRs received from remote PLDM terminus, PLDM hosts the dbus interface based on the entity type. The Cable interface is defined at [1].
[1]: https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/yaml/xyz/openbmc_project/Inventory/Item/Cable.interface.yaml
Change-Id: I23f02387c1d50ce8d9c5921760740760cea2cd47 Signed-off-by: Archana Kakani <archana.kakani@ibm.com>
show more ...
|
#
733b39da |
| 05-Jun-2024 |
Archana Kakani <archana.kakani@ibm.com> |
pldm: Implement PCIeDevice interface
Adding support to host PCIeDevice dbus interface. Based on the PDRs received from remote PLDM terminus, PLDM hosts the dbus interface based on the entity type. T
pldm: Implement PCIeDevice interface
Adding support to host PCIeDevice dbus interface. Based on the PDRs received from remote PLDM terminus, PLDM hosts the dbus interface based on the entity type. The PCIe Device 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/PCIeDevice.interface.yaml
Change-Id: I69472efef33c3ad030ba4c831f07f60833b2c40b Signed-off-by: Archana Kakani <archana.kakani@ibm.com>
show more ...
|
#
bf1fd27b |
| 05-Jun-2024 |
Archana Kakani <archana.kakani@ibm.com> |
pldm: Implement PCIeSlot interface
Adding support to host dbus PCIeSlot interface. Based on the PDRs received from remote PLDM terminus, PLDM hosts the dbus interface based on the entity type. The S
pldm: Implement PCIeSlot interface
Adding support to host dbus PCIeSlot interface. Based on the PDRs received from remote PLDM terminus, PLDM hosts the dbus interface based on the entity type. The Slot 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/PCIeSlot.interface.yaml
Change-Id: I98db6c31ddcb35e5c124d060c4ee0ab0f8819e72 Signed-off-by: Archana Kakani <archana.kakani@ibm.com>
show more ...
|
#
56da5740 |
| 23-May-2024 |
Kamalkumar Patel <kamalkumar.patel@ibm.com> |
Adding CPUCore interface support
This commit introduces essential D-Bus infrastructure support for hosting the `Item.CPUCore` D-Bus object. Additionally, it includes getter and setter functions to e
Adding CPUCore interface support
This commit introduces essential D-Bus infrastructure support for hosting the `Item.CPUCore` D-Bus object. Additionally, it includes getter and setter functions to enable get/set properties within the `CPUCore` interface, such as core count and microcode.
Testing: Unit test passed
Change-Id: I728522b34e96ee7d6609efb5746b40cf923812e8 Signed-off-by: Kamalkumar Patel <kamalkumar.patel@ibm.com>
show more ...
|
#
14107a10 |
| 19-Jun-2024 |
Kamalkumar Patel <kamalkumar.patel@ibm.com> |
host-bmc: migrate dbus hosting logic into dbus folder
This commit aims at migrating the custom_dbus files from the host_bmc directory to the host-bmc/dbus directory. This makes the code cleaner sinc
host-bmc: migrate dbus hosting logic into dbus folder
This commit aims at migrating the custom_dbus files from the host_bmc directory to the host-bmc/dbus directory. This makes the code cleaner since it abstracts all the dbus objects hosting code to the dbus folder
Change-Id: Ia310e8a16f9489060ef228496d364c602a4fa6a8 Signed-off-by: Kamalkumar Patel <kamalkumar.patel@ibm.com>
show more ...
|
#
516122e0 |
| 07-May-2024 |
Kamalkumar Patel <kamalkumar.patel@ibm.com> |
Add Json Config support for entity to DBus string
The entity map comprises both entity types and their corresponding names, essential for generating unique D-Bus paths for each entity. However, chal
Add Json Config support for entity to DBus string
The entity map comprises both entity types and their corresponding names, essential for generating unique D-Bus paths for each entity. However, challenges arise due to variations in path generation across companies, often dictated by differing entity types. To address this, enabling configurability of EntityID becomes imperative, empowering communities to tailor configurations to their specific use cases.
Testing: Unit tests passed
Change-Id: I3981fde64bd00940caa5067a9472fd948e74cbf0 Signed-off-by: Kamalkumar Patel <kamalkumar.patel@ibm.com>
show more ...
|
#
4e69d252 |
| 10-May-2024 |
Kamalkumar Patel <kamalkumar.patel@ibm.com> |
host-bmc: refine remote terminus functionality
This commit introduces support for migrating remote terminus-related functionalities into the host-bmc directory, a move aimed at optimizing remote ter
host-bmc: refine remote terminus functionality
This commit introduces support for migrating remote terminus-related functionalities into the host-bmc directory, a move aimed at optimizing remote terminus operations for future endeavors. By consolidating these functionalities, tracking and implementing future enhancements become more streamlined and manageable.
Change-Id: I52b6ced7acacb004b6055ae710193a959d986659 Signed-off-by: Kamalkumar Patel <kamalkumar.patel@ibm.com>
show more ...
|
#
d6b00561 |
| 31-Mar-2024 |
Archana Kakani <archana.kakani@ibm.com> |
oem-ibm: PCIe Topology support
This is the infrastructure commit to support PCIe Topology
PCIe topology refers to the physical arrangement of PCIe devices within the system. Topology data contains
oem-ibm: PCIe Topology support
This is the infrastructure commit to support PCIe Topology
PCIe topology refers to the physical arrangement of PCIe devices within the system. Topology data contains links connecting PCIe device to the PCIe Controller. This commit adds support for PCIe Topology and Cable information filetype. Topology information is provided by host using FILIO mechanism. This commit adds support for handling 1. Topology file(PLDM_FILE_TYPE_PCIE_TOPOLOGY) 2. Cable information file(PLDM_FILE_TYPE_CABLE_INFO)
Tested: Updated Unit test and tested power on.
Change-Id: Ic77f4f9921dd855c61c3929b5a458d80b1691b48 Signed-off-by: Archana Kakani <archana.kakani@ibm.com>
show more ...
|
#
a410c658 |
| 22-Jul-2021 |
Pavithra Barithaya <pavithra.b@ibm.com> |
oem:ibm :Implement SetFruRecordTable
The commit implements the setFruRecordTable command and also updates the DBus property for the IBM cable cards for which the host sends a setFruRecordTable comma
oem:ibm :Implement SetFruRecordTable
The commit implements the setFruRecordTable command and also updates the DBus property for the IBM cable cards for which the host sends a setFruRecordTable command.
Tested: using pldmtool
Signed-off-by: Pavithra Barithaya <pavithra.b@ibm.com> Change-Id: I70e4f85f627577d8ca1bc90447b10e9e2e8e7ccd
show more ...
|
#
3c50c82a |
| 30-Jan-2024 |
Kamalkumar Patel <kamalkumar.patel@ibm.com> |
Adding Platform specific PDR support
- Adding platform check to generate pdr based on platform type.
- Currently PDR generation is happening based on default configuration, so this commit adds su
Adding Platform specific PDR support
- Adding platform check to generate pdr based on platform type.
- Currently PDR generation is happening based on default configuration, so this commit adds support to generate PDR's based in the platform type.
Testing: - Added traces and check from which path the files has been taken for pdr generation. - Removed power supply from default path and oem layer and identified that power supply pdr is not generating.
Change-Id: I6bedf06be7392e02c1ad32af7a552a5a4d6d42c0 Signed-off-by: Kamalkumar Patel <kamalkumar.patel@ibm.com>
show more ...
|
#
cf772846 |
| 07-Dec-2023 |
Patrick Williams <patrick@stwcx.xyz> |
meson: adjust nlohmann-json dependency
Simplify the meson dependency for nlohmann-json, use the consistent dependency name, and align the wrap file name with other repositories.
Signed-off-by: Patr
meson: adjust nlohmann-json dependency
Simplify the meson dependency for nlohmann-json, use the consistent dependency name, and align the wrap file name with other repositories.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I3a682a3e07e38d0a1bfe35858e24f1bb74b4ec34
show more ...
|
#
87bfacd2 |
| 29-Nov-2023 |
Patrick Williams <patrick@stwcx.xyz> |
build: use allowed over enabled
Meson feature options are typically in a tri-state of enabled, disabled, or auto. The enabled and disabled functions on an option (from `get_option`) no longer retur
build: use allowed over enabled
Meson feature options are typically in a tri-state of enabled, disabled, or auto. The enabled and disabled functions on an option (from `get_option`) no longer return true for auto features. Instead, the expectation is to use `allowed()` which is true for both enabled and auto.
Switch all uses of `enabled` to `allowed`.
Change-Id: I794c658531483266bfce6f9b28127a166ed01490 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
#
682ee18c |
| 25-Dec-2020 |
George Liu <liuxiwei@inspur.com> |
Handle FRU records from host
- Get FRU record table from host and traverse the entity structure from the FRU record set PDR, and create D-Bus object.
- When the FRU field type is a PLDM_OEM_FRU_F
Handle FRU records from host
- Get FRU record table from host and traverse the entity structure from the FRU record set PDR, and create D-Bus object.
- When the FRU field type is a PLDM_OEM_FRU_FIELD_TYPE_LOCATION_CODE , the location code is used to populate the xyz.openbmc_project.Inventory.Decorator.LocationCode D-Bus interface for the corresponding FRU.
Signed-off-by: George Liu <liuxiwei@inspur.com> Change-Id: I482c4d371f76b4881109ef420dfd9543e1aa810b
show more ...
|
#
11ce8d22 |
| 28-Jul-2022 |
Sagar Srinivas <sagar.srinivas@ibm.com> |
PLDM: System specific BIOS attributes
This commit adds code to populate BIOS attributes based on the system type that is the platform.
The BIOS Jsons are installed based on the platform/ system typ
PLDM: System specific BIOS attributes
This commit adds code to populate BIOS attributes based on the system type that is the platform.
The BIOS Jsons are installed based on the platform/ system type. The system type is populated by entity manager.
TESTED on hardware across different platform/system type. On systems where the compatible system interface is not implemented or entity manager not running, then the BIOS Jsons with default values are installed.
Signed-off-by: Sagar Srinivas <sagar.srinivas@ibm.com> Change-Id: I179dad34537ed0d1fb263584d687a1b8cb64c335
show more ...
|
#
e1874e8a |
| 02-May-2023 |
Varsha Kaverappa <vkaverap@in.ibm.com> |
oem-ibm : Support New record to the backplane vpd
This commit is to support a new VPD record called PSPD that contains few keywords called #D and VM. Since these keywords are typically larger in siz
oem-ibm : Support New record to the backplane vpd
This commit is to support a new VPD record called PSPD that contains few keywords called #D and VM. Since these keywords are typically larger in size (4K bytes) than what is managed by PLDM, we are adding a file into which these keywords will be extracted. This keyword file is transferred to the HB PLDM layer with a readFileByType request from HB.
This also includes transfer of PSPD record data via PLDM with offset included.
Tested by using pldmtool to send read request command to PLDM
Change-Id: Iba814a802cbbd2c2d641ee5a4c81919c3b8bdf20 Signed-off-by: Varsha Kaverappa <vkaverap@in.ibm.com>
show more ...
|
#
25c999c9 |
| 28-Apr-2023 |
Andrew Jeffery <andrew@aj.id.au> |
Revert "oem-ibm : New record to backplane vpd"
This reverts commit 9eee2518cabb21790dceef847eae5fe39d3c4792.
The patch in question breaks the build in multiple ways:
``` ../oem/ibm/libpldmresponde
Revert "oem-ibm : New record to backplane vpd"
This reverts commit 9eee2518cabb21790dceef847eae5fe39d3c4792.
The patch in question breaks the build in multiple ways:
``` ../oem/ibm/libpldmresponder/file_io_type_vpd.cpp: In member function ‘virtual int pldm::responder::keywordHandler::read(uint32_t, uint32_t&, pldm::responder::Response&, pldm::responder::oem_platform::Handler*)’: ../oem/ibm/libpldmresponder/file_io_type_vpd.cpp:30:21: error: ‘DBusHandler’ has not been declared 30 | auto& bus = DBusHandler::getBus(); | ^~~~~~~~~~~ ../oem/ibm/libpldmresponder/file_io_type_vpd.cpp:74:19: error: ‘pldm::PelSeverity’ has not been declared 74 | pldm::PelSeverity::ERROR); | ^~~~~~~~~~~ ../oem/ibm/libpldmresponder/file_io_type_vpd.cpp:106:48: error: cannot bind non-const lvalue reference of type ‘uint32_t&’ {aka ‘unsigned int&’} to a value of type ‘long unsigned int’ 106 | auto rc = readFile(keywrdFilePath, offset, keywrdSize, response); | ^~~~~~~~~~ In file included from ../oem/ibm/libpldmresponder/file_io_type_vpd.hpp:3, from ../oem/ibm/libpldmresponder/file_io_type_vpd.cpp:1: ../oem/ibm/libpldmresponder/file_io_by_type.hpp:90:36: note: initializing argument 3 of ‘virtual int pldm::responder::FileHandler::readFile(const std::string&, uint32_t, uint32_t&, pldm::responder::Response&)’ 90 | uint32_t& length, Response& response); | ~~~~~~~~~~^~~~~~ ../oem/ibm/libpldmresponder/file_io_type_vpd.cpp:114:19: error: ‘pldm::PelSeverity’ has not been declared 114 | pldm::PelSeverity::ERROR); | ^~~~~~~~~~~ [53/71] Compiling C++ object libpldmresponder/libpldmresponder.so.0.1.p/.._oem_ibm_libpldmresponder_file_io_by_type.cpp.o FAILED: libpldmresponder/libpldmresponder.so.0.1.p/.._oem_ibm_libpldmresponder_file_io_by_type.cpp.o ... responder_file_io_by_type.cpp.o -c ../oem/ibm/libpldmresponder/file_io_by_type.cpp ../oem/ibm/libpldmresponder/file_io_by_type.cpp: In function ‘std::unique_ptr<pldm::responder::FileHandler> pldm::responder::getHandlerByType(uint16_t, uint32_t)’: ../oem/ibm/libpldmresponder/file_io_by_type.cpp:173:14: error: ‘PLDM_FILE_TYPE_PSPD_VPD_PDD_KEYWORD’ was not declared in this scope 173 | case PLDM_FILE_TYPE_PSPD_VPD_PDD_KEYWORD: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ninja: build stopped: subcommand failed. ```
Let's get that fixed and try again.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I39f0894509d5ef8420320897999f654896354281
show more ...
|
#
9eee2518 |
| 28-Oct-2022 |
Varsha Kaverappa <vkaverap@in.ibm.com> |
oem-ibm : New record to backplane vpd
This commit is to support a new VPD record called PSPD that contains few keywords called #D and VM. Since these keywords are typically larger in size (4K bytes)
oem-ibm : New record to backplane vpd
This commit is to support a new VPD record called PSPD that contains few keywords called #D and VM. Since these keywords are typically larger in size (4K bytes) than what is managed by PLDM, we are adding a file into which these keywords will be extracted. This keyword file is transferred to the HB PLDM layer with a readFileByType request from HB.
Signed-off-by: Varsha Kaverappa <vkaverap@in.ibm.com> Change-Id: I94ed20bb54e704173a2c0a2dd6dbea853174b7de
show more ...
|
#
49cfb138 |
| 02-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 ...
|
#
998dc4eb |
| 27-Jul-2022 |
Manojkiran Eda <manojkiran.eda@gmail.com> |
Move oem libpldm code inside libpldm
Moving the oem support inside the libpldm folder would help us to migrate libpldm folder into its own repository.
Signed-off-by: Manojkiran Eda <manojkiran.eda@
Move oem libpldm code inside libpldm
Moving the oem support inside the libpldm folder would help us to migrate libpldm folder into its own repository.
Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com> Change-Id: I4596e9e001c985864431a56343318e5f93d3ede3
show more ...
|
#
1421a80f |
| 04-Apr-2022 |
Manojkiran Eda <manojkiran.eda@gmail.com> |
Add stdplus dependency for pldm
pldm flight recorder feature in pldm uses stdplus::signal::block API to block the SIGUSR1 linux signal.
Explicitly not adding this as dependency would ideally break
Add stdplus dependency for pldm
pldm flight recorder feature in pldm uses stdplus::signal::block API to block the SIGUSR1 linux signal.
Explicitly not adding this as dependency would ideally break the compilation of pldm using subprojects.
Tested By: 1. compile pldm on ubuntu with out any openbmc - packages 2. the compilation breaks with undefined reference error 3. Put this patch in - and then recompile the code 4. now pldm compiles with out any errors.
Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com> Change-Id: I111f3581b898c71a5e4eeee24a0bfc89c4487021
show more ...
|
#
20aa3e09 |
| 17-Aug-2021 |
Tom Joseph <rushtotom@gmail.com> |
libpldmresponder: Move host specific code under build flag
Recently added patches have not added the libpldmresponder and host bmc specific code under the libpldmresponder build flag.
Tested: Not t
libpldmresponder: Move host specific code under build flag
Recently added patches have not added the libpldmresponder and host bmc specific code under the libpldmresponder build flag.
Tested: Not tested yet, need help from IBM contributors to verify the patch and update this section.
Signed-off-by: Tom Joseph <rushtotom@gmail.com> Change-Id: I743ccae4d31af887c037a3bd38ec837b942f7efd
show more ...
|