diff options
author | Dan Crowell <dcrowell@us.ibm.com> | 2014-09-23 15:20:14 -0500 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2014-10-03 10:25:06 -0500 |
commit | a5f37a7efcfc85f4c58d526ecc8f9028bc9f26bb (patch) | |
tree | 1391cb5f4a5b292f6d4ee87dbe4ae532e5a26729 | |
parent | d33b1caf8ea052bac3b4be694e5d813c54a3c51a (diff) | |
download | talos-hostboot-a5f37a7efcfc85f4c58d526ecc8f9028bc9f26bb.tar.gz talos-hostboot-a5f37a7efcfc85f4c58d526ecc8f9028bc9f26bb.zip |
Invalid extended image call in scom code
Fixed the way the scom ffdc function handles the sentinel target
so that it doesn't call outside of the base image.
Backport: release-fips820
Backport: release-fips811
CQ: SW281145
Change-Id: Ic3dac729001f2fe81b987479c39adb343e7c4d41
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/13549
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Reviewed-by: Michael Baiocchi <baiocchi@us.ibm.com>
Tested-by: Jenkins Server
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
-rw-r--r-- | src/usr/scom/scom.C | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/usr/scom/scom.C b/src/usr/scom/scom.C index 6cded14e5..780d1fa86 100644 --- a/src/usr/scom/scom.C +++ b/src/usr/scom/scom.C @@ -5,7 +5,9 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* COPYRIGHT International Business Machines Corp. 2011,2014 */ +/* Contributors Listed Below - COPYRIGHT 2011,2014 */ +/* [+] International Business Machines Corp. */ +/* */ /* */ /* Licensed under the Apache License, Version 2.0 (the "License"); */ /* you may not use this file except in compliance with the License. */ @@ -571,7 +573,15 @@ void addScomFailFFDC( errlHndl_t i_err, // Read some error regs from scom ERRORLOG::ErrlUserDetailsLogRegister l_scom_data(i_target); bool addit = false; - TARGETING::TYPE l_type = i_target->getAttr<TARGETING::ATTR_TYPE>(); + TARGETING::TYPE l_type = TARGETING::TYPE_NA; + if( i_target == TARGETING::MASTER_PROCESSOR_CHIP_TARGET_SENTINEL ) + { + l_type = TARGETING::TYPE_PROC; + } + else + { + l_type = i_target->getAttr<TARGETING::ATTR_TYPE>(); + } //PBA scoms on the processor if( ((i_addr & 0xFFFFF000) == 0x00064000) |