Skip to content

Commit

Permalink
Move kind library to generic
Browse files Browse the repository at this point in the history
Change-Id: I89d58ecea87a9575faf32aeeb6d115b991530e1b
Original-Change-Id: I3b5ce73bce01b36fa8faef7810002eecabbe6d35
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/75003
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com>
Tested-by: HWSV CI <hwsv-ci+hostboot@us.ibm.com>
Reviewed-by: STEPHEN GLANCY <sglancy@us.ibm.com>
Dev-Ready: Alvin Wang <wangat@tw.ibm.com>
Reviewed-by: Louis Stermole <stermole@us.ibm.com>
Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/100729
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>
  • Loading branch information
alvintpwang authored and dcrowell77 committed Jul 22, 2020
1 parent 2c11a06 commit 1b0c506
Showing 1 changed file with 60 additions and 0 deletions.
60 changes: 60 additions & 0 deletions src/import/chips/p9/procedures/hwp/memory/lib/dimm/nimbus_kind.C
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,63 @@
/* permissions and limitations under the License. */
/* */
/* IBM_PROLOG_END_TAG */

///
/// @file kind.C
/// @brief Encapsulation for dimms of all types
///
// *HWP HWP Owner: Louis Stermole <stermole@us.ibm.com>
// *HWP HWP Backup: Andre Marin <aamarin@us.ibm.com>
// *HWP Team: Memory
// *HWP Level: 3
// *HWP Consumed by: HB:FSP



#include <fapi2.H>

#include <lib/shared/nimbus_defaults.H>
#include <lib/shared/mss_const.H>
#include <lib/mss_attribute_accessors.H>
#include <generic/memory/lib/utils/c_str.H>
#include <generic/memory/lib/utils/dimm/kind.H>

namespace mss
{

namespace dimm
{

///
/// @class mss::dimm::kind specilization for NIMBUS
/// @brief A class containing information about a dimm like ranks, density, configuration - what kind of dimm is it?
///
template<>
kind<mss::mc_type::NIMBUS>::kind(const fapi2::Target<fapi2::TARGET_TYPE_DIMM>& i_target) :
iv_target(i_target),
iv_module_height(0)
{
FAPI_TRY( mss::eff_dram_gen(i_target, iv_dram_generation) );
FAPI_TRY( mss::eff_dimm_type(i_target, iv_dimm_type) );
FAPI_TRY( mss::eff_dram_density(i_target, iv_dram_density) );
FAPI_TRY( mss::eff_dram_width(i_target, iv_dram_width) );
FAPI_TRY( mss::eff_num_master_ranks_per_dimm(i_target, iv_master_ranks) );
FAPI_TRY( mss::eff_num_ranks_per_dimm(i_target, iv_total_ranks) );
FAPI_TRY( mss::eff_dram_row_bits(i_target, iv_rows) );
FAPI_TRY( mss::eff_dimm_size(i_target, iv_size) );
FAPI_TRY( mss::eff_dram_mfg_id(i_target, iv_mfgid) );
FAPI_TRY( mss::eff_prim_stack_type( i_target, iv_stack_type) );
FAPI_TRY( mss::eff_hybrid( i_target, iv_hybrid ));
FAPI_TRY( mss::eff_hybrid_memory_type( i_target, iv_hybrid_memory_type ));
FAPI_TRY( mss::eff_rcd_mfg_id(i_target, iv_rcd_mfgid) );
return;

fapi_try_exit:
// Not 100% sure what to do here ...
FAPI_ERR("error initializing DIMM structure: %s 0x%016lx", mss::c_str(i_target), uint64_t(fapi2::current_err));
fapi2::Assert(false);
}


} //ns dimm
} //ns mss

0 comments on commit 1b0c506

Please sign in to comment.