summaryrefslogtreecommitdiffstats
path: root/src/usr/pnor
diff options
context:
space:
mode:
authorStephen Cprek <smcprek@us.ibm.com>2014-07-07 10:24:06 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2014-09-15 17:14:29 -0500
commitaf6b57dcb79e522d6a4e140f7952f58b3419cee1 (patch)
tree26664810494f02ff76f4ac6955d1a017f4ddc14e /src/usr/pnor
parent574d17e95e5f640054c0e11a6fb9206e61e4bc81 (diff)
downloadtalos-hostboot-af6b57dcb79e522d6a4e140f7952f58b3419cee1.tar.gz
talos-hostboot-af6b57dcb79e522d6a4e140f7952f58b3419cee1.zip
Add BMC Attr override support
Change-Id: I1a42fec21189c55c75e9073527867e4e95528794 RTC: 108376 CMVC-Corec: 931324 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/11995 Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com> Tested-by: Jenkins Server
Diffstat (limited to 'src/usr/pnor')
-rw-r--r--src/usr/pnor/pnorrp.C36
-rw-r--r--src/usr/pnor/test/pnorddtest.H12
2 files changed, 25 insertions, 23 deletions
diff --git a/src/usr/pnor/pnorrp.C b/src/usr/pnor/pnorrp.C
index f0507aa83..3b6790d88 100644
--- a/src/usr/pnor/pnorrp.C
+++ b/src/usr/pnor/pnorrp.C
@@ -56,22 +56,23 @@ TRAC_INIT(&g_trac_pnor, PNOR_COMP_NAME, 2*KILOBYTE, TRACE::BUFFER_SLOW); //2K
* Eyecatcher strings for PNOR TOC entries
*/
const char* cv_EYECATCHER[] = {
- "part", /**< PNOR::TOC : Table of Contents */
- "HBI", /**< PNOR::HB_EXT_CODE : Hostboot Extended Image */
- "GLOBAL", /**< PNOR::GLOBAL_DATA : Global Data */
- "HBB", /**< PNOR::HB_BASE_CODE : Hostboot Base Image */
- "SBEC", /**< PNOR::CENTAUR_SBE : Centaur Self-Boot Engine image */
- "SBE", /**< PNOR::SBE_IPL : Self-Boot Enginer IPL image */
- "WINK", /**< PNOR::WINK : Sleep Winkle Reference image */
- "PAYLOAD",/**< PNOR::PAYLOAD : HAL/OPAL */
- "HBRT", /**< PNOR::HB_RUNTIME : Hostboot Runtime (for Sapphire) */
- "HBD", /**< PNOR::HB_DATA : Hostboot Data */
- "GUARD", /**< PNOR::GUARD_DATA : Hostboot Data */
- "HBEL", /**< PNOR::HB_ERRLOGS : Hostboot Error log Repository */
- "DJVPD", /**< PNOR::DIMM_JEDEC_VPD: Dimm JEDEC VPD */
- "MVPD", /**< PNOR::MODULE_VPD : Module VPD */
- "CVPD", /**< PNOR::CENTAUR_VPD : Centaur VPD */
- "TEST", /**< PNOR::TEST : Test space for PNOR*/
+ "part", /**< PNOR::TOC : Table of Contents */
+ "HBI", /**< PNOR::HB_EXT_CODE : Hostboot Extended Image */
+ "GLOBAL", /**< PNOR::GLOBAL_DATA : Global Data */
+ "HBB", /**< PNOR::HB_BASE_CODE : Hostboot Base Image */
+ "SBEC", /**< PNOR::CENTAUR_SBE : Centaur Self-Boot Engine image */
+ "SBE", /**< PNOR::SBE_IPL : Self-Boot Enginer IPL image */
+ "WINK", /**< PNOR::WINK : Sleep Winkle Reference image */
+ "PAYLOAD", /**< PNOR::PAYLOAD : HAL/OPAL */
+ "HBRT", /**< PNOR::HB_RUNTIME : Hostboot Runtime (for Sapphire) */
+ "HBD", /**< PNOR::HB_DATA : Hostboot Data */
+ "GUARD", /**< PNOR::GUARD_DATA : Hostboot Data */
+ "HBEL", /**< PNOR::HB_ERRLOGS : Hostboot Error log Repository */
+ "DJVPD", /**< PNOR::DIMM_JEDEC_VPD : Dimm JEDEC VPD */
+ "MVPD", /**< PNOR::MODULE_VPD : Module VPD */
+ "CVPD", /**< PNOR::CENTAUR_VPD : Centaur VPD */
+ "ATTROVER", /**< PNOR::ATTR_OVER : Attribute Override */
+ "TEST", /**< PNOR::TEST : Test space for PNOR*/
//Not currently used
// "XXX", /**< NUM_SECTIONS : Used as invalid entry */
@@ -810,7 +811,6 @@ errlHndl_t PnorRP::readFromDevice( uint64_t i_offset,
data_to_read,
read_size,
DEVICE_PNOR_ADDRESS(i_chip,i_offset) );
-
if( l_errhdl )
{
TRACFCOMP(g_trac_pnor, "PnorRP::readFromDevice> Error from device : RC=%X", l_errhdl->reasonCode() );
@@ -829,7 +829,7 @@ errlHndl_t PnorRP::readFromDevice( uint64_t i_offset,
// create an error if we couldn't correct things
if( ecc_stat == PNOR::ECC::UNCORRECTABLE )
{
- TRACFCOMP( g_trac_pnor, "PnorRP::readFromDevice> Uncorrectable ECC error : chip=%d, offset=0x%.X", i_chip, i_offset );
+ TRACFCOMP( g_trac_pnor, "PnorRP::readFromDevice> Uncorrectable ECC error : chip=%d,offset=0x%.X", i_chip, i_offset );
// Need to shutdown here instead of creating an error log
// because the bad page could be critical to the regular
diff --git a/src/usr/pnor/test/pnorddtest.H b/src/usr/pnor/test/pnorddtest.H
index d762875b0..97273cc34 100644
--- a/src/usr/pnor/test/pnorddtest.H
+++ b/src/usr/pnor/test/pnorddtest.H
@@ -130,7 +130,8 @@ class PnorDdTest : public CxxTest::TestSuite
// Perform PnorDD Write 1
- uint64_t l_address = base_address+0x100;
+ uint64_t l_address = base_address +
+ PNOR::pnorTestSec_readwrite_offset;
uint64_t l_writeData = 0x12345678FEEDB0B0;
l_size = sizeof(uint64_t);
l_err = deviceWrite(l_testTarget,
@@ -153,7 +154,7 @@ class PnorDdTest : public CxxTest::TestSuite
}
// Perform PnorDD Write 2
- l_address = base_address+0x108;
+ l_address = base_address + PNOR::pnorTestSec_readwrite_offset + 0x8;
l_writeData = 0xFEEDBEEF000ABCDE;
l_size = sizeof(uint64_t);
l_err = deviceWrite(l_testTarget,
@@ -176,7 +177,7 @@ class PnorDdTest : public CxxTest::TestSuite
}
// Perform PnorDD read 1
- l_address = base_address+0x100;
+ l_address = base_address + PNOR::pnorTestSec_readwrite_offset;
uint64_t l_readData = 0;
l_size = sizeof(uint64_t);
l_err = deviceRead(l_testTarget,
@@ -206,7 +207,7 @@ class PnorDdTest : public CxxTest::TestSuite
}
// Perform PnorDD read 2
- l_address = base_address+0x108;
+ l_address = base_address + PNOR::pnorTestSec_readwrite_offset + 0x8;
l_size = sizeof(uint64_t);
l_err = deviceRead(l_testTarget,
&l_readData,
@@ -265,7 +266,8 @@ class PnorDdTest : public CxxTest::TestSuite
break;
}
- uint64_t l_address = base_address+0x120;
+ uint64_t l_address = base_address +
+ PNOR::pnorTestSec_smartwrite_offset;
uint64_t l_writeData = 0xAAAAAAAA55555555;
l_size = sizeof(uint64_t);
l_err = deviceWrite(l_testTarget,
OpenPOWER on IntegriCloud