diff options
author | Brian Silver <bsilver@us.ibm.com> | 2016-06-08 07:02:38 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2016-06-22 14:18:19 -0400 |
commit | db5ae2e4c6643b00ee92fc66cd367a678864413f (patch) | |
tree | 4efe1fa3ee5dc2ec196fe3df178772ff14c76bee /src/import | |
parent | de4ae93cc155e9a6ffb78cddf3918a20fd926afd (diff) | |
download | talos-hostboot-db5ae2e4c6643b00ee92fc66cd367a678864413f.tar.gz talos-hostboot-db5ae2e4c6643b00ee92fc66cd367a678864413f.zip |
Add unmasking of FIR for memdiags
Change-Id: Icc64171ffc9d2ee9aec113b290c2952a5dac0c22
RTC: 155733
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/25493
Tested-by: Jenkins Server
Tested-by: Hostboot CI
Reviewed-by: Marc Gollub <gollub@us.ibm.com>
Reviewed-by: STEPHEN GLANCY <sglancy@us.ibm.com>
Reviewed-by: Louis Stermole <stermole@us.ibm.com>
Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/25495
Tested-by: FSP CI Jenkins
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/import')
3 files changed, 14 insertions, 6 deletions
diff --git a/src/import/chips/p9/procedures/hwp/memory/lib/mcbist/mcbist.H b/src/import/chips/p9/procedures/hwp/memory/lib/mcbist/mcbist.H index ef2dfd9ce..067b1362b 100644 --- a/src/import/chips/p9/procedures/hwp/memory/lib/mcbist/mcbist.H +++ b/src/import/chips/p9/procedures/hwp/memory/lib/mcbist/mcbist.H @@ -583,7 +583,7 @@ inline subtest_t<T> init_subtest() /// - FORCE_PAUSE_AFTER_ADDR - don't pause after current address /// - FORCE_PAUSE_AFTER_SUBTEST - no pause after subtest /// - ENABLE_SPEC_ATTN - disabled -/// - ENABLE_HOST_ATTN - disabled +/// - ENABLE_HOST_ATTN - enabled /// template< fapi2::TargetType T, typename TT = mcbistTraits<T> > @@ -618,6 +618,9 @@ class program // By default if there's an error, we stop after the errored address iv_config.insertFromRight<TT::CFG_PAUSE_ON_ERROR_MODE, TT::CFG_PAUSE_ON_ERROR_MODE_LEN>( stop_conditions::STOP_AFTER_ADDRESS); + + // All mcbist attentions are host attentions, special attention bit is already clear + iv_config.setBit<TT::CFG_ENABLE_HOST_ATTN>(); } /// diff --git a/src/import/chips/p9/procedures/hwp/memory/p9_mss_memdiag.C b/src/import/chips/p9/procedures/hwp/memory/p9_mss_memdiag.C index a89ed4186..55b48cfaa 100644 --- a/src/import/chips/p9/procedures/hwp/memory/p9_mss_memdiag.C +++ b/src/import/chips/p9/procedures/hwp/memory/p9_mss_memdiag.C @@ -35,6 +35,8 @@ #include <lib/mcbist/memdiags.H> #include <lib/mcbist/mcbist.H> +#include <lib/fir/memdiags_fir.H> + using fapi2::TARGET_TYPE_MCBIST; extern "C" @@ -48,6 +50,9 @@ extern "C" { FAPI_INF("Start memdiag"); + // Unmask the memdiags FIR + FAPI_TRY( mss::unmask_memdiags_errors(i_target) ); + FAPI_TRY( memdiags::sf_init(i_target, mss::mcbist::PATTERN_0) ); // TODO RTC:153951 diff --git a/src/import/chips/p9/procedures/hwp/memory/tests/mss_memdiags_ut.C b/src/import/chips/p9/procedures/hwp/memory/tests/mss_memdiags_ut.C index eee768350..1e20269fb 100644 --- a/src/import/chips/p9/procedures/hwp/memory/tests/mss_memdiags_ut.C +++ b/src/import/chips/p9/procedures/hwp/memory/tests/mss_memdiags_ut.C @@ -219,7 +219,7 @@ TEST_CASE_METHOD(mss::test::mcbist_target_test_fixture, "memdiags", "[memdiags]" { fapi2::buffer<uint64_t> l_read; REQUIRE_FALSE( mss::getScom(i_target, MCBIST_MCBCFGQ, l_read) ); - REQUIRE( 0x0000000000000080 == l_read ); + REQUIRE( 0x0000000000000081 == l_read ); } // Load thresholds - default state (expecting 0's) @@ -312,7 +312,7 @@ TEST_CASE_METHOD(mss::test::mcbist_target_test_fixture, "memdiags", "[memdiags]" { fapi2::buffer<uint64_t> l_read; REQUIRE_FALSE( mss::getScom(i_target, MCBIST_MCBCFGQ, l_read) ); - REQUIRE( 0x0000000000000080 == l_read ); + REQUIRE( 0x0000000000000081 == l_read ); } // Load thresholds - default state (expecting 0's) @@ -405,7 +405,7 @@ TEST_CASE_METHOD(mss::test::mcbist_target_test_fixture, "memdiags", "[memdiags]" { fapi2::buffer<uint64_t> l_read; REQUIRE_FALSE( mss::getScom(i_target, MCBIST_MCBCFGQ, l_read) ); - REQUIRE( 0x00000000000000a8 == l_read ); + REQUIRE( 0x00000000000000a9 == l_read ); } // Load thresholds - default state (expecting 0's) @@ -572,7 +572,7 @@ TEST_CASE_METHOD(mss::test::mcbist_target_test_fixture, "memdiags", "[memdiags]" { fapi2::buffer<uint64_t> l_read; REQUIRE_FALSE( mss::getScom(i_target, MCBIST_MCBCFGQ, l_read) ); - REQUIRE( 0x0000000000000000 == l_read ); + REQUIRE( 0x0000000000000001 == l_read ); } @@ -623,7 +623,7 @@ TEST_CASE_METHOD(mss::test::mcbist_target_test_fixture, "memdiags", "[memdiags]" { fapi2::buffer<uint64_t> l_read; REQUIRE_FALSE( mss::getScom(i_target, MCBIST_MCBCFGQ, l_read) ); - REQUIRE( 0x0000000020000020 == l_read ); + REQUIRE( 0x0000000020000021 == l_read ); } } |