summaryrefslogtreecommitdiffstats
path: root/src/import/chips/p9/procedures/hwp/memory/lib
diff options
context:
space:
mode:
authorMatthew Hickman <Matthew.Hickman@ibm.com>2019-04-15 16:32:46 -0500
committerChristian R Geddes <crgeddes@us.ibm.com>2019-07-30 11:38:56 -0500
commitafeaf784ddb685f76b311bb17425f1c1b68c0b5f (patch)
treeb898a26157b6bc52a32d8384ae3ff0aeff63ff97 /src/import/chips/p9/procedures/hwp/memory/lib
parent4a69b75341c33bada63ee7d92fda913ebe68fb8d (diff)
downloadtalos-hostboot-afeaf784ddb685f76b311bb17425f1c1b68c0b5f.tar.gz
talos-hostboot-afeaf784ddb685f76b311bb17425f1c1b68c0b5f.zip
Fixed the ccs port merge conflicts and added lab code
Change-Id: Ic4f40a145452f8e95d99e18f040517499a5597ed Original-Change-Id: I665ea2460a5ace289b17ae868b07a8876b65a0c8 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/75236 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Dev-Ready: STEPHEN GLANCY <sglancy@us.ibm.com> Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com> Reviewed-by: Louis Stermole <stermole@us.ibm.com> Tested-by: HWSV CI <hwsv-ci+hostboot@us.ibm.com> Reviewed-by: Mark Pizzutillo <mark.pizzutillo@ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/81323 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: Christian R Geddes <crgeddes@us.ibm.com>
Diffstat (limited to 'src/import/chips/p9/procedures/hwp/memory/lib')
-rw-r--r--src/import/chips/p9/procedures/hwp/memory/lib/workarounds/quad_encode_workarounds.C7
-rw-r--r--src/import/chips/p9/procedures/hwp/memory/lib/workarounds/quad_encode_workarounds.H24
2 files changed, 16 insertions, 15 deletions
diff --git a/src/import/chips/p9/procedures/hwp/memory/lib/workarounds/quad_encode_workarounds.C b/src/import/chips/p9/procedures/hwp/memory/lib/workarounds/quad_encode_workarounds.C
index b09ab6f70..9d68afdc0 100644
--- a/src/import/chips/p9/procedures/hwp/memory/lib/workarounds/quad_encode_workarounds.C
+++ b/src/import/chips/p9/procedures/hwp/memory/lib/workarounds/quad_encode_workarounds.C
@@ -39,7 +39,8 @@
#include <generic/memory/lib/utils/c_str.H>
#include <generic/memory/lib/utils/find.H>
-#include <lib/ccs/ccs.H>
+#include <lib/ccs/ccs_traits_nimbus.H>
+#include <generic/memory/lib/ccs/ccs.H>
#include <lib/mss_attribute_accessors.H>
#include <lib/dimm/ddr4/mrs_load_ddr4.H>
#include <lib/workarounds/quad_encode_workarounds.H>
@@ -105,7 +106,7 @@ const std::vector< uint64_t> shadow_regs_traits<6>::REGS =
/// @param[in] i_inst instruction to check for an MRS command
/// @return true iff the command contains an MRS command
///
-bool is_command_mrs(const ccs::instruction_t<fapi2::TARGET_TYPE_MCBIST>& i_inst)
+bool is_command_mrs(const ccs::instruction_t& i_inst)
{
// An MRS command is
// 1) at least one chip select active
@@ -132,7 +133,7 @@ bool is_command_mrs(const ccs::instruction_t<fapi2::TARGET_TYPE_MCBIST>& i_inst)
/// @param[in] i_inst instruction to check for an MRS command
/// @return true iff the command contains an MRS command
///
-bool contains_command_mrs(const std::vector<ccs::instruction_t<fapi2::TARGET_TYPE_MCBIST>>& i_inst)
+bool contains_command_mrs(const std::vector<ccs::instruction_t>& i_inst)
{
bool l_contains_mrs = false;
diff --git a/src/import/chips/p9/procedures/hwp/memory/lib/workarounds/quad_encode_workarounds.H b/src/import/chips/p9/procedures/hwp/memory/lib/workarounds/quad_encode_workarounds.H
index cb062e9ac..6ed2316c5 100644
--- a/src/import/chips/p9/procedures/hwp/memory/lib/workarounds/quad_encode_workarounds.H
+++ b/src/import/chips/p9/procedures/hwp/memory/lib/workarounds/quad_encode_workarounds.H
@@ -42,7 +42,7 @@
#include <lib/shared/mss_const.H>
#include <generic/memory/lib/utils/c_str.H>
#include <generic/memory/lib/utils/find.H>
-#include <lib/ccs/ccs.H>
+#include <generic/memory/lib/ccs/ccs.H>
#include <lib/dimm/rank.H>
#include <lib/dimm/ddr4/mrs_load_ddr4.H>
#include <p9_mc_scom_addresses_fld.H>
@@ -87,21 +87,21 @@ fapi2::ReturnCode check_shadow_register_corruption( const fapi2::Target<fapi2::T
/// @param[in] i_inst instruction to check for an MRS command
/// @return true iff the command contains an MRS command
///
-bool is_command_mrs(const ccs::instruction_t<fapi2::TARGET_TYPE_MCBIST>& i_inst);
+bool is_command_mrs(const ccs::instruction_t& i_inst);
///
/// @brief Returns true if a vector of commands contains an MRS command
/// @param[in] i_inst instruction to check for an MRS command
/// @return true iff the command contains an MRS command
///
-bool contains_command_mrs(const std::vector<ccs::instruction_t<fapi2::TARGET_TYPE_MCBIST>>& i_inst);
+bool contains_command_mrs(const std::vector<ccs::instruction_t>& i_inst);
///
/// @brief Converts the CCS instructions to the shadow register configuration
/// @param[in] i_inst CCS instruction to convert
/// @return the register value for the shadow register
///
-inline fapi2::buffer<uint64_t> convert_to_shadow_reg(const ccs::instruction_t<fapi2::TARGET_TYPE_MCBIST>& i_inst)
+inline fapi2::buffer<uint64_t> convert_to_shadow_reg(const ccs::instruction_t& i_inst)
{
fapi2::buffer<uint64_t> l_arr0(i_inst.arr0);
mss::reverse(l_arr0);
@@ -137,7 +137,7 @@ class shadow_regs_traits<0>
/// @return FAPI2_RC_SUCCESS iff OK
///
static inline fapi2::ReturnCode mrs_gen(const fapi2::Target<fapi2::TARGET_TYPE_DIMM>& i_target,
- ccs::instruction_t<fapi2::TARGET_TYPE_MCBIST>& io_inst,
+ ccs::instruction_t& io_inst,
const uint64_t i_rank)
{
constexpr uint8_t LR_2666_MARGIN_ADJUST = 2;
@@ -188,7 +188,7 @@ class shadow_regs_traits<1>
/// @return FAPI2_RC_SUCCESS iff OK
///
static inline fapi2::ReturnCode mrs_gen(const fapi2::Target<fapi2::TARGET_TYPE_DIMM>& i_target,
- ccs::instruction_t<fapi2::TARGET_TYPE_MCBIST>& io_inst,
+ ccs::instruction_t& io_inst,
const uint64_t i_rank)
{
return mss::ddr4::mrs01(i_target, io_inst, i_rank);
@@ -214,7 +214,7 @@ class shadow_regs_traits<2>
/// @return FAPI2_RC_SUCCESS iff OK
///
static inline fapi2::ReturnCode mrs_gen(const fapi2::Target<fapi2::TARGET_TYPE_DIMM>& i_target,
- ccs::instruction_t<fapi2::TARGET_TYPE_MCBIST>& io_inst,
+ ccs::instruction_t& io_inst,
const uint64_t i_rank)
{
return mss::ddr4::mrs02(i_target, io_inst, i_rank);
@@ -240,7 +240,7 @@ class shadow_regs_traits<3>
/// @return FAPI2_RC_SUCCESS iff OK
///
static inline fapi2::ReturnCode mrs_gen(const fapi2::Target<fapi2::TARGET_TYPE_DIMM>& i_target,
- ccs::instruction_t<fapi2::TARGET_TYPE_MCBIST>& io_inst,
+ ccs::instruction_t& io_inst,
const uint64_t i_rank)
{
return mss::ddr4::mrs03(i_target, io_inst, i_rank);
@@ -266,7 +266,7 @@ class shadow_regs_traits<4>
/// @return FAPI2_RC_SUCCESS iff OK
///
static inline fapi2::ReturnCode mrs_gen(const fapi2::Target<fapi2::TARGET_TYPE_DIMM>& i_target,
- ccs::instruction_t<fapi2::TARGET_TYPE_MCBIST>& io_inst,
+ ccs::instruction_t& io_inst,
const uint64_t i_rank)
{
return mss::ddr4::mrs04(i_target, io_inst, i_rank);
@@ -292,7 +292,7 @@ class shadow_regs_traits<5>
/// @return FAPI2_RC_SUCCESS iff OK
///
static inline fapi2::ReturnCode mrs_gen(const fapi2::Target<fapi2::TARGET_TYPE_DIMM>& i_target,
- ccs::instruction_t<fapi2::TARGET_TYPE_MCBIST>& io_inst,
+ ccs::instruction_t& io_inst,
const uint64_t i_rank)
{
return mss::ddr4::mrs05(i_target, io_inst, i_rank);
@@ -318,7 +318,7 @@ class shadow_regs_traits<6>
/// @return FAPI2_RC_SUCCESS iff OK
///
static inline fapi2::ReturnCode mrs_gen(const fapi2::Target<fapi2::TARGET_TYPE_DIMM>& i_target,
- ccs::instruction_t<fapi2::TARGET_TYPE_MCBIST>& io_inst,
+ ccs::instruction_t& io_inst,
const uint64_t i_rank)
{
return mss::ddr4::mrs06(i_target, io_inst, i_rank);
@@ -342,7 +342,7 @@ fapi2::ReturnCode fix_shadow_register_corruption_mr( const fapi2::Target<fapi2::
{
static_assert( MR <= MAX_MR, "MR instance out of range");
- ccs::instruction_t<fapi2::TARGET_TYPE_MCBIST> l_inst;
+ ccs::instruction_t l_inst;
const auto& l_mca = mss::find_target<fapi2::TARGET_TYPE_MCA>(i_target);
// Converts this to DIMM rank. just. in. case.
OpenPOWER on IntegriCloud