commit | 647417a91cf16c83578c391dc3900f36a4233701 | [log] [tgz] |
---|---|---|
author | Souvik Roy <souvikroyofficial10@gmail.com> | Wed Jul 16 08:20:06 2025 -0500 |
committer | Souvik Roy <souvikroyofficial10@gmail.com> | Mon Aug 25 15:08:34 2025 +0000 |
tree | 567e2cbdaa315a915d2de0577944c64670a3ecf0 | |
parent | b2b90bc34b2db036939c63d84b8286d3b96bb0cd [diff] |
Implement get correlated properties API This commit implements API used to get correlated properties for given property. This API is required to process correlated properties callback. Test: ``` - Add debug traces to callback processing method - On rainier 2s2u simics, do busctl set-property on /system Decorator Asset interface's SerialNumber property - Observe get correlated properties API return targets: /xyz/openbmc_project/inventory/system com.ibm.ipzvpd.VSYS SE /xyz/openbmc_project/inventory/system/chassis com.ibm.ipzvpd.VSYS SE /xyz/openbmc_project/inventory/system/chassis/motherboard com.ibm.ipzvpd.VSYS SE /xyz/openbmc_project/inventory/system/chassis/motherboard/tod_battery com.ibm.ipzvpd.VSYS SE - On rainier 2s2u simics, do busctl set-property on /system Decorator Asset's PartNumber property - Observe get correlated properties API return target: /xyz/openbmc_project/inventory/system/chassis/motherboard com.ibm.ipzvpd.VINI PN ``` Change-Id: I3ad537f7b4f4663681a192cc137b267c114ac03a Signed-off-by: Souvik Roy <souvikroyofficial10@gmail.com>
This repository hosts code for OpenPower and IBM IPZ format VPD parsers. Both OpenPower VPD and IPZ VPD formats are structured binaries that consist of records and keywords. A record is a collection of multiple keywords. More information about the format can be found at a broken link.
The repository consists of two distinct applications, which are:
This is a build-time YAML driven application that parses the OpenPower VPD format and uses the YAML configuration (see extra-properties-example.yaml and writefru.yaml) to determine:
The application instance must be passed in the file path to the VPD (this can, for example, be a sysfs path exposed by the EEPROM device driver) and also the D-Bus object path(s) that EEPROM data needs to be published under.
This parser is can be built by passing in the --enable-ibm-parser
configure option. This parser differs from the OpenPower VPD parser in the following ways:
#
and are > 255 bytes in length).Making the application runtime JSON driven allows us to support multiple systems (with different FRU configurations) to be supported in a single code image as well as making the application more flexible for future improvements.