From fffa10e2abde6ee52b9d3dec77ca669867625d87 Mon Sep 17 00:00:00 2001 From: Brian Horton Date: Wed, 30 May 2012 15:18:33 -0500 Subject: HWAS code common between hostboot and FSP Corrections to common and hostboot platform-specific code to make this code work for both hostboot and FSP. In addition, make printing of HUID consistant with other previous changes. Also, added hwas/common files to fsp distribution tools so that they are included in the fsp.tar for common usage. Change-Id: Ia761606ab446dd794bf8e112430cc2e072f46991 RTC: 39793 Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/1130 Tested-by: Jenkins Server Reviewed-by: A. Patrick Williams III --- src/include/usr/hwas/common/hwas.H | 80 ++++++++++++++++ src/include/usr/hwas/common/hwasCommon.H | 79 ++++++++++++++++ src/include/usr/hwas/common/hwasError.H | 40 ++++++++ src/include/usr/hwas/common/hwas_reasoncodes.H | 44 +++++++++ src/include/usr/hwas/deconfigGard.H | 1 + src/include/usr/hwas/hostbootIstep.H | 125 +++++++++++++++++++++++++ src/include/usr/hwas/hwas.H | 80 ---------------- src/include/usr/hwas/hwasCommon.H | 75 --------------- src/include/usr/hwas/hwasError.H | 39 -------- src/include/usr/hwas/hwasPlatAssert.H | 60 ++++++++++++ src/include/usr/hwas/hwasPlatError.H | 60 ++++++++++++ src/include/usr/hwas/hwasPlatTrace.H | 59 ++++++++++++ src/include/usr/hwas/hwas_reasoncodes.H | 44 --------- src/include/usr/hwas/plat/error.H | 59 ------------ src/include/usr/hwas/plat/hostbootIstep.H | 124 ------------------------ src/include/usr/hwas/plat/hwasPlatTrace.H | 54 ----------- src/include/usr/isteps/istep06list.H | 6 +- 17 files changed, 551 insertions(+), 478 deletions(-) create mode 100644 src/include/usr/hwas/common/hwas.H create mode 100644 src/include/usr/hwas/common/hwasCommon.H create mode 100644 src/include/usr/hwas/common/hwasError.H create mode 100644 src/include/usr/hwas/common/hwas_reasoncodes.H create mode 100644 src/include/usr/hwas/hostbootIstep.H delete mode 100644 src/include/usr/hwas/hwas.H delete mode 100644 src/include/usr/hwas/hwasCommon.H delete mode 100644 src/include/usr/hwas/hwasError.H create mode 100644 src/include/usr/hwas/hwasPlatAssert.H create mode 100644 src/include/usr/hwas/hwasPlatError.H create mode 100644 src/include/usr/hwas/hwasPlatTrace.H delete mode 100644 src/include/usr/hwas/hwas_reasoncodes.H delete mode 100644 src/include/usr/hwas/plat/error.H delete mode 100644 src/include/usr/hwas/plat/hostbootIstep.H delete mode 100644 src/include/usr/hwas/plat/hwasPlatTrace.H (limited to 'src/include') diff --git a/src/include/usr/hwas/common/hwas.H b/src/include/usr/hwas/common/hwas.H new file mode 100644 index 000000000..d1f56885e --- /dev/null +++ b/src/include/usr/hwas/common/hwas.H @@ -0,0 +1,80 @@ +// IBM_PROLOG_BEGIN_TAG +// This is an automatically generated prolog. +// +// $Source: src/include/usr/hwas/hwas.H $ +// +// IBM CONFIDENTIAL +// +// COPYRIGHT International Business Machines Corp. 2011 +// +// p1 +// +// Object Code Only (OCO) source materials +// Licensed Internal Code Source Materials +// IBM HostBoot Licensed Internal Code +// +// The source code for this program is not published or other- +// wise divested of its trade secrets, irrespective of what has +// been deposited with the U.S. Copyright Office. +// +// Origin: 30 +// +// IBM_PROLOG_END +#ifndef __HWAS_HWAS_H +#define __HWAS_HWAS_H +/** + * @file hwas.H + * + * HardWare Availability Service prototypes. + * In trying to keep with C++ tradition, doxygen documentation for functions + * are here in the .H file. + * + * All of the following routines are "named isteps" - they are invoked as + * tasks by the @ref IStepDispatcher. + * + */ + + +/******************************************************************************/ +// Includes +/******************************************************************************/ +#include +#include + +namespace HWAS +{ + +/** + * @brief initHardware Common HWAS function to setup the hardware + * + * It will call into the hwas platform-specific platInitHardware() + * function to init the FSI hardware. + * + * @param none + * + * @return errlHndl_t valid errlHndl_t handle if there was an error + * NULL if no errors; + */ +errlHndl_t initHardware(); + +/** + * @brief discoverTagets Common HWAS function to build targeting + * + * This routine will walk through all the targets and initialize HWAS STATE + * to a known default value (powered off, etc.) + * + * Then call into the hwas platform-specific platPresenceDetect() function + * to read the hardware information, and apply it to the target states, + * and call into the hwas platform-specifiction platReadIDEC() function + * to get and set the ChipID and EC values. + * + * @param none + * + * @return errlHndl_t valid errlHndl_t handle if there was an error + * NULL if no errors; + */ +errlHndl_t discoverTargets(); + +}; // end namespace + +#endif diff --git a/src/include/usr/hwas/common/hwasCommon.H b/src/include/usr/hwas/common/hwasCommon.H new file mode 100644 index 000000000..00eab2f55 --- /dev/null +++ b/src/include/usr/hwas/common/hwasCommon.H @@ -0,0 +1,79 @@ +/* IBM_PROLOG_BEGIN_TAG + * This is an automatically generated prolog. + * + * $Source: src/include/usr/hwas/common/hwasCommon.H $ + * + * IBM CONFIDENTIAL + * + * COPYRIGHT International Business Machines Corp. 2012 + * + * p1 + * + * Object Code Only (OCO) source materials + * Licensed Internal Code Source Materials + * IBM HostBoot Licensed Internal Code + * + * The source code for this program is not published or other- + * wise divested of its trade secrets, irrespective of what has + * been deposited with the U.S. Copyright Office. + * + * Origin: 30 + * + * IBM_PROLOG_END_TAG + */ +/** + * @file hwasCommon.H + * + * @brief Notes the HWAS common functions and the HWAS platform-specific + * interfaces that need to be defined and implemented. + */ + +#ifndef HWASCOMMON_H_ +#define HWASCOMMON_H_ + +// 'system' headers +#include +#include +#include + +// platform specific headers + +// following file needs to do +// #define HWAS_DBG(_fmt_, _args_...) +// #define HWAS_ERR(_fmt_, _args_...) +#include + +// following file needs to do +// #define HWAS_ASSERT(_expr_...) +#include + +namespace HWAS +{ + +/** + * @brief platform specific code to determine if the targets in the + * input list are present or not. If the target is NOT present, + * target should be erased from the list + * + * @param[in] io_targets TargetHandleList of targets to check for presence + * + * @return errlHndl_t valid errlHndl_t handle if there was an error + * NULL if no errors; + */ +errlHndl_t platPresenceDetect(TARGETING::TargetHandleList &io_targets); + +/** + * @brief platform specific code to determine the ID/EC of the input + * target. The platform specific code is responsible for setting the + * ATTR_EC and ATTR_CHIP_ID in each target. + * + * @param[in] i_target target to check for chip ID/EC + * + * @return errlHndl_t valid errlHndl_t handle if there was an error + * NULL if no errors; + */ +errlHndl_t platReadIDEC(const TARGETING::TargetHandle_t &i_target); + +} // namespace HWAS + +#endif // HWASCOMMON_H_ diff --git a/src/include/usr/hwas/common/hwasError.H b/src/include/usr/hwas/common/hwasError.H new file mode 100644 index 000000000..d2ced14e0 --- /dev/null +++ b/src/include/usr/hwas/common/hwasError.H @@ -0,0 +1,40 @@ +/* IBM_PROLOG_BEGIN_TAG + * This is an automatically generated prolog. + * + * $Source: src/include/usr/hwas/common/hwasError.H $ + * + * IBM CONFIDENTIAL + * + * COPYRIGHT International Business Machines Corp. 2012 + * + * p1 + * + * Object Code Only (OCO) source materials + * Licensed Internal Code Source Materials + * IBM HostBoot Licensed Internal Code + * + * The source code for this program is not published or other- + * wise divested of its trade secrets, irrespective of what has + * been deposited with the U.S. Copyright Office. + * + * Origin: 30 + * + * IBM_PROLOG_END_TAG + */ +#ifndef __HWAS_ERROR_H +#define __HWAS_ERROR_H + +/** +* @file hwas/hwasError.H +* +* @brief Common header to abstract away error handling differences between +* platforms +*/ + +//****************************************************************************** +// Includes +//****************************************************************************** + +#include + +#endif // __HWAS_ERROR_H diff --git a/src/include/usr/hwas/common/hwas_reasoncodes.H b/src/include/usr/hwas/common/hwas_reasoncodes.H new file mode 100644 index 000000000..a7ad56aae --- /dev/null +++ b/src/include/usr/hwas/common/hwas_reasoncodes.H @@ -0,0 +1,44 @@ +// IBM_PROLOG_BEGIN_TAG +// This is an automatically generated prolog. +// +// $Source: src/include/usr/hwas/hwas_reasoncodes.H $ +// +// IBM CONFIDENTIAL +// +// COPYRIGHT International Business Machines Corp. 2011 +// +// p1 +// +// Object Code Only (OCO) source materials +// Licensed Internal Code Source Materials +// IBM HostBoot Licensed Internal Code +// +// The source code for this program is not published or other- +// wise divested of its trade secrets, irrespective of what has +// been deposited with the U.S. Copyright Office. +// +// Origin: 30 +// +// IBM_PROLOG_END +#ifndef HWAS_REASONCODES_H +#define HWAS_REASONCODES_H + +#include + +namespace HWAS +{ + enum HwasModuleID + { + MOD_DECONFIG_GARD = 0x01, + }; + + enum HwasReasonCode + { + RC_TARGET_NOT_DECONFIGURABLE = HWAS_COMP_ID | 0x01, + RC_TARGET_NOT_GARDABLE = HWAS_COMP_ID | 0x02, + RC_GARD_REPOSITORY_FULL = HWAS_COMP_ID | 0x03, + RC_TARGET_NOT_FOUND_FOR_GARD_RECORD = HWAS_COMP_ID | 0x04, + }; +}; + +#endif diff --git a/src/include/usr/hwas/deconfigGard.H b/src/include/usr/hwas/deconfigGard.H index c3208e71e..b3045d8b4 100644 --- a/src/include/usr/hwas/deconfigGard.H +++ b/src/include/usr/hwas/deconfigGard.H @@ -35,6 +35,7 @@ #include #include #include +#include #include namespace HWAS diff --git a/src/include/usr/hwas/hostbootIstep.H b/src/include/usr/hwas/hostbootIstep.H new file mode 100644 index 000000000..f770a0bfd --- /dev/null +++ b/src/include/usr/hwas/hostbootIstep.H @@ -0,0 +1,125 @@ +/* IBM_PROLOG_BEGIN_TAG + * This is an automatically generated prolog. + * + * $Source: src/include/usr/hwas/hostbootIstep.H $ + * + * IBM CONFIDENTIAL + * + * COPYRIGHT International Business Machines Corp. 2012 + * + * p1 + * + * Object Code Only (OCO) source materials + * Licensed Internal Code Source Materials + * IBM HostBoot Licensed Internal Code + * + * The source code for this program is not published or other- + * wise divested of its trade secrets, irrespective of what has + * been deposited with the U.S. Copyright Office. + * + * Origin: 30 + * + * IBM_PROLOG_END_TAG + */ +/** + * @file hostbootIstep.H + * + * @brief Defines hostboot functions that get called by the istep dispatcher + * and call into the HWAS common interface + */ + +#ifndef HOSTBOOTISTEP_H_ +#define HOSTBOOTISTEP_H_ + +namespace HWAS +{ + +// hostboot only functions that are called by the istep dispatcher +// and then call the HWAS common functions + +/** + * @brief host_init_fsi Setup the FSI links to slave chips + * + * Call into the hwas platform-specific initHardware() function + * to init the FSI hardware. + * + * param[in,out] io_pArgs - (normally) a pointer to a TaskArgs struct, + * or NULL. + * return none + */ +void host_init_fsi( void *io_pArgs ); + +/** + * @brief host_set_ipl_parms Build ipl parameters + * + * TBD + * + * param[in,out] io_pArgs - (normally) a pointer to a TaskArgs struct, + * or NULL. + * return none + */ +void host_set_ipl_parms( void *io_pArgs ); + +/** + * @brief host_discover_targets Builds targeting + * + * This routine will walk through all the targets and initialize HWAS STATE + * to a known default value. + * + * Currently everything is initialized to powered off, etc. + * + * Call into the hwas platform-specific presenceDetect() function to + * read the hardware information, and apply it to the target states. + * + * param[in,out] io_pArgs - (normally) a pointer to a TaskArgs struct, + * or NULL. + * return none + */ +void host_discover_targets( void *io_pArgs ); + +/** + * @brief host_gard Do Gard + * + * Collect GARD information and apply it to the target states. + * + * param[in,out] io_pArgs - (normally) a pointer to a TaskArgs struct, + * or NULL. + * return none + */ +void host_gard( void *io_pArgs ); + +/** + * @brief host_cancontinue_clear Clear deconfigured status + * + * TBD + * + * param[in,out] io_pArgs - (normally) a pointer to a TaskArgs struct, + * or NULL. + * return none + */ +void host_cancontinue_clear( void *io_pArgs ); + +/** + * @brief proc_check_slave_sbe_seeprom_complete Check Slave SBE Complete + * + * TBD + * + * param[in,out] io_pArgs - (normally) a pointer to a TaskArgs struct, + * or NULL. + * return none + */ +void proc_check_slave_sbe_seeprom_complete( void *io_pArgs ); + +/** + * @brief proc_xmit_sbe vSBE Init of Slave Chips + * + * TBD + * + * param[in,out] io_pArgs - (normally) a pointer to a TaskArgs struct, + * or NULL. + * return none + */ +void proc_xmit_sbe( void *io_pArgs ); + +} // namespace HWAS +#endif // HOSTBOOTISTEP_H_ diff --git a/src/include/usr/hwas/hwas.H b/src/include/usr/hwas/hwas.H deleted file mode 100644 index 8d5c7fbb6..000000000 --- a/src/include/usr/hwas/hwas.H +++ /dev/null @@ -1,80 +0,0 @@ -// IBM_PROLOG_BEGIN_TAG -// This is an automatically generated prolog. -// -// $Source: src/include/usr/hwas/hwas.H $ -// -// IBM CONFIDENTIAL -// -// COPYRIGHT International Business Machines Corp. 2011 -// -// p1 -// -// Object Code Only (OCO) source materials -// Licensed Internal Code Source Materials -// IBM HostBoot Licensed Internal Code -// -// The source code for this program is not published or other- -// wise divested of its trade secrets, irrespective of what has -// been deposited with the U.S. Copyright Office. -// -// Origin: 30 -// -// IBM_PROLOG_END -#ifndef __HWAS_HWAS_H -#define __HWAS_HWAS_H -/** - * @file hwas.H - * - * HardWare Availability Service prototypes. - * In trying to keep with C++ tradition, doxygen documentation for functions - * are here in the .H file. - * - * All of the following routines are "named isteps" - they are invoked as - * tasks by the @ref IStepDispatcher. - * - */ - - -/******************************************************************************/ -// Includes -/******************************************************************************/ -#include -#include - -namespace HWAS -{ - -/** - * @brief initHardware Common HWAS function to setup the hardware - * - * It will call into the hwas platform-specific platInitHardware() - * function to init the FSI hardware. - * - * @param none - * - * @return errlHndl_t valid errlHndl_t handle if there was an error - * NULL if no errors; - */ -errlHndl_t initHardware(); - -/** - * @brief discoverTagets Common HWAS function to build targeting - * - * This routine will walk through all the targets and initialize HWAS STATE - * to a known default value (powered off, etc.) - * - * Then call into the hwas platform-specific platPresenceDetect() function - * to read the hardware information, and apply it to the target states, - * and call into the hwas platform-specifiction platReadIDEC() function - * to get and set the ChipID and EC values. - * - * @param none - * - * @return errlHndl_t valid errlHndl_t handle if there was an error - * NULL if no errors; - */ -errlHndl_t discoverTargets(); - -}; // end namespace - -#endif diff --git a/src/include/usr/hwas/hwasCommon.H b/src/include/usr/hwas/hwasCommon.H deleted file mode 100644 index 412fe81ef..000000000 --- a/src/include/usr/hwas/hwasCommon.H +++ /dev/null @@ -1,75 +0,0 @@ -// IBM_PROLOG_BEGIN_TAG -// This is an automatically generated prolog. -// -// $Source: src/include/usr/hwas/hwasCommon.H $ -// -// IBM CONFIDENTIAL -// -// COPYRIGHT International Business Machines Corp. 2012 -// -// p1 -// -// Object Code Only (OCO) source materials -// Licensed Internal Code Source Materials -// IBM HostBoot Licensed Internal Code -// -// The source code for this program is not published or other- -// wise divested of its trade secrets, irrespective of what has -// been deposited with the U.S. Copyright Office. -// -// Origin: 30 -// -// IBM_PROLOG_END -/** - * @file hwasCommon.H - * - * @brief Notes the HWAS common functions and the HWAS platform-specific - * interfaces that need to be defined and implemented. - */ - -#ifndef HWASCOMMON_H_ -#define HWASCOMMON_H_ - -// 'system' headers -#include -#include -#include -#include - -// platform specific headers - -// following file needs to do -// #define HWAS_DBG(_fmt_, _args_...) -// #define HWAS_ERR(_fmt_, _args_...) -#include - -namespace HWAS -{ - -/** - * @brief platform specific code to determine if the targets in the - * input list are present or not. If the target is NOT present, - * target should be erased from the list - * - * @param[in] io_targets TargetHandleList of targets to check for presence - * - * @return errlHndl_t valid errlHndl_t handle if there was an error - * NULL if no errors; - */ -errlHndl_t platPresenceDetect(TARGETING::TargetHandleList &io_targets); - -/** - * @brief platform specific code to determine the ID/EC of the input - * target. The platform specific code is responsible for setting the - * ATTR_EC and ATTR_CHIP_ID in each target. - * - * @param[in] i_target target to check for chip ID/EC - * - * @return errlHndl_t valid errlHndl_t handle if there was an error - * NULL if no errors; - */ -errlHndl_t platReadIDEC(const TARGETING::TargetHandle_t &i_target); - -} // namespace HWAS - -#endif // HWASCOMMON_H_ diff --git a/src/include/usr/hwas/hwasError.H b/src/include/usr/hwas/hwasError.H deleted file mode 100644 index 884575093..000000000 --- a/src/include/usr/hwas/hwasError.H +++ /dev/null @@ -1,39 +0,0 @@ -// IBM_PROLOG_BEGIN_TAG -// This is an automatically generated prolog. -// -// $Source: src/include/usr/hwas/hwasError.H $ -// -// IBM CONFIDENTIAL -// -// COPYRIGHT International Business Machines Corp. 2012 -// -// p1 -// -// Object Code Only (OCO) source materials -// Licensed Internal Code Source Materials -// IBM HostBoot Licensed Internal Code -// -// The source code for this program is not published or other- -// wise divested of its trade secrets, irrespective of what has -// been deposited with the U.S. Copyright Office. -// -// Origin: 30 -// -// IBM_PROLOG_END -#ifndef __HWAS_ERROR_H -#define __HWAS_ERROR_H - -/** -* @file hwas/hwasError.H -* -* @brief Common header to abstract away error handling differences between -* platforms -*/ - -//****************************************************************************** -// Includes -//****************************************************************************** - -#include - -#endif // __HWAS_ERROR_H diff --git a/src/include/usr/hwas/hwasPlatAssert.H b/src/include/usr/hwas/hwasPlatAssert.H new file mode 100644 index 000000000..cc53f2a4d --- /dev/null +++ b/src/include/usr/hwas/hwasPlatAssert.H @@ -0,0 +1,60 @@ +/* IBM_PROLOG_BEGIN_TAG + * This is an automatically generated prolog. + * + * $Source: src/include/usr/hwas/hwasPlatAssert.H $ + * + * IBM CONFIDENTIAL + * + * COPYRIGHT International Business Machines Corp. 2012 + * + * p1 + * + * Object Code Only (OCO) source materials + * Licensed Internal Code Source Materials + * IBM HostBoot Licensed Internal Code + * + * The source code for this program is not published or other- + * wise divested of its trade secrets, irrespective of what has + * been deposited with the U.S. Copyright Office. + * + * Origin: 30 + * + * IBM_PROLOG_END_TAG + */ +#ifndef __HWAS_PLAT_ASSERT_H +#define __HWAS_PLAT_ASSERT_H + +/** + * @file hwas/hwasPlatAssert.H + * @brief Forward common hwas assert requests to the platform specific + * handlers + * + * There are two different assert types provided: + * Standard assert behavior: + * assert(foo) + * + * Standard assert behavior with a custom trace message: + * assert(foo, "This is a trace %d", 1234) + */ + +//****************************************************************************** +// Includes +//****************************************************************************** + +#include + +/** + * @brief Forward common hwas assert requests to platform specific handler + * + * @par Detailed Description: + * Forwards assert request to platform specific assert macro which verifies + * condition, calls custom trace if provided, and ultimately calls platform + * assert + * + * @param[in] expr,... + * Printf-like expression to act as the assert message + */ +#define HWAS_ASSERT(expr,...) \ + assert(expr,__VA_ARGS__) + +#endif // __HWAS_PLAT_ASSERT_H diff --git a/src/include/usr/hwas/hwasPlatError.H b/src/include/usr/hwas/hwasPlatError.H new file mode 100644 index 000000000..be382e290 --- /dev/null +++ b/src/include/usr/hwas/hwasPlatError.H @@ -0,0 +1,60 @@ +/* IBM_PROLOG_BEGIN_TAG + * This is an automatically generated prolog. + * + * $Source: src/include/usr/hwas/hwasPlatError.H $ + * + * IBM CONFIDENTIAL + * + * COPYRIGHT International Business Machines Corp. 2012 + * + * p1 + * + * Object Code Only (OCO) source materials + * Licensed Internal Code Source Materials + * IBM HostBoot Licensed Internal Code + * + * The source code for this program is not published or other- + * wise divested of its trade secrets, irrespective of what has + * been deposited with the U.S. Copyright Office. + * + * Origin: 30 + * + * IBM_PROLOG_END_TAG + */ +#ifndef __HWAS_PLAT_ERROR_H +#define __HWAS_PLAT_ERROR_H + +/** +* @file hwas/hwasPlatError.H +* +* @brief Adapts platform neutral error log requests to the platform +*/ + +//****************************************************************************** +// Includes +//****************************************************************************** + +// Include the platform specific errlentry.H file and pick up the platform +// specific errlHndlt_t typedef. This is enough for common code to use pass +// errlHndl_t pointers around and check for NULL +#include + +namespace HWAS +{ + +namespace COMMON +{ +/** +* @brief Import the ::ERRORLOG namespace into the ::HWAS:COMMON +* namespace. This allows all the common hwas code to use the +* same namespacing yet directly invoke platform specific error log +* support. Since nothing else is declared in the namespace, there is +* no danger of a namespace collision. +*/ +using namespace ::ERRORLOG; + +} // End namespace COMMON + +} // End namespace HWAS + +#endif // __HWAS_PLAT_ERROR_H diff --git a/src/include/usr/hwas/hwasPlatTrace.H b/src/include/usr/hwas/hwasPlatTrace.H new file mode 100644 index 000000000..fcabb9ba6 --- /dev/null +++ b/src/include/usr/hwas/hwasPlatTrace.H @@ -0,0 +1,59 @@ +/* IBM_PROLOG_BEGIN_TAG + * This is an automatically generated prolog. + * + * $Source: src/include/usr/hwas/hwasPlatTrace.H $ + * + * IBM CONFIDENTIAL + * + * COPYRIGHT International Business Machines Corp. 2012 + * + * p1 + * + * Object Code Only (OCO) source materials + * Licensed Internal Code Source Materials + * IBM HostBoot Licensed Internal Code + * + * The source code for this program is not published or other- + * wise divested of its trade secrets, irrespective of what has + * been deposited with the U.S. Copyright Office. + * + * Origin: 30 + * + * IBM_PROLOG_END_TAG + */ +/** + * @file hwas/hwasPlatTrace.H + * + * @brief Defines platform interfaces and whatnot needed for trace in the + * HWAS common and platform specific functions + */ + +#ifndef HWASPLATTRACE_H_ +#define HWASPLATTRACE_H_ + +#include +#include + +//****************************************************************************** +// Trace descriptors that are defined in a C file +//****************************************************************************** +namespace HWAS +{ + typedef trace_desc_t* HWAS_TD_t; + extern HWAS_TD_t g_trac_dbg_hwas; // debug - fast + extern HWAS_TD_t g_trac_imp_hwas; // important - slow +} + +// Debug traces (go into fast trace buffer that can wrap often) +#define HWAS_DBG(_fmt_, _args_...) \ + TRACDCOMP(g_trac_dbg_hwas, TRACE_FILENAME _fmt_, ##_args_) + +// Information traces (go into slow trace buffer that should not wrap often) +#define HWAS_INF(_fmt_, _args_...) \ + TRACFCOMP(g_trac_imp_hwas, TRACE_FILENAME _fmt_, ##_args_) + +// Error traces (go into slow trace buffer that should not wrap often) +#define HWAS_ERR(_fmt_, _args_...) \ + TRACFCOMP(g_trac_imp_hwas, TRACE_FILENAME _fmt_, ##_args_) + +#endif // HWASPLATTRACE_H_ diff --git a/src/include/usr/hwas/hwas_reasoncodes.H b/src/include/usr/hwas/hwas_reasoncodes.H deleted file mode 100644 index a7ad56aae..000000000 --- a/src/include/usr/hwas/hwas_reasoncodes.H +++ /dev/null @@ -1,44 +0,0 @@ -// IBM_PROLOG_BEGIN_TAG -// This is an automatically generated prolog. -// -// $Source: src/include/usr/hwas/hwas_reasoncodes.H $ -// -// IBM CONFIDENTIAL -// -// COPYRIGHT International Business Machines Corp. 2011 -// -// p1 -// -// Object Code Only (OCO) source materials -// Licensed Internal Code Source Materials -// IBM HostBoot Licensed Internal Code -// -// The source code for this program is not published or other- -// wise divested of its trade secrets, irrespective of what has -// been deposited with the U.S. Copyright Office. -// -// Origin: 30 -// -// IBM_PROLOG_END -#ifndef HWAS_REASONCODES_H -#define HWAS_REASONCODES_H - -#include - -namespace HWAS -{ - enum HwasModuleID - { - MOD_DECONFIG_GARD = 0x01, - }; - - enum HwasReasonCode - { - RC_TARGET_NOT_DECONFIGURABLE = HWAS_COMP_ID | 0x01, - RC_TARGET_NOT_GARDABLE = HWAS_COMP_ID | 0x02, - RC_GARD_REPOSITORY_FULL = HWAS_COMP_ID | 0x03, - RC_TARGET_NOT_FOUND_FOR_GARD_RECORD = HWAS_COMP_ID | 0x04, - }; -}; - -#endif diff --git a/src/include/usr/hwas/plat/error.H b/src/include/usr/hwas/plat/error.H deleted file mode 100644 index c578f5efa..000000000 --- a/src/include/usr/hwas/plat/error.H +++ /dev/null @@ -1,59 +0,0 @@ -// IBM_PROLOG_BEGIN_TAG -// This is an automatically generated prolog. -// -// $Source: src/include/usr/hwas/plat/error.H $ -// -// IBM CONFIDENTIAL -// -// COPYRIGHT International Business Machines Corp. 2012 -// -// p1 -// -// Object Code Only (OCO) source materials -// Licensed Internal Code Source Materials -// IBM HostBoot Licensed Internal Code -// -// The source code for this program is not published or other- -// wise divested of its trade secrets, irrespective of what has -// been deposited with the U.S. Copyright Office. -// -// Origin: 30 -// -// IBM_PROLOG_END -#ifndef __HWAS_PLAT_ERROR_H -#define __HWAS_PLAT_ERROR_H - -/** -* @file hwas/plat/error.H -* -* @brief Adapts platform neutral error log requests to the platform -*/ - -//****************************************************************************** -// Includes -//****************************************************************************** - -// Include the platform specific errlentry.H file and pick up the platform -// specific errlHndlt_t typedef. This is enough for common code to use pass -// errlHndl_t pointers around and check for NULL -#include - -namespace HWAS -{ - -namespace COMMON -{ -/** -* @brief Import the ::ERRORLOG namespace into the ::HWAS:COMMON -* namespace. This allows all the common hwas code to use the -* same namespacing yet directly invoke platform specific error log -* support. Since nothing else is declared in the namespace, there is -* no danger of a namespace collision. -*/ -using namespace ::ERRORLOG; - -} // End namespace COMMON - -} // End namespace HWAS - -#endif // __HWAS_PLAT_ERROR_H diff --git a/src/include/usr/hwas/plat/hostbootIstep.H b/src/include/usr/hwas/plat/hostbootIstep.H deleted file mode 100644 index b0338b543..000000000 --- a/src/include/usr/hwas/plat/hostbootIstep.H +++ /dev/null @@ -1,124 +0,0 @@ -// IBM_PROLOG_BEGIN_TAG -// This is an automatically generated prolog. -// -// $Source: src/include/usr/hwas/plat/hostbootIstep.H $ -// -// IBM CONFIDENTIAL -// -// COPYRIGHT International Business Machines Corp. 2012 -// -// p1 -// -// Object Code Only (OCO) source materials -// Licensed Internal Code Source Materials -// IBM HostBoot Licensed Internal Code -// -// The source code for this program is not published or other- -// wise divested of its trade secrets, irrespective of what has -// been deposited with the U.S. Copyright Office. -// -// Origin: 30 -// -// IBM_PROLOG_END -/** - * @file hostbootIstep.H - * - * @brief Defines hostboot functions that get called by the istep dispatcher - * and call into the HWAS common interface - */ - -#ifndef HOSTBOOTISTEP_H_ -#define HOSTBOOTISTEP_H_ - -namespace HWAS -{ - -// hostboot only functions that are called by the istep dispatcher -// and then call the HWAS common functions - -/** - * @brief host_init_fsi Setup the FSI links to slave chips - * - * Call into the hwas platform-specific initHardware() function - * to init the FSI hardware. - * - * param[in,out] io_pArgs - (normally) a pointer to a TaskArgs struct, - * or NULL. - * return none - */ -void host_init_fsi( void *io_pArgs ); - -/** - * @brief host_set_ipl_parms Build ipl parameters - * - * TBD - * - * param[in,out] io_pArgs - (normally) a pointer to a TaskArgs struct, - * or NULL. - * return none - */ -void host_set_ipl_parms( void *io_pArgs ); - -/** - * @brief host_discover_targets Builds targeting - * - * This routine will walk through all the targets and initialize HWAS STATE - * to a known default value. - * - * Currently everything is initialized to powered off, etc. - * - * Call into the hwas platform-specific presenceDetect() function to - * read the hardware information, and apply it to the target states. - * - * param[in,out] io_pArgs - (normally) a pointer to a TaskArgs struct, - * or NULL. - * return none - */ -void host_discover_targets( void *io_pArgs ); - -/** - * @brief host_gard Do Gard - * - * Collect GARD information and apply it to the target states. - * - * param[in,out] io_pArgs - (normally) a pointer to a TaskArgs struct, - * or NULL. - * return none - */ -void host_gard( void *io_pArgs ); - -/** - * @brief host_cancontinue_clear Clear deconfigured status - * - * TBD - * - * param[in,out] io_pArgs - (normally) a pointer to a TaskArgs struct, - * or NULL. - * return none - */ -void host_cancontinue_clear( void *io_pArgs ); - -/** - * @brief proc_check_slave_sbe_seeprom_complete Check Slave SBE Complete - * - * TBD - * - * param[in,out] io_pArgs - (normally) a pointer to a TaskArgs struct, - * or NULL. - * return none - */ -void proc_check_slave_sbe_seeprom_complete( void *io_pArgs ); - -/** - * @brief proc_xmit_sbe vSBE Init of Slave Chips - * - * TBD - * - * param[in,out] io_pArgs - (normally) a pointer to a TaskArgs struct, - * or NULL. - * return none - */ -void proc_xmit_sbe( void *io_pArgs ); - -} // namespace HWAS -#endif // HOSTBOOTISTEP_H_ diff --git a/src/include/usr/hwas/plat/hwasPlatTrace.H b/src/include/usr/hwas/plat/hwasPlatTrace.H deleted file mode 100644 index a82687c30..000000000 --- a/src/include/usr/hwas/plat/hwasPlatTrace.H +++ /dev/null @@ -1,54 +0,0 @@ -// IBM_PROLOG_BEGIN_TAG -// This is an automatically generated prolog. -// -// $Source: src/include/usr/hwas/plat/hwasPlatTrace.H $ -// -// IBM CONFIDENTIAL -// -// COPYRIGHT International Business Machines Corp. 2012 -// -// p1 -// -// Object Code Only (OCO) source materials -// Licensed Internal Code Source Materials -// IBM HostBoot Licensed Internal Code -// -// The source code for this program is not published or other- -// wise divested of its trade secrets, irrespective of what has -// been deposited with the U.S. Copyright Office. -// -// Origin: 30 -// -// IBM_PROLOG_END -/** - * @file hwasPlatTrace.H - * - * @brief Defines platform interfaces and whatnot needed for trace in the - * HWAS common and platform specific functions - */ - -#ifndef HWASPLATTRACE_H_ -#define HWASPLATTRACE_H_ - -#include -#include - -//****************************************************************************** -// Trace descriptors that are defined in a C file -//****************************************************************************** -extern trace_desc_t *g_trac_dbg_hwas; // debug - fast -extern trace_desc_t *g_trac_imp_hwas; // important - slow - -// Debug traces (go into fast trace buffer that can wrap often) -#define HWAS_DBG(_fmt_, _args_...) \ - TRACDCOMP(g_trac_dbg_hwas, TRACE_FILENAME _fmt_, ##_args_) - -// Information traces (go into slow trace buffer that should not wrap often) -#define HWAS_INF(_fmt_, _args_...) \ - TRACFCOMP(g_trac_imp_hwas, TRACE_FILENAME _fmt_, ##_args_) - -// Error traces (go into slow trace buffer that should not wrap often) -#define HWAS_ERR(_fmt_, _args_...) \ - TRACFCOMP(g_trac_imp_hwas, TRACE_FILENAME _fmt_, ##_args_) - -#endif // HWASPLATTRACE_H_ diff --git a/src/include/usr/isteps/istep06list.H b/src/include/usr/isteps/istep06list.H index 69465b7ab..d736356e9 100644 --- a/src/include/usr/isteps/istep06list.H +++ b/src/include/usr/isteps/istep06list.H @@ -5,7 +5,7 @@ * * IBM CONFIDENTIAL * - * COPYRIGHT International Business Machines Corp. 2011 - 2012 + * COPYRIGHT International Business Machines Corp. 2011-2012 * * p1 * @@ -37,8 +37,8 @@ #include #include -#include -#include +#include +#include namespace INITSERVICE -- cgit v1.2.3