| commit | 8e140a1c8076adf45e8dd975a8c6e4bcfc6ea578 | [log] [tgz] |
|---|---|---|
| author | PriyangaRamasamy <priyanga24@in.ibm.com> | Mon Apr 13 19:24:03 2020 +0530 |
| committer | Santosh Puranik <santosh.puranik@in.ibm.com> | Sat Oct 31 19:04:57 2020 +0530 |
| tree | 0b89bc8f984b3ed69399ac59a69c2dee941050f1 | |
| parent | b665c5545482ac9add1e340ac8b17e5ae1f456db [diff] |
Prime the Inventory VPD objects
At the time of collecting the system vpd, prime those non system vpd
inventory objects by populating only certain properites of the objects
(like - Location code, Type interface and the inventory object).
Test:
Tested on simics by adding a missing fru in inventory json
and introspecting it to get the primed version of the object.
Output:
root@rainier:/tmp# busctl introspect xyz.openbmc_project.Inventory.Manager /xyz/openbmc_project/inventory/system/chassis/motherboard/dasd_card_pyramid0
NAME TYPE SIGNATURE RESULT/VALUE FLAGS
com.ibm.ipzvpd.Location interface - - -
.LocationCode property s "U78DA.ND1.1234567-P1" emits-change writable
org.freedesktop.DBus.Introspectable interface - - -
.Introspect method - s -
org.freedesktop.DBus.Peer interface - - -
.GetMachineId method - s -
.Ping method - - -
org.freedesktop.DBus.Properties interface - - -
.Get method ss v -
.GetAll method s a{sv} -
.Set method ssv - -
.PropertiesChanged signal sa{sv}as - -
xyz.openbmc_project.Inventory.Item.DiskBackplane interface - - -
Tested in conjunction with this commit
<https://gerrit.openbmc-project.xyz/c/openbmc/meta-ibm/+/31821>
Change-Id: I4bf44e47b7cd1206555c42de43002c6aa8424517
Signed-off-by: Priyanga Ramasamy <priyanga24@in.ibm.com>
#Overview 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 here.
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.