Skip to content

Commit

Permalink
Add new DDIMM spd version 0_3 and update UTs
Browse files Browse the repository at this point in the history
Change-Id: I0517bebd0514f0c073e424dc786be7352113c1f8
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/88225
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>
Reviewed-by: Louis Stermole <stermole@us.ibm.com>
Reviewed-by: STEPHEN GLANCY <sglancy@us.ibm.com>
Reviewed-by: ANDRE A MARIN <aamarin@us.ibm.com>
Dev-Ready: Mark Pizzutillo <mark.pizzutillo@ibm.com>
Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com>
Reviewed-by: Jennifer A Stofer <stofer@us.ibm.com>
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/88233
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
markypizz authored and dcrowell77 committed Dec 16, 2019
1 parent b47fb59 commit 0921b80
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 3 deletions.
13 changes: 11 additions & 2 deletions src/import/generic/memory/lib/spd/spd_factory_pattern.H
Expand Up @@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
/* Contributors Listed Below - COPYRIGHT 2018 */
/* Contributors Listed Below - COPYRIGHT 2018,2019 */
/* [+] International Business Machines Corp. */
/* */
/* */
Expand Down Expand Up @@ -219,7 +219,8 @@ class module_factory
RDIMM_DDR4_REV_1_1 { DDR4, RDIMM_MODULE, rev::V1_1},
NVDIMM_DDR4_REV_1_0{ DDR4, NVDIMM_MODULE, rev::V1_0},
NVDIMM_DDR4_REV_1_1{ DDR4, NVDIMM_MODULE, rev::V1_1},
DDIMM_DDR4_REV_0_0 { DDR4, DDIMM_MODULE, rev::V0_0}
DDIMM_DDR4_REV_0_0 { DDR4, DDIMM_MODULE, rev::V0_0},
DDIMM_DDR4_REV_0_3 { DDR4, DDIMM_MODULE, rev::V0_3}
{
// Setup pre-defined maps available to search through
init_map_vars(i_spd_data, iv_decoder_map);
Expand Down Expand Up @@ -270,6 +271,7 @@ class module_factory
const module_key NVDIMM_DDR4_REV_1_0;
const module_key NVDIMM_DDR4_REV_1_1;
const module_key DDIMM_DDR4_REV_0_0;
const module_key DDIMM_DDR4_REV_0_3;

std::map< module_key, std::shared_ptr<T> > iv_decoder_map;

Expand Down Expand Up @@ -329,6 +331,10 @@ class module_factory
// Rev 0.0
// DDIMMs start out life w/the updated general section
o_map[DDIMM_DDR4_REV_0_0] = std::make_shared< decoder<DDR4, BASE_CNFG, rev::V0_0> >(iv_target, i_spd_data);

// Remains mostly the same. New thermal sensor fields and pmic redundancy fields
o_map[DDIMM_DDR4_REV_0_3] = std::make_shared< decoder<DDR4, BASE_CNFG, rev::V0_3> >(iv_target, i_spd_data);

}

///
Expand Down Expand Up @@ -375,6 +381,9 @@ class module_factory
// Rev 0.0
// Life starts out at base revision level
o_map[DDIMM_DDR4_REV_0_0] = std::make_shared< decoder<DDR4, DDIMM_MODULE, rev::V0_0> >(iv_target, i_spd_data);

// Remains mostly the same. New thermal sensor fields and pmic redundancy fields
o_map[DDIMM_DDR4_REV_0_3] = std::make_shared< decoder<DDR4, DDIMM_MODULE, rev::V0_3> >(iv_target, i_spd_data);
}

///
Expand Down
Expand Up @@ -865,6 +865,7 @@ namespace spd
enum rev : uint8_t
{
V0_0 = 0x00, ///< represents Rev 0.0
V0_3 = 0x03, ///< represents Rev 0.3
V1_0 = 0x10, ///< represents Rev 1.0
V1_1 = 0x11, ///< represents Rev 1.1
V1_2 = 0x12, ///< represents Rev 1.2
Expand All @@ -874,7 +875,7 @@ enum rev : uint8_t
GEN_SEC_MAX = V1_1,
RDIMM_MAX = V1_1,
LRDIMM_MAX = V1_2,
DDIMM_MAX = V0_0,
DDIMM_MAX = V0_3,
};

///
Expand Down

0 comments on commit 0921b80

Please sign in to comment.