diff options
author | Sangeetha T S <sangeet2@in.ibm.com> | 2016-01-12 02:27:55 -0600 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2016-06-10 14:51:08 -0400 |
commit | f9901c5de8785999e7771af2d38f450b5bb7e6b8 (patch) | |
tree | fc26c5f1de9fbab683399a9617f05d2a07a4b7d2 | |
parent | ee03429471a2edb5e00a47bbcd137494ef0bfb43 (diff) | |
download | talos-hostboot-f9901c5de8785999e7771af2d38f450b5bb7e6b8.tar.gz talos-hostboot-f9901c5de8785999e7771af2d38f450b5bb7e6b8.zip |
p9_pm_occ_sram_init: Level 1 - Initial design of interface
Change-Id: I7bfb8c3fe19bdc78989875ffa94de6152435c036
RTC: 144300
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/23224
Tested-by: Jenkins Server
Reviewed-by: Gregory S. Still <stillgs@us.ibm.com>
Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/25633
Tested-by: FSP CI Jenkins
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
3 files changed, 152 insertions, 0 deletions
diff --git a/src/import/chips/p9/procedures/hwp/pm/p9_pm_occ_sram_init.C b/src/import/chips/p9/procedures/hwp/pm/p9_pm_occ_sram_init.C new file mode 100644 index 000000000..b2777b6c2 --- /dev/null +++ b/src/import/chips/p9/procedures/hwp/pm/p9_pm_occ_sram_init.C @@ -0,0 +1,67 @@ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: chips/p9/procedures/hwp/pm/p9_pm_occ_sram_init.C $ */ +/* */ +/* IBM CONFIDENTIAL */ +/* */ +/* EKB Project */ +/* */ +/* COPYRIGHT 2016 */ +/* [+] International Business Machines Corp. */ +/* */ +/* */ +/* The source code for this program is not published or otherwise */ +/* divested of its trade secrets, irrespective of what has been */ +/* deposited with the U.S. Copyright Office. */ +/* */ +/* IBM_PROLOG_END_TAG */ +/// +/// @file p9_pm_occ_sram_init.C +/// @brief Initialize the SRAM in the OCC +/// +// *HWP HWP Owner: Greg Still <stillgs@us.ibm.com> +// *HWP FW Owner: Sangeetha T S <sangeet2@in.ibm.com> +// *HWP Team: PM +// *HWP Level: 1 +// *HWP Consumed by: FSP:HS +// + +// ----------------------------------------------------------------------------- +// Includes +// ----------------------------------------------------------------------------- +#include <p9_pm_occ_sram_init.H> + +// ----------------------------------------------------------------------------- +// Function definitions +// ----------------------------------------------------------------------------- + +fapi2::ReturnCode p9_pm_occ_sram_init( + const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>& i_target, + const p9pm::PM_FLOW_MODE i_mode) +{ + FAPI_INF("Entering p9_pm_occ_sram_init..."); + + // Initialization: perform order or dynamic operations to initialize + // the OCC SRAM using necessary Platform or Feature attributes. + if (i_mode == p9pm::PM_INIT) + { + FAPI_INF("OCC SRAM initialization..."); + } + // Reset: perform reset of OCC SRAM so that it can reconfigured and + // reinitialized + else if (i_mode == p9pm::PM_RESET) + { + FAPI_INF("OCC SRAM reset..."); + } + // Unsupported Mode + else + { + FAPI_ASSERT(false, fapi2::PM_OCCSRAM_BAD_MODE().set_MODE(i_mode), + "ERROR; Unknown mode passed to p9_pm_occ_sram_init. Mode %x", + i_mode); + } + +fapi_try_exit: + return fapi2::current_err; +} diff --git a/src/import/chips/p9/procedures/hwp/pm/p9_pm_occ_sram_init.H b/src/import/chips/p9/procedures/hwp/pm/p9_pm_occ_sram_init.H new file mode 100644 index 000000000..ace741bec --- /dev/null +++ b/src/import/chips/p9/procedures/hwp/pm/p9_pm_occ_sram_init.H @@ -0,0 +1,65 @@ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: chips/p9/procedures/hwp/pm/p9_pm_occ_sram_init.H $ */ +/* */ +/* IBM CONFIDENTIAL */ +/* */ +/* EKB Project */ +/* */ +/* COPYRIGHT 2016 */ +/* [+] International Business Machines Corp. */ +/* */ +/* */ +/* The source code for this program is not published or otherwise */ +/* divested of its trade secrets, irrespective of what has been */ +/* deposited with the U.S. Copyright Office. */ +/* */ +/* IBM_PROLOG_END_TAG */ +/// +/// @file p9_pm_occ_sram_init.H +/// @brief Initialize the SRAM in the OCC +/// +// *HWP HWP Owner: Greg Still <stillgs@us.ibm.com> +// *HWP FW Owner: Sangeetha T S <sangeet2@in.ibm.com> +// *HWP Team: PM +// *HWP Level: 1 +// *HWP Consumed by: FSP:HS +// + +#ifndef _P9_PM_OCC_SRAM_INIT_H_ +#define _P9_PM_OCC_SRAM_INIT_H_ + +//------------------------------------------------------------------------------ +// Includes +//------------------------------------------------------------------------------ +#include <fapi2.H> +#include <p9_pm.H> + +// function pointer typedef definition for HWP call support +typedef fapi2::ReturnCode (*p9_pm_occ_sram_init_FP_t) ( + const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>&, + const p9pm::PM_FLOW_MODE); + +extern "C" +{ + +//------------------------------------------------------------------------------ +// Function prototype +//------------------------------------------------------------------------------ +/// +/// @brief Initialize or Reset the OCC SRAM using necessary Platform +/// or Feature attributes +/// +/// @param[in] i_target Chip target +/// @param[in] i_mode Control mode for the procedure (PM_INIT, PM_RESET) +/// +/// @return FAPI2_RC_SUCCESS on success or error return code +/// + fapi2::ReturnCode p9_pm_occ_sram_init( + const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>& i_target, + const p9pm::PM_FLOW_MODE i_mode); + +} + +#endif // _P9_PM_OCC_SRAM_INIT_H_ diff --git a/src/import/chips/p9/procedures/hwp/pm/p9_pm_occ_sram_init.mk b/src/import/chips/p9/procedures/hwp/pm/p9_pm_occ_sram_init.mk new file mode 100644 index 000000000..d694ec859 --- /dev/null +++ b/src/import/chips/p9/procedures/hwp/pm/p9_pm_occ_sram_init.mk @@ -0,0 +1,20 @@ +# IBM_PROLOG_BEGIN_TAG +# This is an automatically generated prolog. +# +# $Source: chips/p9/procedures/hwp/pm/p9_pm_occ_sram_init.mk $ +# +# IBM CONFIDENTIAL +# +# EKB Project +# +# COPYRIGHT 2016 +# [+] International Business Machines Corp. +# +# +# The source code for this program is not published or otherwise +# divested of its trade secrets, irrespective of what has been +# deposited with the U.S. Copyright Office. +# +# IBM_PROLOG_END_TAG +PROCEDURE=p9_pm_occ_sram_init +$(call BUILD_PROCEDURE) |