commit | 65b836015845bc911216662bf5dba3c5c49ca1bb | [log] [tgz] |
---|---|---|
author | Alpana Kumari <alpankum@in.ibm.com> | Tue Sep 01 00:24:56 2020 -0500 |
committer | Santosh Puranik <santosh.puranik@in.ibm.com> | Mon Nov 02 22:25:49 2020 +0530 |
tree | 3c5fc5798cb4327a5ed9bcd56380457d2e51383d | |
parent | e12b181b3a038ef789ed480d8acc506eaa396835 [diff] |
support multiple device trees in the same BMC image This commit checks for current system type and if it is changed from last boot, it loads new/appropriate device tree and reboot the system. Tested- ========================================= Test Case 1: first boot when env not defined triggerred system vpd collection- DBG: systemType is: 50001000 DBG: newDeviceTree: fw_dt2 U-Boot environment is not set. Updating... DBG: rebooting... root@rainier:/tmp# Connection to rain4bmc closed by remote host. Connection to rain4bmc closed. ======================================== Test case 2- triggerred system vpd collection- DBG: systemType is: 50001001 DBG: newDeviceTree: fw_dt1 U-Boot environment is not updated. Updating... DBG: rebooting... root@rainier:/tmp# Connection to rain4bmc closed by remote host. Connection to rain4bmc closed. alpana07> ssh -k root@rain4bmc root@rain4bmc's password: printenv ... bootside=b devTree=fw_dt1 root@rainier:~# ========================================= Test case 3- triggerred system vpd collection again- DBG: systemType is: 50001001 DBG: newDeviceTree: fw_dt1 U-Boot environment is Updated. root@rainier:~# fw_printenv ... bootside=b devTree=fw_dt1 ========================================= Change-Id: I28bce8ced4a970e1818b4f4f613bd062647a4d3a 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.