commit | b6965f1358991c0b8beba67c7e481c81363d63da | [log] [tgz] |
---|---|---|
author | Alpana Kumari <alpankum@in.ibm.com> | Mon Jun 01 00:32:21 2020 -0500 |
committer | Santosh Puranik <santosh.puranik@in.ibm.com> | Mon Nov 02 16:25:18 2020 +0530 |
tree | 9635b1e9e0088cd272096e20979c15fa523d3233 | |
parent | 920408dd1ccbb8494f8e9e446bb3a5dc24edf2cd [diff] |
Support FRU Type in vpd tool Test: ./vpd-tool --dumpObject --object /system/chassis/motherboard/cpu0 [ { "/system/chassis/motherboard/cpu0": { "CC": "CB41", "DR": "A WAY PROC CUOD", "FN": "1234567", "LocationCode": "U78DA.ND1.1234567-P0-C15", "PN": "1345678", "SN": "YLAB41010000", "TYPE": "fruAndModule", <================================= "type": "xyz.openbmc_project.Inventory.Item.Cpu" } } ] ./vpd-tool --dumpObject --object /system/chassis/motherboard/cpu1 [ { "/system/chassis/motherboard/cpu1": { "CC": "BB41", "DR": "A WAY PROC CUOD", "FN": "1234567", "LocationCode": "U78DA.ND1.1234567-P0-C15", "PN": "1345678", "SN": "YLAB41010000", "TYPE": "moduleOnly", <================================== "type": "xyz.openbmc_project.Inventory.Item.Cpu" } } ] ./vpd-tool --dumpObject --object /system/chassis/motherboard/ebmc_card_bmc [ { "/system/chassis/motherboard/ebmc_card_bmc": { "CC": "6B58", "DR": "EBMC ", "FN": "F191014", "LocationCode": "U78DA.ND1.1234567-P0-C5", "PN": "PN12345", "SN": "YL6B58010000", "TYPE": "FRU", <================================= "type": "xyz.openbmc_project.Inventory.Item.Bmc" } } ] Change-Id: Ie36631913481514e9f06bd50415a3d6b057f8510 Signed-off-by: Alpana Kumari <alpankum@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.