summaryrefslogtreecommitdiffstats
path: root/src/usr/isteps/ucd
diff options
context:
space:
mode:
authorMike Baiocchi <mbaiocch@us.ibm.com>2019-03-25 23:15:24 -0500
committerNicholas E. Bofferding <bofferdn@us.ibm.com>2019-03-26 10:21:13 -0500
commitffdc6b255981c8b52e3f5513425ebbaa8dfeb675 (patch)
treeb1e6dcfe3390cb5baca2c58d3f1609d10dffb033 /src/usr/isteps/ucd
parentab6efc5935dceb9d7e5a7df64f1700fa909370c4 (diff)
downloadtalos-hostboot-ffdc6b255981c8b52e3f5513425ebbaa8dfeb675.tar.gz
talos-hostboot-ffdc6b255981c8b52e3f5513425ebbaa8dfeb675.zip
Add check to determine if a UCD's I2C Master is functional
Inside the code that loops over all the supported UCD devices for possibly updating their flash image, a check was added to make sure that the UCD's I2C Master target is functional. Change-Id: Id03bf20f0295a27f67f9da8da207934af710630f CQ:SW460918 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/75002 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Matthew Raybuck <matthew.raybuck@ibm.com> Reviewed-by: Ilya Smirnov <ismirno@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> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com>
Diffstat (limited to 'src/usr/isteps/ucd')
-rw-r--r--src/usr/isteps/ucd/updateUcdFlash.C15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/usr/isteps/ucd/updateUcdFlash.C b/src/usr/isteps/ucd/updateUcdFlash.C
index ce6eff490..d0e746c18 100644
--- a/src/usr/isteps/ucd/updateUcdFlash.C
+++ b/src/usr/isteps/ucd/updateUcdFlash.C
@@ -679,6 +679,21 @@ errlHndl_t updateAllUcdFlashImages(
"with HUID of 0x%08X",
TARGETING::get_huid(powerSequencer));
+ // Check that pI2cMasterTarget is functional because otherwise the UCD
+ // can't be accessed
+ TARGETING::HwasState l_hwasState =
+ pI2cMasterTarget->getAttr<TARGETING::ATTR_HWAS_STATE>();
+ if (l_hwasState.functional != true)
+ {
+ TRACFCOMP(g_trac_ucd, INFO_MRK
+ "updateAllUcdFlashImages: Skipping update on power sequencer HUID "
+ "= 0x%08X because its I2C Master HUID = 0x%08X is non-functional",
+ TARGETING::get_huid(powerSequencer),
+ TARGETING::get_huid(pI2cMasterTarget));
+
+ break;
+ }
+
const auto position = pI2cMasterTarget->
getAttr<TARGETING::ATTR_POSITION>();
OpenPOWER on IntegriCloud