diff options
-rw-r--r-- | src/makefile | 3 | ||||
-rw-r--r-- | src/usr/secureboot/smf/test/testsmf.H | 21 |
2 files changed, 17 insertions, 7 deletions
diff --git a/src/makefile b/src/makefile index 49534fa0d..52b44336a 100644 --- a/src/makefile +++ b/src/makefile @@ -262,8 +262,7 @@ TESTCASE_MODULES += $(if $(CONFIG_VPO_COMPILE),,testruntime) TESTCASE_MODULES += testintr TESTCASE_MODULES += testfapi2 TESTCASE_MODULES += $(if $(CONFIG_EARLY_TESTCASES) && $(FSP_BUILD) ,,testnvram) -#TODO RTC: 206800 Investigate why SMF tests fail in Axone -TESTCASE_MODULES += $(if $(CONFIG_AXONE_BRING_UP),,testsmf) +TESTCASE_MODULES += testsmf TESTCASE_MODULES += testexpaccess TESTCASE_MODULES += testexpupd TESTCASE_MODULES += testmmio diff --git a/src/usr/secureboot/smf/test/testsmf.H b/src/usr/secureboot/smf/test/testsmf.H index 81a50a6e0..fb3993724 100644 --- a/src/usr/secureboot/smf/test/testsmf.H +++ b/src/usr/secureboot/smf/test/testsmf.H @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2018 */ +/* Contributors Listed Below - COPYRIGHT 2018,2019 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -29,6 +29,7 @@ #include <errl/errlmanager.H> #include <targeting/common/target.H> #include <targeting/common/targetservice.H> +#include <targeting/common/utilFilter.H> #include <hbotcompid.H> #include <secureboot/smf.H> #include <secureboot/secure_reasoncodes.H> @@ -346,9 +347,14 @@ public: break; } - if(l_smfBarSize != DISTRIBUTE_EXACT_SMF_AMT) + // Memory is distributed across processors so need to divide the + // expected results by the number of processors + TARGETING::TargetHandleList l_procList; + TARGETING::getAllChips(l_procList, TARGETING::TYPE_PROC, true); + + if(l_smfBarSize != (DISTRIBUTE_EXACT_SMF_AMT/l_procList.size())) { - TS_FAIL("testDistributeExactAmt: Unexpected amount of memory allocated. Expected: 0x%x, actual 0x%x", DISTRIBUTE_EXACT_SMF_AMT, l_smfBarSize); + TS_FAIL("testDistributeExactAmt: Unexpected amount of memory allocated. Expected: 0x%x, actual 0x%x", (DISTRIBUTE_EXACT_SMF_AMT/l_procList.size()), l_smfBarSize); } } while(0); @@ -400,9 +406,14 @@ public: break; } - if(l_smfBarSize != DISTRIBUTE_EXACT_SMF_AMT) + // Memory is distributed across processors so need to divide the + // expected results by the number of processors + TARGETING::TargetHandleList l_procList; + TARGETING::getAllChips(l_procList, TARGETING::TYPE_PROC, true); + + if(l_smfBarSize != (DISTRIBUTE_EXACT_SMF_AMT/l_procList.size())) { - TS_FAIL("testDistributeNotExactAmt: Unexpected amount of memory allocated. Expected: 0x%x, actual 0x%x", DISTRIBUTE_EXACT_SMF_AMT, l_smfBarSize); + TS_FAIL("testDistributeNotExactAmt: Unexpected amount of memory allocated. Expected: 0x%x, actual 0x%x", (DISTRIBUTE_EXACT_SMF_AMT/l_procList.size()), l_smfBarSize); } } while(0); |