commit | 4788e1ba0a00d504e1fcdb34eb9356e22850de18 | [log] [tgz] |
---|---|---|
author | Sunny Srivastava <sunnsr25@in.ibm.com> | Tue Mar 19 02:11:07 2024 -0500 |
committer | Sunny Srivastava <sunnsr25@in.ibm.com> | Fri Mar 22 01:35:10 2024 -0500 |
tree | dddf1e764290a3eff4000665930b170752a0efab | |
parent | 0b33b34f8b4ca761b2daa700849ee4ed0a9e0551 [diff] |
Retry for file visibility in user space In some corner cases, there is a delay between the parser code coming up against udev generated due to binding the driver, and the file appearing in user space. As a result the check for file existence fails for those situations and post fail action gets executed. This removes the GPIO line to the file. Whereas, parser code will be in process of reading that file at the same time. Hence closing the GPIO line causes file read error on parser side. The timer is to buy some time for file to appear in user space before cutting off the GPIO line to it. Test: This was a script driven testing where system was brought down and again restarted after random time interval. Code has been tested against that script and it is working fine. Change-Id: I8383372b27e48bf1cbc569562e396a0bceb908e5 Signed-off-by: Sunny Srivastava <sunnsr25@in.ibm.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 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.