diff options
author | Richard J. Knight <rjknight@us.ibm.com> | 2018-05-03 15:45:53 -0500 |
---|---|---|
committer | William G. Hoffa <wghoffa@us.ibm.com> | 2018-05-11 17:14:36 -0400 |
commit | 496156ffbd83372deb1f7a6e160d4fec3c525b5c (patch) | |
tree | 0913d8fc140609071d851324ffcf72513bad893b /src/usr | |
parent | ad181494c943f15cf2d744e57b59ea5b7c166646 (diff) | |
download | talos-hostboot-496156ffbd83372deb1f7a6e160d4fec3c525b5c.tar.gz talos-hostboot-496156ffbd83372deb1f7a6e160d4fec3c525b5c.zip |
Add centaur dynamic VDDR code to hostboot
-Update the makefile for istep07 and add
the call to the p9c_mss_vddr_offset hwp
-Update attribute mapping to separate the
centaur specific values
-Update the centaur target to include the
attribute for the vddr offset voltage
-Update createVddrMsg to use new attributes
for centaur voltages
Change-Id: I3be51277b7693aa91e60c8873844be785bf97c12
RTC:157672
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/58294
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
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: Thi N. Tran <thi@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
Diffstat (limited to 'src/usr')
-rw-r--r-- | src/usr/isteps/hbToHwsvVoltageMsg.C | 20 | ||||
-rw-r--r-- | src/usr/isteps/istep07/call_mss_volt.C | 342 | ||||
-rw-r--r-- | src/usr/isteps/istep07/makefile | 2 | ||||
-rwxr-xr-x | src/usr/targeting/common/xmltohb/attribute_types.xml | 180 | ||||
-rw-r--r-- | src/usr/targeting/common/xmltohb/target_types.xml | 19 |
5 files changed, 395 insertions, 168 deletions
diff --git a/src/usr/isteps/hbToHwsvVoltageMsg.C b/src/usr/isteps/hbToHwsvVoltageMsg.C index a6eff7a12..49970f13e 100644 --- a/src/usr/isteps/hbToHwsvVoltageMsg.C +++ b/src/usr/isteps/hbToHwsvVoltageMsg.C @@ -367,32 +367,32 @@ void HBToHwsvVoltageMsg::createVddrData( { (void)addMemoryVoltageDomains< TARGETING::ATTR_MSS_VDD_PROGRAM, - TARGETING::ATTR_MSS_VOLT_VDD_MILLIVOLTS, - TARGETING::ATTR_MSS_VOLT_VDD_OFFSET_MILLIVOLTS, + TARGETING::ATTR_CEN_MSS_VOLT_VDD_MILLIVOLTS, + TARGETING::ATTR_CEN_MSS_VOLT_VDD_OFFSET_MILLIVOLTS, TARGETING::ATTR_VDD_ID>( pMembuf, io_request); (void)addMemoryVoltageDomains< TARGETING::ATTR_MSS_AVDD_PROGRAM, - TARGETING::ATTR_MSS_VOLT_AVDD_MILLIVOLTS, - TARGETING::ATTR_MSS_VOLT_AVDD_OFFSET_MILLIVOLTS, + TARGETING::ATTR_CEN_MSS_VOLT_AVDD_MILLIVOLTS, + TARGETING::ATTR_CEN_MSS_VOLT_AVDD_OFFSET_MILLIVOLTS, TARGETING::ATTR_AVDD_ID>( pMembuf, io_request); (void)addMemoryVoltageDomains< TARGETING::ATTR_MSS_VCS_PROGRAM, - TARGETING::ATTR_MSS_VOLT_VCS_MILLIVOLTS, - TARGETING::ATTR_MSS_VOLT_VCS_OFFSET_MILLIVOLTS, + TARGETING::ATTR_CEN_MSS_VOLT_VCS_MILLIVOLTS, + TARGETING::ATTR_CEN_MSS_VOLT_VCS_OFFSET_MILLIVOLTS, TARGETING::ATTR_VCS_ID>( pMembuf, io_request); (void)addMemoryVoltageDomains< TARGETING::ATTR_MSS_VPP_PROGRAM, - TARGETING::ATTR_MSS_VOLT_VPP_MILLIVOLTS, - TARGETING::ATTR_CEN_MSS_VOLT_VPP, + TARGETING::ATTR_CEN_MSS_VOLT_VPP_MILLIVOLTS, + TARGETING::ATTR_CEN_MSS_VOLT_VPP_OFFSET_MILLIVOLTS, TARGETING::ATTR_VPP_ID>( pMembuf, io_request); @@ -400,8 +400,8 @@ void HBToHwsvVoltageMsg::createVddrData( (void)addMemoryVoltageDomains< TARGETING::ATTR_MSS_VDDR_PROGRAM, - TARGETING::ATTR_MSS_VOLT_VDDR_MILLIVOLTS, - TARGETING::ATTR_CEN_MSS_VOLT, + TARGETING::ATTR_CEN_MSS_VOLT_VDDR_MILLIVOLTS, + TARGETING::ATTR_CEN_MSS_VOLT_VDDR_OFFSET_MILLIVOLTS, TARGETING::ATTR_VDDR_ID>( pMembuf, io_request); diff --git a/src/usr/isteps/istep07/call_mss_volt.C b/src/usr/isteps/istep07/call_mss_volt.C index 7e0540257..be4192fd5 100644 --- a/src/usr/isteps/istep07/call_mss_volt.C +++ b/src/usr/isteps/istep07/call_mss_volt.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2015,2017 */ +/* Contributors Listed Below - COPYRIGHT 2015,2018 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -61,6 +61,7 @@ // HWP #include <p9_mss_volt.H> #include <p9c_mss_volt.H> +#include <p9c_mss_volt_vddr_offset.H> namespace ISTEP_07 { @@ -82,162 +83,203 @@ void* call_mss_volt( void *io_pArgs ) bool unused = false; set_eff_config_attrs_helper(DEFAULT, unused); - TARGETING::TargetHandleList l_membufTargetList; + TargetHandleList l_membufTargetList; getAllChips(l_membufTargetList, TYPE_MEMBUF); - TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, - "call_mss_volt: %d membuf targets", l_membufTargetList.size()); - - if (l_membufTargetList.size() > 0) + do { - std::vector< fapi2::Target<fapi2::TARGET_TYPE_MEMBUF_CHIP> > l_membufFapiTargetsList; - - for(auto & l_membuf_target : l_membufTargetList) - { - fapi2::Target <fapi2::TARGET_TYPE_MEMBUF_CHIP> - l_membuf_fapi_target (l_membuf_target); - - l_membufFapiTargetsList.push_back( l_membuf_fapi_target ); - } TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, - "Calling p9c_mss_volt on list of membuf targets"); - - // p9c_mss_volt.C (vector of centaurs) - FAPI_INVOKE_HWP(l_err, p9c_mss_volt, l_membufFapiTargetsList); - - // process return code - if ( l_err ) - { - TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, - "ERROR 0x%.8X: p9c_mss_volt HWP() failed", - l_err->reasonCode()); - - // Create IStep error log and cross reference to error that occurred - l_StepError.addErrorDetails(l_err); - - // Commit Error - errlCommit( l_err, HWPF_COMP_ID ); - } - else - { - TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, - "SUCCESS : p9c_mss_volt HWP"); - } - } - else - { - TARGETING::TargetHandleList l_mcsTargetList; - getAllChiplets(l_mcsTargetList, TYPE_MCS); - - std::vector< fapi2::Target<fapi2::TARGET_TYPE_MCS> > l_mcsFapiTargetsList; - for(auto & l_mcs_target : l_mcsTargetList) - { - fapi2::Target <fapi2::TARGET_TYPE_MCS> - l_mcs_fapi_target (l_mcs_target); + "call_mss_volt: %d membuf targets", l_membufTargetList.size()); - l_mcsFapiTargetsList.push_back( l_mcs_fapi_target ); - } + if (l_membufTargetList.size() > 0) + { + std::vector< fapi2::Target<fapi2::TARGET_TYPE_MEMBUF_CHIP> > + l_membufFapiTargetsList; + + for(auto & l_membuf_target : l_membufTargetList) + { + fapi2::Target <fapi2::TARGET_TYPE_MEMBUF_CHIP> + l_membuf_fapi_target (l_membuf_target); + + l_membufFapiTargetsList.push_back( l_membuf_fapi_target ); + } + + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "Calling p9c_mss_volt on list of membuf targets"); + + // p9c_mss_volt.C (vector of centaurs) + FAPI_INVOKE_HWP(l_err, p9c_mss_volt, l_membufFapiTargetsList); + + // process return code + if ( l_err ) + { + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "ERROR 0x%.8X: p9c_mss_volt HWP() failed", + l_err->reasonCode()); + + // Create IStep error log and cross reference to error + // that occurred + l_StepError.addErrorDetails(l_err); + + // Commit Error + errlCommit( l_err, HWPF_COMP_ID ); + + break; + + } + else + { + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "SUCCESS : p9c_mss_volt HWP"); + } + + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "Calling p9c_mss_volt_vddr_offset on list of membuf targets"); + + // p9c_mss_volt_vddr_offset.C (vector of centaurs) + FAPI_INVOKE_HWP(l_err, p9c_mss_volt_vddr_offset, + l_membufFapiTargetsList); + + // process return code + if ( l_err ) + { + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "ERROR 0x%.8X: p9c_mss_volt_vddr_offset HWP() failed", + l_err->reasonCode()); + + // Create IStep error log and cross reference to error + // that occurred + l_StepError.addErrorDetails(l_err); + + // Commit Error + errlCommit( l_err, HWPF_COMP_ID ); + } + else + { + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "SUCCESS : p9c_mss_volt_vddr_offset HWP"); + } + + } + else + { + TargetHandleList l_mcsTargetList; + getAllChiplets(l_mcsTargetList, TYPE_MCS); + + std::vector< fapi2::Target<fapi2::TARGET_TYPE_MCS> > + l_mcsFapiTargetsList; + + for(auto & l_mcs_target : l_mcsTargetList) + { + fapi2::Target <fapi2::TARGET_TYPE_MCS> + l_mcs_fapi_target (l_mcs_target); + + l_mcsFapiTargetsList.push_back( l_mcs_fapi_target ); + } + + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "Calling p9_mss_volt on list of mcs targets"); + + FAPI_INVOKE_HWP(l_err, p9_mss_volt, l_mcsFapiTargetsList); + + // process return code + if ( l_err ) + { + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "ERROR 0x%.8X: p9_mss_volt HWP() failed", + l_err->reasonCode()); + + // Create IStep error log and cross reference to error + // that occurred + l_StepError.addErrorDetails(l_err); + + // Commit Error + errlCommit( l_err, HWPF_COMP_ID ); + } + else + { + // No need to compute dynamic values if mss_volt failed + + // Calculate Dynamic Offset voltages for each domain + Target* pSysTarget = NULL; + targetService().getTopLevelTarget(pSysTarget); + assert( + (pSysTarget != NULL), + "call_mss_volt: Code bug! System target was NULL."); + + // only calculate if system supports dynamic voltage + if (pSysTarget->getAttr<ATTR_SUPPORTS_DYNAMIC_MEM_VOLT >() == 1) + { + l_err = computeDynamicMemoryVoltage< + ATTR_MSS_VDD_PROGRAM, + ATTR_VDD_ID>(); + if(l_err) + { + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "ERROR 0x%08X: computeDynamicMemoryVoltage for " + "VDD domain", + l_err->reasonCode()); + l_StepError.addErrorDetails(l_err); + errlCommit(l_err,HWPF_COMP_ID); + } + + l_err = computeDynamicMemoryVoltage< + ATTR_MSS_AVDD_PROGRAM, + ATTR_AVDD_ID>(); + if(l_err) + { + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "ERROR 0x%08X: computeDynamicMemoryVoltage for " + "AVDD domain", + l_err->reasonCode()); + l_StepError.addErrorDetails(l_err); + errlCommit(l_err,HWPF_COMP_ID); + } + + l_err = computeDynamicMemoryVoltage< + ATTR_MSS_VCS_PROGRAM, + ATTR_VCS_ID>(); + if(l_err) + { + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "ERROR 0x%08X: computeDynamicMemoryVoltage for " + "VCS domain", + l_err->reasonCode()); + l_StepError.addErrorDetails(l_err); + errlCommit(l_err,HWPF_COMP_ID); + } + + l_err = computeDynamicMemoryVoltage< + ATTR_MSS_VPP_PROGRAM, + ATTR_VPP_ID>(); + if(l_err) + { + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "ERROR 0x%08X: computeDynamicMemoryVoltage for " + "VPP domain", + l_err->reasonCode()); + l_StepError.addErrorDetails(l_err); + errlCommit(l_err,HWPF_COMP_ID); + } + + l_err = computeDynamicMemoryVoltage< + ATTR_MSS_VDDR_PROGRAM, + ATTR_VDDR_ID>(); + if(l_err) + { + TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, + "ERROR 0x%08X: computeDynamicMemoryVoltage for " + "VDDR domain", + l_err->reasonCode()); + l_StepError.addErrorDetails(l_err); + errlCommit(l_err,HWPF_COMP_ID); + } + } + } + } + }while(0); - TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, - "Calling p9_mss_volt on list of mcs targets"); - - FAPI_INVOKE_HWP(l_err, p9_mss_volt, l_mcsFapiTargetsList); - - // process return code - if ( l_err ) - { - TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, - "ERROR 0x%.8X: p9_mss_volt HWP() failed", - l_err->reasonCode()); - - // Create IStep error log and cross reference to error that occurred - l_StepError.addErrorDetails(l_err); - - // Commit Error - errlCommit( l_err, HWPF_COMP_ID ); - } - else - { - // No need to compute dynamic values if mss_volt failed - - // Calculate Dynamic Offset voltages for each domain - TARGETING::Target* pSysTarget = NULL; - TARGETING::targetService().getTopLevelTarget(pSysTarget); - assert( - (pSysTarget != NULL), - "call_mss_volt: Code bug! System target was NULL."); - - // only calculate if system supports dynamic voltage - if (pSysTarget->getAttr< TARGETING::ATTR_SUPPORTS_DYNAMIC_MEM_VOLT >() == 1) - { - l_err = computeDynamicMemoryVoltage< - TARGETING::ATTR_MSS_VDD_PROGRAM, - TARGETING::ATTR_VDD_ID>(); - if(l_err) - { - TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, - "ERROR 0x%08X: computeDynamicMemoryVoltage for " - "VDD domain", - l_err->reasonCode()); - l_StepError.addErrorDetails(l_err); - errlCommit(l_err,HWPF_COMP_ID); - } - - l_err = computeDynamicMemoryVoltage< - TARGETING::ATTR_MSS_AVDD_PROGRAM, - TARGETING::ATTR_AVDD_ID>(); - if(l_err) - { - TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, - "ERROR 0x%08X: computeDynamicMemoryVoltage for " - "AVDD domain", - l_err->reasonCode()); - l_StepError.addErrorDetails(l_err); - errlCommit(l_err,HWPF_COMP_ID); - } - - l_err = computeDynamicMemoryVoltage< - TARGETING::ATTR_MSS_VCS_PROGRAM, - TARGETING::ATTR_VCS_ID>(); - if(l_err) - { - TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, - "ERROR 0x%08X: computeDynamicMemoryVoltage for " - "VCS domain", - l_err->reasonCode()); - l_StepError.addErrorDetails(l_err); - errlCommit(l_err,HWPF_COMP_ID); - } - - l_err = computeDynamicMemoryVoltage< - TARGETING::ATTR_MSS_VPP_PROGRAM, - TARGETING::ATTR_VPP_ID>(); - if(l_err) - { - TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, - "ERROR 0x%08X: computeDynamicMemoryVoltage for " - "VPP domain", - l_err->reasonCode()); - l_StepError.addErrorDetails(l_err); - errlCommit(l_err,HWPF_COMP_ID); - } - - l_err = computeDynamicMemoryVoltage< - TARGETING::ATTR_MSS_VDDR_PROGRAM, - TARGETING::ATTR_VDDR_ID>(); - if(l_err) - { - TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, - "ERROR 0x%08X: computeDynamicMemoryVoltage for " - "VDDR domain", - l_err->reasonCode()); - l_StepError.addErrorDetails(l_err); - errlCommit(l_err,HWPF_COMP_ID); - } - } - } - } TRACFCOMP( ISTEPS_TRACE::g_trac_isteps_trace, "call_mss_volt exit" ); return l_StepError.getErrorHandle(); diff --git a/src/usr/isteps/istep07/makefile b/src/usr/isteps/istep07/makefile index f9cc94058..2ad985616 100644 --- a/src/usr/isteps/istep07/makefile +++ b/src/usr/isteps/istep07/makefile @@ -76,6 +76,8 @@ include ${ROOTPATH}/procedure.rules.mk #mss_volt : Calc dimm voltage include $(HWP_PATH_1)/p9_mss_volt.mk include $(HWP_PATH_2)/p9c_mss_volt.mk +include $(HWP_PATH_2)/p9c_mss_volt_vddr_offset.mk +include $(HWP_PATH_2)/mss_dynamic_vid_utils.mk #mss_freq : Calc dimm frequency include $(HWP_PATH_1)/p9_mss_freq.mk diff --git a/src/usr/targeting/common/xmltohb/attribute_types.xml b/src/usr/targeting/common/xmltohb/attribute_types.xml index 19be4d547..3074a9b64 100755 --- a/src/usr/targeting/common/xmltohb/attribute_types.xml +++ b/src/usr/targeting/common/xmltohb/attribute_types.xml @@ -2779,6 +2779,186 @@ </attribute> <attribute> + <description> + DRAM Voltage, each voltage rail would need to have a value. + Computed in mss_volt C code - in millivolts + creator: mss_volt + consumer: mss_eff_cnfg, others + firmware notes: none + </description> + <hwpfToHbAttrMap> + <id>ATTR_CEN_MSS_VOLT</id> + <macro>DIRECT</macro> + </hwpfToHbAttrMap> + <id>CEN_MSS_VOLT_VDDR_MILLIVOLTS</id> + <persistency>volatile-zeroed</persistency> + <readable></readable> + <simpleType> + <uint32_t></uint32_t> + </simpleType> + <writeable></writeable> + </attribute> + + <attribute> + <description> + DRAM VPP Voltage, each voltage rail would need to have a value. + Computed in mss_volt C code - in millivolts. 0V - DDR3, 2.5V - DDR4 + creator: mss_volt + consumer: mss_eff_cnfg, others + firmware notes: none + </description> + <hwpfToHbAttrMap> + <id>ATTR_CEN_MSS_VOLT_VPP</id> + <macro>DIRECT</macro> + </hwpfToHbAttrMap> + <id>CEN_MSS_VOLT_VPP_MILLIVOLTS</id> + <persistency>volatile-zeroed</persistency> + <readable></readable> + <simpleType> + <uint32_t></uint32_t> + </simpleType> + <writeable></writeable> + </attribute> + + <attribute> + <description> + Computed in mss_volt C code - in millivolts + creator: mss_volt + consumer: mss_eff_cnfg, others + firmware notes: none + </description> + <id>CEN_MSS_VOLT_VCS_MILLIVOLTS</id> + <persistency>volatile-zeroed</persistency> + <readable></readable> + <simpleType> + <uint32_t></uint32_t> + </simpleType> + <writeable></writeable> + </attribute> + + <attribute> + <description> + DRAM Voltage, each voltage rail would need to have a value. + Computed in mss_volt C code - in millivolts + creator: mss_volt + consumer: mss_eff_cnfg, others + firmware notes: none + </description> + <id>CEN_MSS_VOLT_VDD_MILLIVOLTS</id> + <persistency>volatile-zeroed</persistency> + <readable></readable> + <simpleType> + <uint32_t></uint32_t> + </simpleType> + <writeable></writeable> + </attribute> + + <attribute> + <description> + DRAM Voltage, each voltage rail would need to have a value. + Computed in mss_volt C code - in millivolts + creator: mss_volt + consumer: mss_eff_cnfg, others + firmware notes: none + </description> + <id>CEN_MSS_VOLT_AVDD_MILLIVOLTS</id> + <persistency>volatile-zeroed</persistency> + <readable></readable> + <simpleType> + <uint32_t></uint32_t> + </simpleType> + <writeable></writeable> + </attribute> + + <attribute> + <description> + DRAM Voltage, each voltage rail would need to have a value. + Computed in mss_volt C code - in millivolts + creator: mss_volt + consumer: mss_eff_cnfg, others + firmware notes: none + </description> + <hwpfToHbAttrMap> + <id>ATTR_CEN_MSS_VDDR_OFFSET</id> + <macro>DIRECT</macro> + </hwpfToHbAttrMap> + <id>CEN_MSS_VOLT_VDDR_OFFSET_MILLIVOLTS</id> + <persistency>volatile-zeroed</persistency> + <readable></readable> + <simpleType> + <uint32_t></uint32_t> + </simpleType> + <writeable></writeable> + </attribute> + + <attribute> + <description> + DRAM VPP Voltage, each voltage rail would need to have a value. + Computed in mss_volt C code - in millivolts. 0V - DDR3, 2.5V - DDR4 + creator: mss_volt + consumer: mss_eff_cnfg, others + firmware notes: none + </description> + <id>CEN_MSS_VOLT_VPP_OFFSET_MILLIVOLTS</id> + <persistency>volatile-zeroed</persistency> + <readable></readable> + <simpleType> + <uint32_t></uint32_t> + </simpleType> + <writeable></writeable> + </attribute> + + <attribute> + <description> + Computed in mss_volt C code - in millivolts + creator: mss_volt + consumer: mss_eff_cnfg, others + firmware notes: none + </description> + <id>CEN_MSS_VOLT_VCS_OFFSET_MILLIVOLTS</id> + <persistency>volatile-zeroed</persistency> + <readable></readable> + <simpleType> + <uint32_t></uint32_t> + </simpleType> + <writeable></writeable> + </attribute> + + <attribute> + <description> + DRAM Voltage, each voltage rail would need to have a value. + Computed in mss_volt C code - in millivolts + creator: mss_volt + consumer: mss_eff_cnfg, others + firmware notes: none + </description> + <id>CEN_MSS_VOLT_VDD_OFFSET_MILLIVOLTS</id> + <persistency>volatile-zeroed</persistency> + <readable></readable> + <simpleType> + <uint32_t></uint32_t> + </simpleType> + <writeable></writeable> + </attribute> + + <attribute> + <description> + DRAM Voltage, each voltage rail would need to have a value. + Computed in mss_volt C code - in millivolts + creator: mss_volt + consumer: mss_eff_cnfg, others + firmware notes: none + </description> + <id>CEN_MSS_VOLT_AVDD_OFFSET_MILLIVOLTS</id> + <persistency>volatile-zeroed</persistency> + <readable></readable> + <simpleType> + <uint32_t></uint32_t> + </simpleType> + <writeable></writeable> + </attribute> + + <attribute> <description>Units: uV/Membuf </description> <hwpfToHbAttrMap> diff --git a/src/usr/targeting/common/xmltohb/target_types.xml b/src/usr/targeting/common/xmltohb/target_types.xml index 01a526eb7..6f6ee3a90 100644 --- a/src/usr/targeting/common/xmltohb/target_types.xml +++ b/src/usr/targeting/common/xmltohb/target_types.xml @@ -393,28 +393,31 @@ <id>CENTAUR_ECID_FRU_ID</id> </attribute> <attribute> - <id>MSS_VOLT_VDD_MILLIVOLTS</id> + <id>CEN_MSS_VOLT_VDD_MILLIVOLTS</id> </attribute> <attribute> - <id>MSS_VOLT_AVDD_MILLIVOLTS</id> + <id>CEN_MSS_VOLT_AVDD_MILLIVOLTS</id> </attribute> <attribute> - <id>MSS_VOLT_VCS_MILLIVOLTS</id> + <id>CEN_MSS_VOLT_VCS_MILLIVOLTS</id> </attribute> <attribute> - <id>MSS_VOLT_VPP_MILLIVOLTS</id> + <id>CEN_MSS_VOLT_VPP_MILLIVOLTS</id> </attribute> <attribute> - <id>MSS_VOLT_VDDR_MILLIVOLTS</id> + <id>CEN_MSS_VOLT_VDDR_MILLIVOLTS</id> </attribute> <attribute> - <id>MSS_VOLT_VDD_OFFSET_MILLIVOLTS</id> + <id>CEN_MSS_VOLT_VDD_OFFSET_MILLIVOLTS</id> </attribute> <attribute> - <id>MSS_VOLT_AVDD_OFFSET_MILLIVOLTS</id> + <id>CEN_MSS_VOLT_AVDD_OFFSET_MILLIVOLTS</id> </attribute> <attribute> - <id>MSS_VOLT_VCS_OFFSET_MILLIVOLTS</id> + <id>CEN_MSS_VOLT_VCS_OFFSET_MILLIVOLTS</id> + </attribute> + <attribute> + <id>CEN_MSS_VOLT_VDDR_OFFSET_MILLIVOLTS</id> </attribute> <attribute> <id>VDD_ID</id> |