diff options
Diffstat (limited to 'src/usr/isteps/istep08')
-rw-r--r-- | src/usr/isteps/istep08/call_host_set_voltages.C | 46 | ||||
-rw-r--r-- | src/usr/isteps/istep08/call_proc_attr_update.C | 3 | ||||
-rw-r--r-- | src/usr/isteps/istep08/call_proc_xbus_scominit.C | 3 | ||||
-rw-r--r-- | src/usr/isteps/istep08/makefile | 23 |
4 files changed, 64 insertions, 11 deletions
diff --git a/src/usr/isteps/istep08/call_host_set_voltages.C b/src/usr/isteps/istep08/call_host_set_voltages.C index 11c37a50d..fe37ef21b 100644 --- a/src/usr/isteps/istep08/call_host_set_voltages.C +++ b/src/usr/isteps/istep08/call_host_set_voltages.C @@ -46,7 +46,10 @@ #include <p9_setup_evid.H> #include <nest/nestHwpHelperFuncs.H> // fapiHWPCallWrapperForChip #include <hbToHwsvVoltageMsg.H> // platform_set_nest_voltages - +#ifdef CONFIG_AXONE +#include <chipids.H> // for EXPLORER ID +#include <pmic_enable.H> +#endif // Init Service support #include <initservice/initserviceif.H> // INITSERVICE::spBaseServicesEnabled @@ -69,9 +72,6 @@ void* call_host_set_voltages(void *io_pArgs) do { - // Skip p9_setup_evid on Axone, no targets exist - #ifndef CONFIG_AXONE_BRING_UP - TargetHandleList l_procList; // Get the system's procs getAllChips( l_procList, @@ -115,7 +115,6 @@ void* call_host_set_voltages(void *io_pArgs) { break; } - #endif // If no error occurred and FSP is present, // send voltage information to HWSV @@ -156,8 +155,43 @@ void* call_host_set_voltages(void *io_pArgs) fapiHWPCallWrapperHandler(P9_IO_XBUS_IMAGE_BUILD, l_stepError, HWPF_COMP_ID, TYPE_PROC); } - }while( 0 ); +#ifdef CONFIG_AXONE + // Create a vector of TARGETING::Target pointers + TargetHandleList l_chipList; + + // Get a list of all of the functioning ocmb chips + TARGETING::getAllChips(l_chipList, TARGETING::TYPE_OCMB_CHIP, true); + + for (const auto & l_ocmb: l_chipList) + { + // PMICs are not present on Gemini, so skip this enable call + // check EXPLORER first as this is most likely the configuration + uint32_t chipId = l_ocmb->getAttr< TARGETING::ATTR_CHIP_ID>(); + if (chipId == POWER_CHIPID::EXPLORER_16) + { + TRACFCOMP( g_trac_isteps_trace, "call_host_set_voltages: " + "calling pmic_enable on OCMB 0x%.8X", get_huid(l_ocmb) ); + + fapi2::Target<fapi2::TARGET_TYPE_OCMB_CHIP>l_fapi2_target(l_ocmb); + + // Invoke procedure + FAPI_INVOKE_HWP(l_err, pmic_enable, l_fapi2_target); + } + + if (l_err) + { + TRACFCOMP(g_trac_isteps_trace, + "Error from pmic_enable for 0x%.8X target", + TARGETING::get_huid(l_ocmb)); + + // Capture error and continue to next OCMB + captureError(l_err, l_stepError, HWPF_COMP_ID, l_ocmb); + } + } +#endif + + }while( 0 ); TRACFCOMP(g_trac_isteps_trace, EXIT_MRK"call_host_set_voltages exit"); diff --git a/src/usr/isteps/istep08/call_proc_attr_update.C b/src/usr/isteps/istep08/call_proc_attr_update.C index 0b73652b5..d287c09ef 100644 --- a/src/usr/isteps/istep08/call_proc_attr_update.C +++ b/src/usr/isteps/istep08/call_proc_attr_update.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2015,2016 */ +/* Contributors Listed Below - COPYRIGHT 2015,2019 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -57,7 +57,6 @@ #include <devicefw/userif.H> #include <vpd/mvpdenums.H> -#include <config.h> #include <p9_attr_update.H> diff --git a/src/usr/isteps/istep08/call_proc_xbus_scominit.C b/src/usr/isteps/istep08/call_proc_xbus_scominit.C index b446f7b06..970f1b608 100644 --- a/src/usr/isteps/istep08/call_proc_xbus_scominit.C +++ b/src/usr/isteps/istep08/call_proc_xbus_scominit.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2015,2018 */ +/* Contributors Listed Below - COPYRIGHT 2015,2019 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -59,7 +59,6 @@ #include <devicefw/userif.H> #include <vpd/mvpdenums.H> -#include <config.h> #include <p9_io_xbus_scominit.H> namespace ISTEP_08 diff --git a/src/usr/isteps/istep08/makefile b/src/usr/isteps/istep08/makefile index 225e07735..5b1da4f21 100644 --- a/src/usr/isteps/istep08/makefile +++ b/src/usr/isteps/istep08/makefile @@ -5,7 +5,7 @@ # # OpenPOWER HostBoot Project # -# Contributors Listed Below - COPYRIGHT 2015,2018 +# Contributors Listed Below - COPYRIGHT 2015,2019 # [+] International Business Machines Corp. # # @@ -24,6 +24,10 @@ # IBM_PROLOG_END_TAG ROOTPATH = ../../../.. PROCEDURES_PATH = ${ROOTPATH}/src/import/chips/p9/procedures + +# OCMB path +COMMON_PATH_OCMB += ${ROOTPATH}/src/import/chips/ocmb/common + MODULE = istep08 EXTRAINCDIR += ${PROCEDURES_PATH}/hwp/pm/ @@ -38,10 +42,18 @@ EXTRAINCDIR += ${ROOTPATH}/src/include/usr/fapi2/ EXTRAINCDIR += ${ROOTPATH}/src/import/chips/p9/common/include/ EXTRAINCDIR += ${ROOTPATH}/src/import/chips/p9/utils/ EXTRAINCDIR += ${ROOTPATH}/src/import/chips/p9/utils/imageProcs/ +EXTRAINCDIR += ${ROOTPATH}/src/import/chips/common/utils/ EXTRAINCDIR += ${ROOTPATH}/src/import/chips/common/utils/imageProcs/ EXTRAINCDIR += ${ROOTPATH}/src/usr/isteps/ EXTRAINCDIR += ${ROOTPATH}/src/usr/sbeio/ EXTRAINCDIR += ${PROCEDURES_PATH}/hwp/pm/include/registers +EXTRAINCDIR += ${COMMON_PATH_OCMB}/procedures/hwp/pmic/ +EXTRAINCDIR += ${COMMON_PATH_OCMB}/procedures/hwp/pmic/lib/utils/ +EXTRAINCDIR += ${COMMON_PATH_OCMB}/include/ +EXTRAINCDIR += ${ROOTPATH}/src/import/ +EXTRAINCDIR += ${ROOTPATH}/obj/genfiles/chips/ocmb/common/procedures/hwp/pmic/lib/ +EXTRAINCDIR += ${ROOTPATH}/obj/genfiles/generic/memory/lib/ + OBJS += call_host_slave_sbe_config.o OBJS += call_host_setup_sbe.o @@ -61,6 +73,10 @@ VPATH += ${PROCEDURES_PATH}/hwp/io/ ${PROCEDURES_PATH}/hwp/initfiles/ VPATH += ${PROCEDURES_PATH}/hwp/sbe/ VPATH += ${PROCEDURES_PATH}/hwp/pm/ VPATH += ${PROCEDURES_PATH}/hwp/lib +VPATH += ${COMMON_PATH_OCMB}/pmic/ +VPATH += ${COMMON_PATH_OCMB}/procedures/hwp/pmic/ +VPATH += ${COMMON_PATH_OCMB}/procedures/hwp/pmic/lib/utils/ +VPATH += ${COMMON_PATH_OCMB}/include/ include ${ROOTPATH}/procedure.rules.mk @@ -110,4 +126,9 @@ MODULE = istep08 # Take another look at PM lib include $(PROCEDURES_PATH)/hwp/pm/p9_pm_utils.mk +# Axone only objects +OBJS += $(if $(CONFIG_AXONE),pmic_common_utils.o,) +OBJS += $(if $(CONFIG_AXONE),pmic_enable_utils.o,) +OBJS += $(if $(CONFIG_AXONE),pmic_enable.o,) + include ${ROOTPATH}/config.mk |