diff options
-rw-r--r-- | src/usr/isteps/istep06/call_host_voltage_config.C | 10 | ||||
-rw-r--r-- | src/usr/targeting/common/xmltohb/attribute_types.xml | 6 | ||||
-rw-r--r-- | src/usr/targeting/common/xmltohb/simics_NIMBUS.system.xml | 2 |
3 files changed, 10 insertions, 8 deletions
diff --git a/src/usr/isteps/istep06/call_host_voltage_config.C b/src/usr/isteps/istep06/call_host_voltage_config.C index 0a3149a16..a939eee85 100644 --- a/src/usr/isteps/istep06/call_host_voltage_config.C +++ b/src/usr/isteps/istep06/call_host_voltage_config.C @@ -415,13 +415,15 @@ void* call_host_voltage_config( void *io_pArgs ) l_sys->setAttr<ATTR_NOMINAL_FREQ_MHZ>( l_nominalFreq ); // raise the min freq if there is a system policy for it - uint32_t l_dpoPercent = l_sys->getAttr<ATTR_DPO_MIN_FREQ_PERCENT>(); + int32_t l_dpoPercent = l_sys->getAttr<ATTR_DPO_MIN_FREQ_PERCENT>(); uint32_t l_dpoFreq = l_nominalFreq; - if( (l_dpoPercent != 0) && (l_dpoPercent < 100) ) + if( (l_dpoPercent != 0) && (l_dpoPercent > -100) ) { - l_dpoFreq = (l_nominalFreq*l_dpoPercent)/100; + uint32_t l_multiplierPercent = + static_cast<uint32_t>(100 + l_dpoPercent); + l_dpoFreq = (l_nominalFreq*l_multiplierPercent)/100; TRACFCOMP(ISTEPS_TRACE::g_trac_isteps_trace, - "Computed floor=%d, DPO=%d (percent=-%d)", + "Computed floor=%d, DPO=%d (percent=%d)", l_floorFreq, l_dpoFreq, l_dpoPercent ); l_floorFreq = std::max( l_floorFreq, l_dpoFreq ); } diff --git a/src/usr/targeting/common/xmltohb/attribute_types.xml b/src/usr/targeting/common/xmltohb/attribute_types.xml index ac779bba6..6f764c6e2 100644 --- a/src/usr/targeting/common/xmltohb/attribute_types.xml +++ b/src/usr/targeting/common/xmltohb/attribute_types.xml @@ -2657,13 +2657,13 @@ is used to explicitly raise the value of MIN_FREQ_MHZ above what is specified by MVPD #V data. On FSP systems this is sourced from the power_management def file. - Value must be between 0 and 100. + Value must be between 0 and -100. A value of zero indicates no override. </description> <simpleType> - <uint32_t> + <int32_t> <default>0</default> - </uint32_t> + </int32_t> </simpleType> <persistency>non-volatile</persistency> <readable/> diff --git a/src/usr/targeting/common/xmltohb/simics_NIMBUS.system.xml b/src/usr/targeting/common/xmltohb/simics_NIMBUS.system.xml index 962aaf29d..37befea8e 100644 --- a/src/usr/targeting/common/xmltohb/simics_NIMBUS.system.xml +++ b/src/usr/targeting/common/xmltohb/simics_NIMBUS.system.xml @@ -99,7 +99,7 @@ </attribute> <attribute> <id>DPO_MIN_FREQ_PERCENT</id> - <default>98</default> + <default>-2</default> </attribute> <attribute> <id>REQUIRED_SYNCH_MODE</id> |