diff options
author | Brian Vanderpool <vanderp@us.ibm.com> | 2016-05-19 13:32:06 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2017-12-10 15:56:51 -0500 |
commit | d3ecbc6808176aa9a73c9fb94470028f67633f05 (patch) | |
tree | 461a791e1e29dd2bff3b035c97ed4dda68e3ee47 /src/import/chips/p9/procedures/hwp/pm/p9_cme_sram_access.H | |
parent | a9a0baba8c4c63c3367eb4f18626acc69eea784d (diff) | |
download | talos-hostboot-d3ecbc6808176aa9a73c9fb94470028f67633f05.tar.gz talos-hostboot-d3ecbc6808176aa9a73c9fb94470028f67633f05.zip |
Initial check-in of p9_cme_sram_access
Change-Id: I8e280251e7ff420aa60007a7fe053fd8681726b3
RTC:148998
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/24824
Tested-by: Jenkins Server
Reviewed-by: AMIT J. TENDOLKAR <amit.tendolkar@in.ibm.com>
Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/50670
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins OP Build CI <op-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/import/chips/p9/procedures/hwp/pm/p9_cme_sram_access.H')
-rw-r--r-- | src/import/chips/p9/procedures/hwp/pm/p9_cme_sram_access.H | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/src/import/chips/p9/procedures/hwp/pm/p9_cme_sram_access.H b/src/import/chips/p9/procedures/hwp/pm/p9_cme_sram_access.H new file mode 100644 index 000000000..7b64df928 --- /dev/null +++ b/src/import/chips/p9/procedures/hwp/pm/p9_cme_sram_access.H @@ -0,0 +1,99 @@ +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: src/import/chips/p9/procedures/hwp/pm/p9_cme_sram_access.H $ */ +/* */ +/* OpenPOWER HostBoot Project */ +/* */ +/* Contributors Listed Below - COPYRIGHT 2015,2017 */ +/* [+] 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 */ +/// +/// @file p9_cme_sram_access.H +/// @brief Display data from the targetted CME's SRAM array. +/// +// *HWP HWP Owner : Brian Vanderpool <vanderp@us.ibm.com> +// *HWP Backup HWP Owner: Greg Still <stillgs@us.ibm.com> +// *HWP FW Owner : Sangeetha T S <sangeet2@in.ibm.com> +// *HWP Team : PM +// *HWP Level : 2 +// *HWP Consumed by : HS:CRO:SBE +/// +///----------------------------------------------------------------------------- + +#ifndef _p9_cme_sram_access_H_ +#define _p9_cme_sram_access_H_ + +//------------------------------------------------------------------------------ +// Includes +//------------------------------------------------------------------------------ + +#include <fapi2.H> +#include <p9_quad_scom_addresses.H> + +#include <p9_pm.H> + + +// function pointer typedef definition for HWP call support +typedef fapi2::ReturnCode (*p9_cme_sram_access_FP_t) ( + const fapi2::Target<fapi2::TARGET_TYPE_EX>& i_cme_target, + const uint32_t i_start_address, + const uint32_t i_length_dword, + uint64_t* o_data, + uint32_t& o_dwords_read); + +extern "C" { + + +// ----------------------------------------------------------------------------- +// Function prototype +// ----------------------------------------------------------------------------- + +/// @addtogroup pm_fapi +/// @{ + +/// @brief Display data from the targetted CME's SRAM array. +/// +/// High-level procedure flow: +/// +/// +/// Procedure Prereq: +/// - System clocks are running +/// - CME to display is enabled and unfenced +/// Note that the address does not wrap if the length + starting address exceeds the maximum address +/// +/// @param [in] i_cme_target EX target +/// @param [in] i_start_address Start Address is between 0xFFFF80000 and 0xFFFFFFFF and must be 8B aligned +/// @param [in] i_length_dword Length in dwords (# of accesses) +/// @param [out] o_data Output Data +/// @param [out] o_dwords_read Number of actual words in the output buffer. + +/// +/// @retval FAPI2_RC_SUCCESS +/// @retval RC_PROCPM_GPE_CODE_BAD_MODE + fapi2::ReturnCode p9_cme_sram_access( + const fapi2::Target<fapi2::TARGET_TYPE_EX>& i_cme_target, + const uint32_t i_start_address, + const uint32_t i_length_dword, + uint64_t* o_data, + uint32_t& o_dwords_read); + +/// @} end addtogroup + +} // extern "C" + +#endif // _p9_cme_sram_access_H_ |