summaryrefslogtreecommitdiffstats
path: root/src/usr/i2c
diff options
context:
space:
mode:
authorMatthew Raybuck <matthew.raybuck@ibm.com>2019-04-17 12:53:31 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2019-05-01 09:05:04 -0500
commit5f68c549965e0cebcb557026938ba57ff0aa8ba8 (patch)
treeff7d8613a33318ac2a0f2e0f61646facd94ae575 /src/usr/i2c
parentdecb0b6a03b108af9f5818ebd9dc7f95b3ce342b (diff)
downloadtalos-hostboot-5f68c549965e0cebcb557026938ba57ff0aa8ba8.tar.gz
talos-hostboot-5f68c549965e0cebcb557026938ba57ff0aa8ba8.zip
Gemini vs Explorer Presence Detection via SPD
Since the OCMB chip is held in reset until after presence detection the IDEC register cannot be read to differentiate between Gemini and Explorer chip types. To work around this issue, during the early part of IPL when presence detection is occurring the OCMB IDEC function will instead read the SPD and populate the necessary attributes with what is found there. That will be used to determine the difference between Gemini and Explorer until later when the OCMB IDEC register can be read from. At that point the IDEC read will be executed again and the data read from the OCMB IDEC register will be used to cross-check the data read from the SPD. Any discrepancies will be handled with predictive error logs. Change-Id: Ica664b06ff3488f48253d3ef02eff2d49c5d240d RTC: 208696 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76108 Reviewed-by: Christian R. Geddes <crgeddes@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> 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/usr/i2c')
-rw-r--r--src/usr/i2c/i2cTargetPres.C5
1 files changed, 0 insertions, 5 deletions
diff --git a/src/usr/i2c/i2cTargetPres.C b/src/usr/i2c/i2cTargetPres.C
index c3809f099..13bfa88c1 100644
--- a/src/usr/i2c/i2cTargetPres.C
+++ b/src/usr/i2c/i2cTargetPres.C
@@ -33,7 +33,6 @@
#include <errl/errlmanager.H>
#include "i2c_common.H"
-
extern trace_desc_t* g_trac_i2c;
//#define TRACSSCOMP(args...) TRACFCOMP(args)
@@ -223,10 +222,6 @@ errlHndl_t ocmbI2CPresencePerformOp(DeviceFW::OperationType i_opType,
{
errlHndl_t l_invalidateErrl = nullptr;
- // @TODO RTC 208696: Gemini vs Explorer Presence Detection via SPD
- // This function will be updated to differentiate between Explorer and
- // Gemini OCMB chips. For now, presense of an OCMB chip is inferred by
- // the presense of the eeprom.
bool l_ocmbPresent = EEPROM::eepromPresence(i_target);
memcpy(io_buffer, &l_ocmbPresent, sizeof(l_ocmbPresent));
OpenPOWER on IntegriCloud