diff options
author | Christian Geddes <crgeddes@us.ibm.com> | 2019-04-19 13:54:45 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2019-04-23 09:29:21 -0500 |
commit | 2a292b1a81eac36a6307325040483ca7891c150e (patch) | |
tree | ed29efa53ddbeb1861dbfb3dd0d2e33353fa2f4a /src/usr/isteps/istep13 | |
parent | f39b02dcad91693ec158c4f96146cd922153fd6f (diff) | |
download | talos-hostboot-2a292b1a81eac36a6307325040483ca7891c150e.tar.gz talos-hostboot-2a292b1a81eac36a6307325040483ca7891c150e.zip |
Compile and call exp_draminit_mc
Per the P9A IPL Flow documentation we must call exp_draminit_mc during
istep 13.12. On hardware this requires exp_draminit to have been called.
But in simulation it shouldnt matter. I make this note because at the
time of writing the the exp_draminit HWP is not being called.
RTC: 195556
Change-Id: I2db07c461cf9f10b85d51c091964b62574abb62e
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76256
Reviewed-by: Matt Derksen <mderkse1@us.ibm.com>
Reviewed-by: Glenn Miles <milesg@ibm.com>
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/isteps/istep13')
-rw-r--r-- | src/usr/isteps/istep13/call_mss_draminit_mc.C | 56 | ||||
-rw-r--r-- | src/usr/isteps/istep13/makefile | 67 |
2 files changed, 91 insertions, 32 deletions
diff --git a/src/usr/isteps/istep13/call_mss_draminit_mc.C b/src/usr/isteps/istep13/call_mss_draminit_mc.C index cee7771bf..0c7136298 100644 --- a/src/usr/isteps/istep13/call_mss_draminit_mc.C +++ b/src/usr/isteps/istep13/call_mss_draminit_mc.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2015,2017 */ +/* Contributors Listed Below - COPYRIGHT 2015,2019 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -44,8 +44,13 @@ //From Import Directory (EKB Repository) #include <config.h> #include <fapi2.H> +#ifdef CONFIG_AXONE +#include <exp_draminit_mc.H> +#else #include <p9_mss_draminit_mc.H> #include <p9c_mss_draminit_mc.H> +#endif + using namespace ERRORLOG; @@ -66,6 +71,8 @@ void* call_mss_draminit_mc (void *io_pArgs) TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace,"call_mss_draminit_mc entry" ); +#ifndef CONFIG_AXONE + // Get all MCBIST TARGETING::TargetHandleList l_mcbistTargetList; getAllChiplets(l_mcbistTargetList, TYPE_MCBIST); @@ -153,6 +160,53 @@ void* call_mss_draminit_mc (void *io_pArgs) } } +#else + + // Get all OCMB targets + TARGETING::TargetHandleList l_ocmbTargetList; + getAllChips(l_ocmbTargetList, TYPE_OCMB_CHIP); + + for (const auto & l_ocmb_target : l_ocmbTargetList) + { + // Dump current run on target + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "Running exp_draminit_mc HWP on " + "target HUID %.8X", TARGETING::get_huid(l_ocmb_target)); + + fapi2::Target <fapi2::TARGET_TYPE_OCMB_CHIP> l_fapi_ocmb_target + (l_ocmb_target); + + // call the HWP with each fapi2::Target + FAPI_INVOKE_HWP(l_err, exp_draminit_mc, l_fapi_ocmb_target); + + if (l_err) + { + TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace, + "ERROR 0x%.8X : exp_draminit_mc HWP returns error", + l_err->reasonCode()); + + // capture the target data in the elog + ErrlUserDetailsTarget(l_ocmb_target).addToLog( l_err ); + + // Create IStep error log and cross reference to error that occurred + l_stepError.addErrorDetails( l_err ); + + // Commit Error + errlCommit( l_err, HWPF_COMP_ID ); + + break; + } + else + { + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "SUCCESS running exp_draminit_mc HWP on " + "target HUID %.8X", TARGETING::get_huid(l_ocmb_target)); + } + + } + +#endif + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, "call_mss_draminit_mc exit" ); return l_stepError.getErrorHandle(); diff --git a/src/usr/isteps/istep13/makefile b/src/usr/isteps/istep13/makefile index bd38d4f71..507d1981d 100644 --- a/src/usr/isteps/istep13/makefile +++ b/src/usr/isteps/istep13/makefile @@ -25,10 +25,11 @@ ROOTPATH = ../../../.. MODULE = istep13 -PROCEDURES_PATH = ${ROOTPATH}/src/import/chips/p9/procedures -CEN_PROCEDURES_PATH = ${ROOTPATH}/src/import/chips/centaur/procedures +P9_PROCEDURES_PATH = ${ROOTPATH}/src/import/chips/p9/procedures +CEN_PROCEDURES_PATH = ${ROOTPATH}/src/import/chips/centaur/procedures OCMB_PROCEDURES_PATH = ${ROOTPATH}/src/import/chips/ocmb/procedures -EXP_PROCEDURES_PATH = ${ROOTPATH}/src/import/chips/ocmb/explorer/procedures +EXP_PROCEDURES_PATH = ${ROOTPATH}/src/import/chips/ocmb/explorer/procedures +EXP_INCLUDE_PATH = ${ROOTPATH}/src/import/chips/ocmb/explorer/common/include/ #Add all the extra include paths @@ -42,14 +43,14 @@ EXTRAINCDIR += ${ROOTPATH}/src/import/ EXTRAINCDIR += ${ROOTPATH}/src/import/chips/p9/utils/imageProcs/ EXTRAINCDIR += ${ROOTPATH}/src/import/chips/common/utils/imageProcs/ EXTRAINCDIR += ${ROOTPATH}/src/import/chips/p9/common/include -EXTRAINCDIR += ${PROCEDURES_PATH}/hwp/memory -EXTRAINCDIR += ${PROCEDURES_PATH}/hwp/memory/lib -EXTRAINCDIR += ${PROCEDURES_PATH}/hwp/memory/lib/utils -EXTRAINCDIR += ${PROCEDURES_PATH}/hwp/memory/lib/mc/ -EXTRAINCDIR += ${PROCEDURES_PATH}/hwp/memory/lib/fir/ -EXTRAINCDIR += ${PROCEDURES_PATH}/hwp/perv -EXTRAINCDIR += ${PROCEDURES_PATH}/hwp/nest -EXTRAINCDIR += ${PROCEDURES_PATH}/hwp/initfiles +EXTRAINCDIR += ${P9_PROCEDURES_PATH}/hwp/memory +EXTRAINCDIR += ${P9_PROCEDURES_PATH}/hwp/memory/lib +EXTRAINCDIR += ${P9_PROCEDURES_PATH}/hwp/memory/lib/utils +EXTRAINCDIR += ${P9_PROCEDURES_PATH}/hwp/memory/lib/mc/ +EXTRAINCDIR += ${P9_PROCEDURES_PATH}/hwp/memory/lib/fir/ +EXTRAINCDIR += ${P9_PROCEDURES_PATH}/hwp/perv +EXTRAINCDIR += ${P9_PROCEDURES_PATH}/hwp/nest +EXTRAINCDIR += ${P9_PROCEDURES_PATH}/hwp/initfiles EXTRAINCDIR += ${ROOTPATH}/src/import/chips/centaur/common/include/ EXTRAINCDIR += ${ROOTPATH}/src/import/ EXTRAINCDIR += ${ROOTPATH}/ @@ -60,7 +61,10 @@ EXTRAINCDIR += ${CEN_PROCEDURES_PATH}/hwp/memory/lib/utils/ EXTRAINCDIR += ${CEN_PROCEDURES_PATH}/hwp/initfiles EXTRAINCDIR += ${EXP_PROCEDURES_PATH}/hwp/memory/ EXTRAINCDIR += ${OCMB_PROCEDURES_PATH}/hwp/initfiles/ - +EXTRAINCDIR += ${EXP_INCLUDE_PATH}/ +EXTRAINCDIR += ${ROOTPATH}/obj/genfiles/ +EXTRAINCDIR += ${ROOTPATH}/obj/genfiles/chips/ocmb/explorer/procedures/hwp/memory/lib/ +EXTRAINCDIR += ${ROOTPATH}/obj/genfiles/generic/memory/lib/ # from src/usr/isteps/istep13 OBJS += call_host_disable_memvolt.o @@ -81,28 +85,28 @@ OBJS += call_mss_draminit_mc.o include ${ROOTPATH}/procedure.rules.mk # PLL HWPs -include ${PROCEDURES_PATH}/hwp/perv/p9_mem_pll_initf.mk -include ${PROCEDURES_PATH}/hwp/perv/p9_mem_pll_setup.mk -include ${PROCEDURES_PATH}/hwp/perv/p9_mem_pll_reset.mk +include ${P9_PROCEDURES_PATH}/hwp/perv/p9_mem_pll_initf.mk +include ${P9_PROCEDURES_PATH}/hwp/perv/p9_mem_pll_setup.mk +include ${P9_PROCEDURES_PATH}/hwp/perv/p9_mem_pll_reset.mk #Start Memclocks -include ${PROCEDURES_PATH}/hwp/perv/p9_mem_startclocks.mk +include ${P9_PROCEDURES_PATH}/hwp/perv/p9_mem_startclocks.mk #Scom init -include ${PROCEDURES_PATH}/hwp/memory/p9_mss_scominit.mk -include ${PROCEDURES_PATH}/hwp/nest/p9_throttle_sync.mk +include ${P9_PROCEDURES_PATH}/hwp/memory/p9_mss_scominit.mk +include ${P9_PROCEDURES_PATH}/hwp/nest/p9_throttle_sync.mk include ${CEN_PROCEDURES_PATH}/hwp/memory/p9c_mss_scominit.mk -include ${PROCEDURES_PATH}/hwp/initfiles/p9n_ddrphy_scom.mk -include ${PROCEDURES_PATH}/hwp/initfiles/p9n_mca_scom.mk -include ${PROCEDURES_PATH}/hwp/initfiles/p9n_mcbist_scom.mk +include ${P9_PROCEDURES_PATH}/hwp/initfiles/p9n_ddrphy_scom.mk +include ${P9_PROCEDURES_PATH}/hwp/initfiles/p9n_mca_scom.mk +include ${P9_PROCEDURES_PATH}/hwp/initfiles/p9n_mcbist_scom.mk #Dram init -include ${PROCEDURES_PATH}/hwp/memory/p9_mss_draminit.mk -include ${PROCEDURES_PATH}/hwp/memory/p9_mss_draminit_training.mk -include ${PROCEDURES_PATH}/hwp/memory/p9_mss_draminit_mc.mk -include ${PROCEDURES_PATH}/hwp/memory/p9_mss_ddr_phy_reset.mk -include ${PROCEDURES_PATH}/hwp/memory/p9_mss_draminit_training_adv.mk +include ${P9_PROCEDURES_PATH}/hwp/memory/p9_mss_draminit.mk +include ${P9_PROCEDURES_PATH}/hwp/memory/p9_mss_draminit_training.mk +include ${P9_PROCEDURES_PATH}/hwp/memory/p9_mss_draminit_mc.mk +include ${P9_PROCEDURES_PATH}/hwp/memory/p9_mss_ddr_phy_reset.mk +include ${P9_PROCEDURES_PATH}/hwp/memory/p9_mss_draminit_training_adv.mk include ${CEN_PROCEDURES_PATH}/hwp/memory/p9c_mss_mcbist.mk include ${CEN_PROCEDURES_PATH}/hwp/memory/p9c_mss_mcbist_common.mk @@ -128,14 +132,15 @@ include ${CEN_PROCEDURES_PATH}/hwp/memory/p9c_mss_row_repair.mk OBJS += $(if $(CONFIG_AXONE),exp_scominit.o,) OBJS += $(if $(CONFIG_AXONE),explorer_scom.o,) +OBJS += $(if $(CONFIG_AXONE),exp_draminit_mc.o,) include ${ROOTPATH}/config.mk -VPATH += ${PROCEDURES_PATH}/hwp/memory ${PROCEDURES_PATH}/hwp/nest ${PROCEDURES_PATH}/hwp/perv ${PROCEDURES_PATH}/hwp/initfiles/ -VPATH += ${PROCEDURES_PATH}/hwp/memory/lib/ccs/ ${PROCEDURES_PATH}/hwp/memory/lib/dimm/ ${PROCEDURES_PATH}/hwp/memory/lib/utils/ ${PROCEDURES_PATH}/hwp/memory/lib/phy/ -VPATH += ${PROCEDURES_PATH}/hwp/memory/lib/mc/ -VPATH += ${PROCEDURES_PATH}/hwp/memory/lib/fir/ -VPATH += ${PROCEDURES_PATH}/hwp/memory/lib/dimm/ddr4/ +VPATH += ${P9_PROCEDURES_PATH}/hwp/memory ${P9_PROCEDURES_PATH}/hwp/nest ${P9_PROCEDURES_PATH}/hwp/perv ${P9_PROCEDURES_PATH}/hwp/initfiles/ +VPATH += ${P9_PROCEDURES_PATH}/hwp/memory/lib/ccs/ ${P9_PROCEDURES_PATH}/hwp/memory/lib/dimm/ ${P9_PROCEDURES_PATH}/hwp/memory/lib/utils/ ${P9_PROCEDURES_PATH}/hwp/memory/lib/phy/ +VPATH += ${P9_PROCEDURES_PATH}/hwp/memory/lib/mc/ +VPATH += ${P9_PROCEDURES_PATH}/hwp/memory/lib/fir/ +VPATH += ${P9_PROCEDURES_PATH}/hwp/memory/lib/dimm/ddr4/ VPATH += ${CEN_PROCEDURES_PATH} VPATH += ${CEN_PROCEDURES_PATH}/hwp/memory/ VPATH += ${CEN_PROCEDURES_PATH}/hwp/memory/lib/ |