| commit | abb87eda2a79b2c371e3b329c3c911838e6e84c8 | [log] [tgz] |
|---|---|---|
| author | PriyangaRamasamy <priyanga24@in.ibm.com> | Tue Nov 19 17:25:35 2019 +0530 |
| committer | Priyanga Ramasamy <priyanga24@in.ibm.com> | Fri Jun 19 19:24:59 2020 +0530 |
| tree | 677bc69f7b106ddc0712eb17b83f1cae1ecf1f97 | |
| parent | c0aeac39da9efc460ca1c8a6e42f0a12234e306a [diff] |
IBM VPD main app & KeywordVPD parser:
IBM VPD main application triggers either
'IPZ/Keyword' type VPD parser. This commit also has
keyword VPD parser code.
Flag to enable IBM VPD main parser is
"--enable-ibm-parser"
Flag to debug the keyword vpd parser is
"--enable-debug-kw-vpd".
Steps to build and execute:
./bootstrap.sh
./configure ${CONFIGURE_FLAGS} --enable-ibm-parser
make
To run test cases:
make check
Test:
Tested on a rainier system to parse
[IPZ and Keyword] types of VPD.
Signed-off-by: PriyangaRamasamy <priyanga24@in.ibm.com>
Change-Id: Ie4466551a60acd16ad9e4852f9b4d14c51f0a44d
#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.