summaryrefslogtreecommitdiffstats
path: root/src/import/generic/memory/lib/spd/rdimm/ddr4/rdimm_raw_cards.C
diff options
context:
space:
mode:
authorStephen Glancy <sglancy@us.ibm.com>2017-08-18 10:53:44 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-08-29 11:39:24 -0400
commit2b881ebf90218af1ce41918b214498c2574940e1 (patch)
tree5acce76de62c874ae32eff6c12d3ffa1094fc44f /src/import/generic/memory/lib/spd/rdimm/ddr4/rdimm_raw_cards.C
parent598111fc4b49f16495b41b8461fc01d49239eb42 (diff)
downloadtalos-hostboot-2b881ebf90218af1ce41918b214498c2574940e1.tar.gz
talos-hostboot-2b881ebf90218af1ce41918b214498c2574940e1.zip
Adds DDR4 hybrid NV-RDIMM support
Change-Id: Ie5cc0ed4dc6337c35df2e222cc4e220e5720f0bd Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/44974 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: ANDRE A. MARIN <aamarin@us.ibm.com> Reviewed-by: Louis Stermole <stermole@us.ibm.com> Reviewed-by: JACOB L. HARVEY <jlharvey@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/45182 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/generic/memory/lib/spd/rdimm/ddr4/rdimm_raw_cards.C')
-rw-r--r--src/import/generic/memory/lib/spd/rdimm/ddr4/rdimm_raw_cards.C97
1 files changed, 58 insertions, 39 deletions
diff --git a/src/import/generic/memory/lib/spd/rdimm/ddr4/rdimm_raw_cards.C b/src/import/generic/memory/lib/spd/rdimm/ddr4/rdimm_raw_cards.C
index f6911aa5d..505c7873d 100644
--- a/src/import/generic/memory/lib/spd/rdimm/ddr4/rdimm_raw_cards.C
+++ b/src/import/generic/memory/lib/spd/rdimm/ddr4/rdimm_raw_cards.C
@@ -47,45 +47,6 @@ namespace mss
{
///
-/// @brief raw card C1 settings
-///
-rcw_settings rdimm_rc_c1( 0x02, // RC00
- 0x0C, // RC01
- 0x0F, // RC06_07
- 0x0C, // RC09
- 0x0E, // RC0B
- 0x00, // RC0C
- 0x00, // RC0F
- 0x00, // RC1X
- 0x00, // RC2X
- 0x00, // RC4X
- 0x00, // RC5X
- 0x00, // RC6X
- 0x00, // RC8X
- 0x00, // RC9X
- 0x00); // RCAX
-
-///
-/// @brief raw card C2 settings
-/// @note same settings as C1
-///
-rcw_settings rdimm_rc_c2( 0x02, // RC00
- 0x0C, // RC01
- 0x0F, // RC06_07
- 0x0C, // RC09
- 0x0E, // RC0B
- 0x00, // RC0C
- 0x00, // RC0F
- 0x00, // RC1X
- 0x00, // RC2X
- 0x00, // RC4X
- 0x00, // RC5X
- 0x00, // RC6X
- 0x00, // RC8X
- 0x00, // RC9X
- 0x00); // RCAX
-
-///
/// @brief raw card A1 settings
///
rcw_settings rdimm_rc_a1( 0x02, // RC00
@@ -144,6 +105,44 @@ rcw_settings rdimm_rc_b2( 0x02, // RC00
0x00, // RC9X
0x00);// RCAX
+///
+/// @brief raw card C1 settings
+///
+rcw_settings rdimm_rc_c1( 0x02, // RC00
+ 0x0C, // RC01
+ 0x0F, // RC06_07
+ 0x0C, // RC09
+ 0x0E, // RC0B
+ 0x00, // RC0C
+ 0x00, // RC0F
+ 0x00, // RC1X
+ 0x00, // RC2X
+ 0x00, // RC4X
+ 0x00, // RC5X
+ 0x00, // RC6X
+ 0x00, // RC8X
+ 0x00, // RC9X
+ 0x00); // RCAX
+
+///
+/// @brief raw card C2 settings
+/// @note same settings as C1
+///
+rcw_settings rdimm_rc_c2( 0x02, // RC00
+ 0x0C, // RC01
+ 0x0F, // RC06_07
+ 0x0C, // RC09
+ 0x0E, // RC0B
+ 0x00, // RC0C
+ 0x00, // RC0F
+ 0x00, // RC1X
+ 0x00, // RC2X
+ 0x00, // RC4X
+ 0x00, // RC5X
+ 0x00, // RC6X
+ 0x00, // RC8X
+ 0x00, // RC9X
+ 0x00); // RCAX
////
/// @brief raw card for custom dimms
@@ -164,6 +163,24 @@ rcw_settings rdimm_rc_custom ( 0x02, // RC00
0x00, // RC9X
0x00);// RCAX
+////
+/// @brief raw card for NVDIMMs
+///
+rcw_settings rdimm_rc_nvdimm ( 0x00, // RC00
+ 0x00, // RC01
+ 0x0F, // RC06_07
+ 0x00, // RC09
+ 0x0E, // RC0B
+ 0x00, // RC0C
+ 0x00, // RC0F
+ 0x00, // RC1X
+ 0x00, // RC2X
+ 0x00, // RC4X
+ 0x00, // RC5X
+ 0x00, // RC6X
+ 0x00, // RC8X
+ 0x00, // RC9X
+ 0x00); // RCAX
///
/// @brief raw card VBU settings
@@ -192,6 +209,8 @@ const std::vector< std::pair< uint8_t , rcw_settings> > RAW_CARDS =
// I expect this to grow as Warren M. expects us to have
// settings for every raw card that JEDEC puts out. Openpower
// can't break due to a missing raw card...
+ // Note: This list needs to be kept in numerical order of the raw_card_rev
+ {raw_card_rev::NVDIMM, rdimm_rc_nvdimm},
{raw_card_rev::A1, rdimm_rc_a1},
{raw_card_rev::B1, rdimm_rc_b1},
{raw_card_rev::C1, rdimm_rc_c1},
OpenPOWER on IntegriCloud