diff options
author | Stephen Cprek <smcprek@us.ibm.com> | 2014-07-07 10:24:06 -0500 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2014-09-15 17:14:29 -0500 |
commit | af6b57dcb79e522d6a4e140f7952f58b3419cee1 (patch) | |
tree | 26664810494f02ff76f4ac6955d1a017f4ddc14e /src/usr/pnor | |
parent | 574d17e95e5f640054c0e11a6fb9206e61e4bc81 (diff) | |
download | talos-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.C | 36 | ||||
-rw-r--r-- | src/usr/pnor/test/pnorddtest.H | 12 |
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, |