summaryrefslogtreecommitdiffstats
path: root/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/mc/exp_port.H
diff options
context:
space:
mode:
authorAlvin Wang <wangat@tw.ibm.com>2019-01-29 02:13:09 -0600
committerDaniel M. Crowell <dcrowell@us.ibm.com>2019-02-24 09:35:40 -0600
commit8f2fbd8180414a5dab93159b6c55974f569f358b (patch)
tree5ae6841d6c9a4bbd3664076358d286cb4b22e4db /src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/mc/exp_port.H
parent361f7d64b58fe080aa47fe55df2604583700ed58 (diff)
downloadtalos-hostboot-8f2fbd8180414a5dab93159b6c55974f569f358b.tar.gz
talos-hostboot-8f2fbd8180414a5dab93159b6c55974f569f358b.zip
Reinstates exp_draminit_mc with change_addr_mux_sel fix
Change-Id: Ief62fadce588bf65e249ae771bd03ab31ed4bddf Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/71201 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Dev-Ready: Louis Stermole <stermole@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: HWSV CI <hwsv-ci+hostboot@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: Louis Stermole <stermole@us.ibm.com> Reviewed-by: STEPHEN GLANCY <sglancy@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/71218 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/ocmb/explorer/procedures/hwp/memory/lib/mc/exp_port.H')
-rw-r--r--src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/mc/exp_port.H111
1 files changed, 111 insertions, 0 deletions
diff --git a/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/mc/exp_port.H b/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/mc/exp_port.H
index e144b9c6f..a65375672 100644
--- a/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/mc/exp_port.H
+++ b/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/mc/exp_port.H
@@ -22,3 +22,114 @@
/* permissions and limitations under the License. */
/* */
/* IBM_PROLOG_END_TAG */
+
+///
+/// @file exp_port.H
+/// @brief Code to support ports
+///
+// *HWP HWP Owner: Stephen Glancy <sglancy@us.ibm.com>
+// *HWP HWP Backup: Andre Marin <aamarin@us.ibm.com>
+// *HWP Team: Memory
+// *HWP Level: 3
+// *HWP Consumed by: HB:FSP
+
+#ifndef __MSS_EXP_PORT_H_
+#define __MSS_EXP_PORT_H_
+
+#include <fapi2.H>
+#include <explorer_scom_addresses.H>
+#include <explorer_scom_addresses_fld.H>
+#include <lib/exp_attribute_accessors_manual.H>
+#include <lib/shared/exp_consts.H>
+#include <generic/memory/lib/utils/mc/gen_mss_port.H>
+#include <generic/memory/lib/utils/shared/mss_generic_consts.H>
+#include <mss_explorer_attribute_getters.H>
+
+namespace mss
+{
+
+///
+/// @brief ATTR_MSS_MEM_MVPD_FWMS getter
+/// @param[in] const ref to the fapi2::Target<fapi2::TARGET_TYPE_OCMB_CHIP>
+/// @param[out] uint32_t* memory to store the value
+/// @note Generated by gen_accessors.pl generateParameters (G)
+/// @return fapi2::ReturnCode - FAPI2_RC_SUCCESS iff get is OK
+/// @note Mark store records from MPVD Lx
+/// keyword
+///
+template<>
+inline fapi2::ReturnCode mvpd_fwms(const fapi2::Target<fapi2::TARGET_TYPE_OCMB_CHIP>& i_target,
+ uint32_t (&o_array)[mss::MARK_STORE_COUNT])
+{
+ return mss::attr::get_mvpd_fwms(i_target, o_array);
+}
+
+///
+/// @class Traits and policy class for port code - specialization for Explorer. The target of registers is TARGET_TYPE_OCMB_CHIP
+///
+template<>
+class portTraits< mss::mc_type::EXPLORER >
+{
+ public:
+ // scom register definition
+ static constexpr uint64_t MBARPC0Q_REG = EXPLR_SRQ_MBARPC0Q;
+
+ static constexpr uint64_t FARB0Q_REG = EXPLR_SRQ_MBA_FARB0Q;
+ static constexpr uint64_t FARB5Q_REG = EXPLR_SRQ_MBA_FARB5Q;
+ static constexpr uint64_t FARB6Q_REG = EXPLR_SRQ_MBA_FARB6Q;
+ static constexpr uint64_t FARB9Q_REG = EXPLR_SRQ_MBA_FARB9Q;
+ static constexpr uint64_t REFRESH_REG = EXPLR_SRQ_MBAREF0Q;
+ static constexpr uint64_t ECC_REG = EXPLR_RDF_RECR;
+ static constexpr uint64_t DSM0Q_REG = EXPLR_SRQ_MBA_DSM0Q;
+ static constexpr uint64_t FWMS_REG = EXPLR_RDF_FWMS0;
+
+ static constexpr uint64_t RRQ_REG = EXPLR_SRQ_MBA_RRQ0Q;
+ static constexpr uint64_t WRQ_REG = EXPLR_SRQ_MBA_WRQ0Q;
+
+ static constexpr uint64_t MAGIC_NUMBER_SIM = 765;
+ static constexpr uint64_t MAGIC_NUMBER_NOT_SIM = 196605;
+
+ // scom register field definition
+ enum
+ {
+ CFG_MIN_MAX_DOMAINS_ENABLE = EXPLR_SRQ_MBARPC0Q_CFG_MIN_MAX_DOMAINS_ENABLE,
+ CFG_CCS_INST_RESET_ENABLE = EXPLR_SRQ_MBA_FARB5Q_CFG_CCS_INST_RESET_ENABLE,
+ CFG_DDR_RESETN = EXPLR_SRQ_MBA_FARB5Q_CFG_DDR_RESETN,
+ CFG_CCS_ADDR_MUX_SEL = EXPLR_SRQ_MBA_FARB5Q_CFG_CCS_ADDR_MUX_SEL,
+ //TODO: It's not defined in scom register header file. Change this once it's available in scom address header file
+ CFG_INIT_COMPLETE = 32, //EXPLR_SRQ_MBA_FARB6Q_CFG_INIT_COMPLETE,
+ CFG_ZQ_PER_CAL_ENABLE = EXPLR_SRQ_MBA_FARB9Q_CFG_ZQ_PER_CAL_ENABLE,
+
+ REFRESH_ENABLE = EXPLR_SRQ_MBAREF0Q_CFG_REFRESH_ENABLE,
+
+ ECC_CHECK_DISABLE = EXPLR_RDF_RECR_MBSECCQ_DISABLE_MEMORY_ECC_CHECK_CORRECT,
+ ECC_CORRECT_DISABLE = EXPLR_RDF_RECR_MBSECCQ_DISABLE_MEMORY_ECC_CORRECT,
+ ECC_USE_ADDR_HASH = EXPLR_RDF_RECR_MBSECCQ_USE_ADDRESS_HASH,
+
+ PORT_FAIL_DISABLE = EXPLR_SRQ_MBA_FARB0Q_CFG_PORT_FAIL_DISABLE,
+ DFI_INIT_START = EXPLR_SRQ_MBA_FARB0Q_CFG_MISR_FEEDBACK_ENABLE,
+ RCD_RECOVERY_DISABLE = EXPLR_SRQ_MBA_FARB0Q_CFG_DISABLE_RCD_RECOVERY,
+
+ RECR_TCE_CORRECTION = EXPLR_RDF_RECR_MBSECCQ_ENABLE_TCE_CORRECTION,
+ RECR_MBSECCQ_DATA_INVERSION = EXPLR_RDF_RECR_MBSECCQ_DATA_INVERSION,
+ RECR_MBSECCQ_DATA_INVERSION_LEN = EXPLR_RDF_RECR_MBSECCQ_DATA_INVERSION_LEN,
+ DSM0Q_RDTAG_DLY = EXPLR_SRQ_MBA_DSM0Q_CFG_RDTAG_DLY,
+ DSM0Q_RDTAG_DLY_LEN = EXPLR_SRQ_MBA_DSM0Q_CFG_RDTAG_DLY_LEN,
+ DSM0Q_WRDONE_DLY = EXPLR_SRQ_MBA_DSM0Q_CFG_WRDONE_DLY,
+ DSM0Q_WRDONE_DLY_LEN = EXPLR_SRQ_MBA_DSM0Q_CFG_WRDONE_DLY_LEN,
+ FARB0Q_RCD_PROTECTION_TIME = EXPLR_SRQ_MBA_FARB0Q_CFG_RCD_PROTECTION_TIME,
+ FARB0Q_RCD_PROTECTION_TIME_LEN = EXPLR_SRQ_MBA_FARB0Q_CFG_RCD_PROTECTION_TIME_LEN,
+
+ FWMS0_MARK = EXPLR_RDF_FWMS0_MARK,
+ FWMS0_MARK_LEN = EXPLR_RDF_FWMS0_MARK_LEN,
+ FWMS0_EXIT_1 = EXPLR_RDF_FWMS0_EXIT_1,
+
+ RRQ_FIFO_MODE = EXPLR_SRQ_MBA_RRQ0Q_CFG_RRQ_FIFO_MODE,
+ WRQ_FIFO_MODE = EXPLR_SRQ_MBA_WRQ0Q_CFG_WRQ_FIFO_MODE,
+ };
+};
+
+
+}// mss
+
+#endif
OpenPOWER on IntegriCloud