From bf4cb3342fe0aa8a51d11bb85bddab61a0a7398c Mon Sep 17 00:00:00 2001 From: Prachi Gupta Date: Mon, 26 Oct 2015 10:22:47 -0500 Subject: P9 Isteps: Created directory structure for istep 14 wrappers Change-Id: Idad8c430afef013a91e0c206d4fff80fc45053c0 RTC:137652 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/21501 Tested-by: Jenkins Server Reviewed-by: Daniel M. Crowell Reviewed-by: A. Patrick Williams III --- src/include/usr/isteps/hwpf_reasoncodes.H | 177 +++++++++++++++++++++++++++++ src/include/usr/isteps/istep14list.H | 153 +++++++++++++++++++++++-- src/include/usr/isteps/istep_reasoncodes.H | 50 ++++++++ 3 files changed, 373 insertions(+), 7 deletions(-) create mode 100644 src/include/usr/isteps/hwpf_reasoncodes.H create mode 100644 src/include/usr/isteps/istep_reasoncodes.H (limited to 'src/include/usr/isteps') diff --git a/src/include/usr/isteps/hwpf_reasoncodes.H b/src/include/usr/isteps/hwpf_reasoncodes.H new file mode 100644 index 000000000..9737f9cdd --- /dev/null +++ b/src/include/usr/isteps/hwpf_reasoncodes.H @@ -0,0 +1,177 @@ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: src/include/usr/isteps/hwpf_reasoncodes.H $ */ +/* */ +/* OpenPOWER HostBoot Project */ +/* */ +/* Contributors Listed Below - COPYRIGHT 2013,2015 */ +/* [+] International Business Machines Corp. */ +/* */ +/* */ +/* Licensed under the Apache License, Version 2.0 (the "License"); */ +/* you may not use this file except in compliance with the License. */ +/* You may obtain a copy of the License at */ +/* */ +/* http://www.apache.org/licenses/LICENSE-2.0 */ +/* */ +/* Unless required by applicable law or agreed to in writing, software */ +/* distributed under the License is distributed on an "AS IS" BASIS, */ +/* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or */ +/* implied. See the License for the specific language governing */ +/* permissions and limitations under the License. */ +/* */ +/* IBM_PROLOG_END_TAG */ +#ifndef HWPFREASONCODES_H_ +#define HWPFREASONCODES_H_ + +#include + +namespace fapi +{ + /** + * @brief Defines the HWPF error log module IDs + */ + enum hwpfModuleId + { + // FAPI generated errors + MOD_FAPI_RC_TO_ERRL = 0x01, + + // HWP generated errors + MOD_HWP_RC_TO_ERRL = 0x02, + + // PLAT generated errors + MOD_FAPI_GET_CHILD_CHIPLETS = 0x03, + MOD_FAPI_GET_PARENT_CHIP = 0x04, + MOD_PLAT_ATTR_SVC_GET_TARG_ATTR = 0x05, + MOD_PLAT_ATTR_SVC_SET_TARG_ATTR = 0x06, + MOD_VERIFY_CFAM_ACCESS_TARGET = 0x07, + MOD_ATTR_BASE_ADDR_GET = 0x08, + MOD_GET_CFAM_CHIP_TARGET = 0x09, + MOD_FAPI_GET_ASSOCIATE_DIMMS = 0x0A, + MOD_EDI_EI_IO_RUN_TRAINING = 0x0B, + MOD_THREAD_ACTIVATE = 0x0C, + MOD_ATTR_GET_TARGETING_TARGET = 0x0D, + MOD_ATTR_GET_TARGET_NAME = 0x0E, + MOD_MVPD_ACCESS = 0x0F, + MOD_EXIT_CACHE_CONTAINED = 0x10, + MOD_GET_CACHE_DECONFIG = 0x11, + MOD_FAPI_GET_OTHER_SIDE_OF_MEM_CHANNEL = 0x12, + MOD_MBVPD_ACCESS = 0x13, + MOD_OCC_LOAD_START_ALL_OCCS = 0x14, + MOD_VDDR_PROC_MSG = 0x15, + MOD_VDDR_PROC_VDDR_MSG = 0x16, + MOD_VDDR_SEND_MSG = 0x17, + MOD_PLAT_ATTR_SVC_GET_VPD_VERSION = 0x18, + MOD_PLAT_ATTR_SVC_GET_SPARE_DATA = 0x19, + MOD_PLAT_ATTR_SVC_GET_BADDQ_DATA = 0x1A, + MOD_PLAT_ATTR_SVC_SET_BADDQ_DATA = 0x1B, + MOD_HOST_COALESCE_HOST = 0x1C, + MOD_ATTR_OVERRIDE = 0x1D, + MOD_PLAT_SPECIAL_WAKEUP = 0x1E, + MOD_PLAT_EN_VDDR = 0x1F, + MOD_GET_OCC_CHIP_TARGET = 0x20, + MOD_ACCESS_OCB_INDIRECT_CHANNEL = 0x21, + MOD_GET_RCD_CNTL_WORD = 0x22, + MOD_GET_SYS_FREQ = 0x23, + MOD_GET_POUNDV_BUCKET_DATA = 0x24, + MOD_GET_VER_ONE_VOLTAGE_BUCKET_DATA = 0x25, + MOD_PLAT_MVPD_GET_VLTG_BUCKET_ATTR = 0x26, + MOD_PLAT_ATTR_SVC_CEN_DQ_TO_DIMM_CONN_DQ = 0x27, + MOD_PLAT_ATTR_SVC_GET_MEM_ATTR_DATA = 0x28, + MOD_GET_WOF_FREQ_UPLIFT_SELECTED = 0x29, + MOD_SET_NEST_FREQ = 0x2A, + MOD_FIND_MIN_DMI_SPD = 0x2B, + MOD_OCC_LOAD_HOST_DATA_TO_SRAM = 0x2C, + }; + + /** + * @brief Defines the HWPF error log reason codes + */ + enum hwpfReasonCode + { + // FAPI generated errors (must match fapiReturnCodes.H) + RC_INVALID_ATTR_GET = HWPF_COMP_ID | 0x01, + RC_INVALID_CHIP_EC_FEATURE_GET = HWPF_COMP_ID | 0x02, + + // HWP generated errors + RC_HWP_GENERATED_ERROR = HWPF_COMP_ID | 0x0f, + + // PLAT Errors generated by HostBoot code + RC_INVALID_REQUEST = HWPF_COMP_ID | 0x10, + RC_UNSUPPORTED_REQUEST = HWPF_COMP_ID | 0x11, + RC_NO_SINGLE_PARENT = HWPF_COMP_ID | 0x12, + RC_FAILED_TO_ACCESS_ATTRIBUTE = HWPF_COMP_ID | 0x13, + RC_CFAM_ACCESS_ON_PROC_ERR = HWPF_COMP_ID | 0x14, + RC_ATTR_BAD_TARGET_PARAM = HWPF_COMP_ID | 0x15, + RC_INVALID_NUM_PARENT_CHIP = HWPF_COMP_ID | 0x16, + RC_EMBEDDED_NULL_TARGET_PTR = HWPF_COMP_ID | 0x17, + RC_MIXED_PBUS_CONNECTION = HWPF_COMP_ID | 0x18, + RC_SAME_CHIP_PBUS_CONNECTION = HWPF_COMP_ID | 0x19, + RC_CONFLICT_PBUS_CONNECTION = HWPF_COMP_ID | 0x1A, + RC_NO_MASTER_CORE_TARGET = HWPF_COMP_ID | 0x1B, + RC_UNEXPECTED_TARGET_TYPE = HWPF_COMP_ID | 0x1C, + RC_INVALID_RECORD = HWPF_COMP_ID | 0x1D, + RC_INVALID_KEYWORD = HWPF_COMP_ID | 0x1E, + RC_MM_EXTEND_FAILED = HWPF_COMP_ID | 0x1F, + RC_INCORRECT_KEWORD_SIZE = HWPF_COMP_ID | 0x20, + RC_NO_SINGLE_MCS = HWPF_COMP_ID | 0x21, + RC_NO_SINGLE_MEMBUFF = HWPF_COMP_ID | 0x22, + RC_STATE_MISMATCH = HWPF_COMP_ID | 0x23, + RC_MM_UNMAP_ERR = HWPF_COMP_ID | 0x24, + RC_VDDR_EMPTY_MSG = HWPF_COMP_ID | 0x25, + RC_VDDR_ERROR_MSG = HWPF_COMP_ID | 0x26, + RC_VDDR_POWR_ERR = HWPF_COMP_ID | 0x27, + RC_INCORRECT_MSG_TYPE = HWPF_COMP_ID | 0x28, + RC_NO_SINGLE_MBA = HWPF_COMP_ID | 0x29, + RC_HOST_TIMER_EXPIRED = HWPF_COMP_ID | 0x2A, + RC_HOST_TIMER_THREAD_FAIL = HWPF_COMP_ID | 0x2B, + RC_NULL_POINTER = HWPF_COMP_ID | 0x2C, + RC_RT_WAKEUP_FAILED = HWPF_COMP_ID | 0x2D, + RC_NO_MIRRORED_MEMORY = HWPF_COMP_ID | 0x2E, + RC_VDDR_INVALID_VOLTAGE = HWPF_COMP_ID | 0x2F, + RC_TIMEOUT_EN_VDDR = HWPF_COMP_ID | 0x30, + RC_TARGET_UNSUPPORTED = HWPF_COMP_ID | 0x31, + RC_INVALID_DATA_BUFFER_LENGTH = HWPF_COMP_ID | 0x32, + RC_INVALID_DIMM_TYPE = HWPF_COMP_ID | 0x33, + RC_INVALID_DATA = HWPF_COMP_ID | 0x34, + RC_INVALID_SIZE = HWPF_COMP_ID | 0x35, + RC_INVALID_FREQ = HWPF_COMP_ID | 0x36, + RC_INVALID_PARAM = HWPF_COMP_ID | 0x37, + RC_DATA_MISMATCH = HWPF_COMP_ID | 0x38, + RC_DATA_NOT_SUPPORTED = HWPF_COMP_ID | 0x39, + RC_NO_SINGLE_NODE = HWPF_COMP_ID | 0x3A, + RC_INVALID_ULTRA_TURBO_FREQ = HWPF_COMP_ID | 0x3B, + RC_INVALID_WOF_INDEX = HWPF_COMP_ID | 0x3C, + RC_ECMD_INSERT_FAILED = HWPF_COMP_ID | 0x3D, + }; + + /** + * @brief Defines the HWPF error log user detail data sections + */ + enum hwpfUserDetailDataSubSection + { + HWPF_UDT_HWP_RCVALUE = 0x01, + HWPF_UDT_HWP_FFDC = 0x02, + HWPF_UDT_STEP_ERROR_DETAILS = 0x03, + }; +}; + +// HostBoot ErrorLog tags for FAPI errors (see fapiReturnCodes.H) +/*@ + * @errortype + * @moduleid MOD_FAPI_RC_TO_ERRL + * @reasoncode RC_INVALID_ATTR_GET + * @devdesc InitFile HW Procedure requested an invalid attribute + * @custdesc A problem was detected during the IPL of the system: + * A hardware initialization procedure requested an invalid + * attribute. + */ +/*@ + * @errortype + * @moduleid MOD_FAPI_RC_TO_ERRL + * @reasoncode RC_INVALID_CHIP_EC_FEATURE_GET + * @devdesc Request for EC features on an attribute without EC features + */ + +#endif diff --git a/src/include/usr/isteps/istep14list.H b/src/include/usr/isteps/istep14list.H index b21d9c728..aa6ccdce0 100644 --- a/src/include/usr/isteps/istep14list.H +++ b/src/include/usr/isteps/istep14list.H @@ -29,7 +29,7 @@ * @file istep14list.H * * IStep 14 - * IPL FLow Doc v0.60 (06/02/15) + * IPL FLow Doc v0.67 (11/11/15) * 14.7 proc_setup_bars * : Setup Memory BARs * @@ -38,12 +38,109 @@ * */ -#include -#include +#include +#include #include -// include prototypes file -#include "../../../usr/hwpf/hwp/dram_initialization/dram_initialization.H" +namespace ISTEP_14 +{ + +/** + * @brief host_startprd_dram + * + * param[in,out] - pointer to any arguments, usually NULL + * + * return any errlogs to istep + * + */ +void* call_host_startprd_dram( void *io_pArgs ); + + + +/** + * @brief mss_memdiag + * + * param[in,out] - pointer to any arguments, usually NULL + * + * return any errlogs to istep + * + */ +void* call_mss_memdiag( void *io_pArgs ); + + + +/** + * @brief mss_thermal_init + * + * param[in,out] - pointer to any arguments, usually NULL + * + * return any errlogs to istep + * + */ +void* call_mss_thermal_init( void *io_pArgs ); + +/** + * @brief proc_pcie_config + * + * param[in,out] - pointer to any arguments, usually NULL + * + * return any errlogs to istep + * + */ +void* call_proc_pcie_config( void *io_pArgs ); + + +/** + * @brief mss_power_cleanup + * + * param[in,out] - pointer to any arguments, usually NULL + * + * return any errlogs to istep + * + */ +void* call_mss_power_cleanup( void *io_pArgs ); + +/** + * @brief proc_setup_bars + * + * param[in,out] - pointer to any arguments, usually NULL + * + * return any errlogs to istep + * + */ +void* call_proc_setup_bars( void *io_pArgs ); + +/** + * @brief proc_htm_setup + * + * param[in,out] - pointer to any arguments, usually NULL + * + * return any errlogs to istep + * + */ +void* call_proc_htm_setup( void *io_pArgs ); + +/** + * @brief proc_exit_cache_contained + * + * param[in,out] - pointer to any arguments, usually NULL + * + * return any errlogs to istep + * + */ +void* call_proc_exit_cache_contained( void *io_pArgs ); + +/** + * @brief host_mpipl_service + * + * param[in,out] - pointer to any arguments, usually NULL + * + * return any errlogs to istep + * + */ +void* call_host_mpipl_service( void *io_pArgs ); +}; + namespace INITSERVICE { @@ -54,14 +151,56 @@ namespace INITSERVICE { NONE, EXT_IMAGE, IPL_NOOP, false } }, { - ISTEPNAME(14,07,"proc_setup_bars"), - DRAM_INITIALIZATION::call_proc_setup_bars, + ISTEPNAME(14,01,"host_startprd_dram"), + ISTEP_14::call_host_startprd_dram, + { START_FN, EXT_IMAGE, NORMAL_IPL_OP, true } + }, + { + ISTEPNAME(14,02,"mss_memdiag"), + ISTEP_14::call_mss_memdiag, + { START_FN, EXT_IMAGE, NORMAL_IPL_OP, true } + }, + { + ISTEPNAME(14,03,"mss_thermal_init"), + ISTEP_14::call_mss_thermal_init, + { START_FN, EXT_IMAGE, NORMAL_IPL_OP, true } + }, + { + ISTEPNAME(14,04,"proc_pcie_config"), + ISTEP_14::call_proc_pcie_config, + { START_FN, EXT_IMAGE, NORMAL_IPL_OP, true } + }, + { + ISTEPNAME(14,05,"mss_power_cleanup"), + ISTEP_14::call_mss_power_cleanup, + { START_FN, EXT_IMAGE, NORMAL_IPL_OP, true } + }, + { + ISTEPNAME(14,06,"proc_setup_bars"), + ISTEP_14::call_proc_setup_bars, + { START_FN, EXT_IMAGE, NORMAL_IPL_OP, true } + }, + { + ISTEPNAME(14,07,"proc_htm_setup"), + ISTEP_14::call_proc_htm_setup, + { START_FN, EXT_IMAGE, NORMAL_IPL_OP, true } + }, + { + ISTEPNAME(14,08,"proc_exit_cache_contained"), + ISTEP_14::call_proc_exit_cache_contained, + { START_FN, EXT_IMAGE, NORMAL_IPL_OP, true } + }, + { + ISTEPNAME(14,09,"host_mpipl_service"), + ISTEP_14::call_host_mpipl_service, { START_FN, EXT_IMAGE, NORMAL_IPL_OP, true } }, }; const DepModInfo g_istep14Dependancies = { { + DEP_LIB(libistep14.so), + DEP_LIB(libdump.so), NULL } }; diff --git a/src/include/usr/isteps/istep_reasoncodes.H b/src/include/usr/isteps/istep_reasoncodes.H new file mode 100644 index 000000000..d5132ac9b --- /dev/null +++ b/src/include/usr/isteps/istep_reasoncodes.H @@ -0,0 +1,50 @@ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: src/include/usr/isteps/istep_reasoncodes.H $ */ +/* */ +/* OpenPOWER HostBoot Project */ +/* */ +/* Contributors Listed Below - COPYRIGHT 2015 */ +/* [+] International Business Machines Corp. */ +/* */ +/* */ +/* Licensed under the Apache License, Version 2.0 (the "License"); */ +/* you may not use this file except in compliance with the License. */ +/* You may obtain a copy of the License at */ +/* */ +/* http://www.apache.org/licenses/LICENSE-2.0 */ +/* */ +/* Unless required by applicable law or agreed to in writing, software */ +/* distributed under the License is distributed on an "AS IS" BASIS, */ +/* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or */ +/* implied. See the License for the specific language governing */ +/* permissions and limitations under the License. */ +/* */ +/* IBM_PROLOG_END_TAG */ +#ifndef _ISTEP_REASONCODES_H_ +#define _ISTEP_REASONCODES_H_ + +#include +namespace ISTEP +{ + /** + * @brief Defines the ISTEP error log module IDs + */ + enum istepModuleId + { + MOD_EXIT_CACHE_CONTAINED = 0x01, + }; + + /** + * @brief Defines the ISTEP error log reason codes + */ + enum istepReasonCode + { + RC_NO_MIRRORED_MEMORY = HWPF_COMP_ID | 0x01, + RC_MM_EXTEND_FAILED = HWPF_COMP_ID | 0x02, + }; + +}; + +#endif -- cgit v1.2.1