diff options
author | Matthew Raybuck <matthew.raybuck@ibm.com> | 2019-05-22 08:45:16 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2019-05-31 08:51:28 -0500 |
commit | 85c03c9b4f645f3be7b7aca00ead86335b5db7a5 (patch) | |
tree | e6ca6eb1548e998ada307fd49cdaaad3c10f9c1f /src/include/usr/vpd | |
parent | abf11187330d96f03a5b7960e2b5d187be739761 (diff) | |
download | talos-hostboot-85c03c9b4f645f3be7b7aca00ead86335b5db7a5.tar.gz talos-hostboot-85c03c9b4f645f3be7b7aca00ead86335b5db7a5.zip |
Add cache/hardware comparison functions for SPD classes of VPD content
This commit adds necessary support for ensuring the eeprom cache is in
sync with hardware for EEPROM_CONTENT_TYPE DDIMM and ISDIMM. Support for
IBM_MVPD and IBM_FRUVPD will be added in a later commmit.
Change-Id:I0392c3f6b5dae986c03b9a16cef99a1529dade31
RTC:203788
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77119
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/include/usr/vpd')
-rw-r--r-- | src/include/usr/vpd/vpd_if.H | 21 | ||||
-rw-r--r-- | src/include/usr/vpd/vpdreasoncodes.H | 2 |
2 files changed, 22 insertions, 1 deletions
diff --git a/src/include/usr/vpd/vpd_if.H b/src/include/usr/vpd/vpd_if.H index 4e63a0965..a995fe06c 100644 --- a/src/include/usr/vpd/vpd_if.H +++ b/src/include/usr/vpd/vpd_if.H @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2013,2018 */ +/* Contributors Listed Below - COPYRIGHT 2013,2019 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -108,6 +108,25 @@ namespace VPD errlHndl_t ensureCacheIsInSync ( TARGETING::Target * i_target ); /** + * @brief This function checks if the eeprom cache for the target is in + * sync with hardware and returns the result in o_isInSync. + * + * @param[in] i_target Target device + * + * + * @param[in] i_eepromType Eeprom content type of target device + * + * @param[out] o_isInSync true if part and serial numbers in cache match + * hardware. Otherwise, false. + * + * @return errlHndl_t - NULL if successful, otherwise a pointer to the + * error log. + */ + errlHndl_t ensureEepromCacheIsInSync(TARGETING::Target * i_target, + TARGETING::EEPROM_CONTENT_TYPE i_eepromType, + bool & o_isInSync); + + /** * @brief This function invalidates the VPD data in the PNOR cache. * @param[in] i_target - Target device * @return errlHndl_t - NULL if successful, otherwise a pointer to the diff --git a/src/include/usr/vpd/vpdreasoncodes.H b/src/include/usr/vpd/vpdreasoncodes.H index 8d9d6943b..9307af7b7 100644 --- a/src/include/usr/vpd/vpdreasoncodes.H +++ b/src/include/usr/vpd/vpdreasoncodes.H @@ -101,6 +101,8 @@ enum vpdModuleId VPD_OCMB_GET_SPD = 0x90, VPD_OCMB_SPD_PERFORM_OP = 0x91, + VPD_READ_FROM_EEPROM_SOURCE = 0x92, + VPD_GET_MEMTYPE = 0x93, }; |