diff options
author | Christian Geddes <crgeddes@us.ibm.com> | 2019-01-23 14:43:37 -0600 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2019-02-16 09:10:13 -0600 |
commit | e6832f74ac222be90b6719a33613863698239ce4 (patch) | |
tree | 58f0f0010bd984b11c8ce200e3dabae2b0bbd91a /src/include/usr/i2c/i2creasoncodes.H | |
parent | bc80fc6b84359fa03c4212162e3e548dadcd8a9c (diff) | |
download | talos-hostboot-e6832f74ac222be90b6719a33613863698239ce4.tar.gz talos-hostboot-e6832f74ac222be90b6719a33613863698239ce4.zip |
Add new path in EEPROM device op to allow reading from new EECACHE
Recently a new EECACHE section was introduced to Hostboot. This section
gets populated with a copy of every PRIMARY_VPD eeprom (someday could
contain other eeprom roles also) during host_discover_targets. This
commit add support to allow users to select where they want to perform
their EEPROM device operation. If they pass CACHE to the deviceOp macro
then a read will come from the pnor cache, writes will write to pnor
cache and then also write to the eeprom HW. If HARDWARE is passed in
then reads and writes will be directly done on the eeprom hardware.
If AUTOSELECT is passed the code will check our cache to see if we have
a copy of the eeprom in question, if we have a copy we will go the
CACHE path, if no copy exists we will go the HARDWARE path. Along with
this change some reorganization was done w/ the eeprom related files.
RTC: 196805
Change-Id: If2c4e5d3e338a1a10780740c1a019eb4af003b73
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/70822
Reviewed-by: Matt Derksen <mderkse1@us.ibm.com>
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Roland Veloz <rveloz@us.ibm.com>
Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/include/usr/i2c/i2creasoncodes.H')
-rw-r--r-- | src/include/usr/i2c/i2creasoncodes.H | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/src/include/usr/i2c/i2creasoncodes.H b/src/include/usr/i2c/i2creasoncodes.H index a723e4ec8..6b08aefc2 100644 --- a/src/include/usr/i2c/i2creasoncodes.H +++ b/src/include/usr/i2c/i2creasoncodes.H @@ -66,8 +66,6 @@ enum i2cModuleId READ_I2C_ATTRIBUTES = 0x10, I2C_ACCESS_MUX = 0x11, I2C_GENERIC_PRES_DETECT = 0x12, - I2C_CACHE_EEPROM = 0x13, - I2C_CLEAR_EECACHE = 0x14, }; @@ -103,11 +101,7 @@ enum i2cReasonCode I2C_MUX_TARGET_NON_FUNCTIONAL = I2C_COMP_ID | 0x15, // The MUX target is non functional I2C_INVALID_LENGTH = I2C_COMP_ID | 0x16, // Invalid data buffer length passed to function I2C_NULL_MASTER_TARGET = I2C_COMP_ID | 0x17, // Target Service's toPath() returned nullptr for target - I2C_FAILED_TO_FLUSH_CONTENTS = I2C_COMP_ID | 0x18, // Error occured while trying to flush the mmio pages out - // containing contents of an EEPROM's cached data in the EECACHE - // PNOR section - I2C_FAILED_TO_FLUSH_HEADER = I2C_COMP_ID | 0x19, // Error occured while trying to flush the mmio page out -}; // containing EECACHE header the to pnor +}; enum UserDetailsTypes |