diff options
author | Bill Hoffa <wghoffa@us.ibm.com> | 2019-01-30 09:49:50 -0600 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2019-03-01 14:17:42 -0600 |
commit | 7364f2447d187b1b7dfff42403db051c4fc7e4e4 (patch) | |
tree | cbb35a98c6bf9e455fbdb4fbdda25c2e02deeb8c /src/usr/pnor | |
parent | 877a032b90cd231cb7a75df4b29955b957a8f06b (diff) | |
download | blackbird-hostboot-7364f2447d187b1b7dfff42403db051c4fc7e4e4.tar.gz blackbird-hostboot-7364f2447d187b1b7dfff42403db051c4fc7e4e4.zip |
Initialize and test alt-master PNOR access in all boots
- Update to istep 10 (call_host_slave_sbe_update) to validate
the alternate master pnor chip in all boots (no-op for systems
with only one pnor chip)
- Updates to pnor callout logic to callout as a PNOR part for
several of the error paths
Change-Id: I9218f9a14496444288ea7985e1fb080c25f7f201
RTC: 200449
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/71489
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@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: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/pnor')
-rw-r--r-- | src/usr/pnor/pnor_sfcdd.C | 12 | ||||
-rw-r--r-- | src/usr/pnor/pnorvalid.C | 35 |
2 files changed, 29 insertions, 18 deletions
diff --git a/src/usr/pnor/pnor_sfcdd.C b/src/usr/pnor/pnor_sfcdd.C index a3332afe5..fe3f0cbae 100644 --- a/src/usr/pnor/pnor_sfcdd.C +++ b/src/usr/pnor/pnor_sfcdd.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2011,2018 */ +/* Contributors Listed Below - COPYRIGHT 2011,2019 */ /* [+] Google Inc. */ /* [+] International Business Machines Corp. */ /* */ @@ -420,10 +420,16 @@ PnorSfcDD::PnorSfcDD( TARGETING::Target* i_target ) if( l_err ) { - TRACFCOMP( g_trac_pnor, "Failure to initialize the PNOR logic, shutting down :: RC=%.4X", ERRL_GETRC_SAFE(l_err) ); + TRACFCOMP( g_trac_pnor, "Failure to initialize the PNOR logic :: RC=%.4X", ERRL_GETRC_SAFE(l_err) ); l_err->collectTrace(PNOR_COMP_NAME); ERRORLOG::errlCommit(l_err,PNOR_COMP_ID); - INITSERVICE::doShutdown( PNOR::RC_PNOR_INIT_FAILURE ); + + //Only shutdown if this error occurs on the master proc + if (TARGETING::MASTER_PROCESSOR_CHIP_TARGET_SENTINEL == iv_target) + { + TRACFCOMP( g_trac_pnor, "PNOR Error on Master Proc, shutting down"); + INITSERVICE::doShutdown( PNOR::RC_PNOR_INIT_FAILURE ); + } } TRACFCOMP(g_trac_pnor, EXIT_MRK "PnorSfcDD::PnorSfcDD()" ); diff --git a/src/usr/pnor/pnorvalid.C b/src/usr/pnor/pnorvalid.C index 91b10109f..5f747e5c5 100644 --- a/src/usr/pnor/pnorvalid.C +++ b/src/usr/pnor/pnorvalid.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2014,2018 */ +/* Contributors Listed Below - COPYRIGHT 2014,2019 */ /* [+] Google Inc. */ /* [+] International Business Machines Corp. */ /* */ @@ -191,6 +191,13 @@ errlHndl_t validateAltMaster( void ) TARGETING::get_huid(procList[i]), l_err->eid(), l_err->reasonCode()); + l_err->addPartCallout( + procList[i], + HWAS::PNOR_PART_TYPE, + HWAS::SRCI_PRIORITY_LOW, + HWAS::NO_DECONFIG, + HWAS::GARD_NULL); + l_err->collectTrace(PNOR_COMP_NAME); // if there was an error, commit here and then proceed to @@ -216,13 +223,12 @@ errlHndl_t validateAltMaster( void ) TARGETING::get_huid(procList[i]), l_err->eid(), l_err->reasonCode()); - // Limited in callout: no PNOR target, so calling out processor - l_err->addHwCallout( - procList[i], - HWAS::SRCI_PRIORITY_HIGH, - HWAS::NO_DECONFIG, - HWAS::GARD_NULL ); - + l_err->addPartCallout( + procList[i], + HWAS::PNOR_PART_TYPE, + HWAS::SRCI_PRIORITY_HIGH, + HWAS::NO_DECONFIG, + HWAS::GARD_NULL); l_err->collectTrace(PNOR_COMP_NAME); @@ -260,13 +266,12 @@ errlHndl_t validateAltMaster( void ) TARGETING::get_huid(procList[i]), 0); - // Limited in callout: no PNOR target, so calling out processor - l_err->addHwCallout( - procList[i], - HWAS::SRCI_PRIORITY_HIGH, - HWAS::NO_DECONFIG, - HWAS::GARD_NULL ); - + l_err->addPartCallout( + procList[i], + HWAS::PNOR_PART_TYPE, + HWAS::SRCI_PRIORITY_HIGH, + HWAS::NO_DECONFIG, + HWAS::GARD_NULL); TRACFBIN(g_trac_pnor, "tocBuffer", tocBuffer, 0x20); |