From 33ab870c6afe56f3bc5a23289b00df5d984a176e Mon Sep 17 00:00:00 2001 From: Norman James Date: Thu, 2 Oct 2014 15:55:25 -0500 Subject: Added processing of optional power management attributes under open-power tags Change-Id: I3ed36cf37189669978af171b26cb129b879ed1b1 RTC: 116208 Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/13738 Tested-by: Jenkins Server Reviewed-by: Douglas R. Gilbert Reviewed-by: STEPHEN M. CPREK Reviewed-by: A. Patrick Williams III --- src/usr/targeting/common/genHwsvMrwXml.pl | 10 ++ .../common/xmltohb/attribute_types_hb.xml | 160 +++++++-------------- .../targeting/common/xmltohb/target_types_hb.xml | 32 ++--- 3 files changed, 78 insertions(+), 124 deletions(-) (limited to 'src') diff --git a/src/usr/targeting/common/genHwsvMrwXml.pl b/src/usr/targeting/common/genHwsvMrwXml.pl index 25e9f4843..30c2830c4 100644 --- a/src/usr/targeting/common/genHwsvMrwXml.pl +++ b/src/usr/targeting/common/genHwsvMrwXml.pl @@ -51,6 +51,8 @@ use strict; use XML::Simple; use Data::Dumper; + + ################################################################################ # Set PREFERRED_PARSER to XML::Parser. Otherwise it uses XML::SAX which contains # bugs that result in XML parse errors that can be fixed by adjusting white- @@ -318,6 +320,14 @@ foreach my $policy ( keys %optTargPolicies ) $optMrwPolicies->{$optTargPolicies{$policy}{MRW_NAME}}]; } } +#OpenPOWER policies +foreach my $policy (keys %{$optMrwPolicies->{"open_power"}}) +{ + push(@systemAttr,[ uc($policy), + $optMrwPolicies->{"open_power"}->{$policy} ] ); +} + + #------------------------------------------------------------------------------ # Process the pm-settings MRW file diff --git a/src/usr/targeting/common/xmltohb/attribute_types_hb.xml b/src/usr/targeting/common/xmltohb/attribute_types_hb.xml index ab7df54d6..f9520e632 100644 --- a/src/usr/targeting/common/xmltohb/attribute_types_hb.xml +++ b/src/usr/targeting/common/xmltohb/attribute_types_hb.xml @@ -358,238 +358,182 @@ - - - N_PLUS_ONE_BULK_POWER_LIMIT_WATTS + OPEN_POWER_DIMM_THROTTLE_TEMP_DEG_C - System power cap with redundant power. + DIMM temperature threshold where throttling will + occur in degrees C - - 2400 - + non-volatile - - N_PLUS_ONE_MAX_MEM_POWER_WATTS + OPEN_POWER_DIMM_ERROR_TEMP_DEG_C - The amount of N+1 Bulk Power to allocate to memory. The value will be - used to calculate memory throttles to cap memory to this value. + DIMM temperature where an error will be generated + in degrees C - - 500 - + non-volatile - - N_BULK_POWER_LIMIT_WATTS + OPEN_POWER_MEMCTRL_THROTTLE_TEMP_DEG_C - System power cap in oversubscription. + Memory controller temperature threshold + where throttling will occur in degrees C - - 1200 - + non-volatile - - N_MAX_MEM_POWER_WATTS + OPEN_POWER_PROC_DVFS_TEMP_DEG_C - The amount of N bulk power to allocate to memory. This value will be - used to calculate memory throttles to cap memroy to this value and - used when system is in oversubscription. + Processor temperature where DVFS will occur in degrees C - - 500 - + non-volatile - - REGULATOR_EFFICIENCY_FACTOR + OPEN_POWER_MEMCTRL_ERROR_TEMP_DEG_C - Percentage to lower N+1 maximum memory power and N maximum memory - power to account for regulator loss. + Memory controller temperature where an error will occur + in degrees C - - 85 - + non-volatile - - MIN_POWER_CAP_WATTS + OPEN_POWER_N_BULK_POWER_LIMIT_WATTS - Lowest power cap that a user may set and the OCC can guarantee to hold - via processor DVFS under all conditions. + N mode bulk power supply limit in Watts - - 2100 - + non-volatile - - MIN_MEM_UTILIZATION_THROTTLING + OPEN_POWER_N_MAX_MEM_POWER_WATTS - Gives the OCCs a lower limit on how far they throttle - memory due to a memory over temp condtion. + Maximum power allocated to DIMMs in Watts - - 5 - + non-volatile - - PROC_DVFS_TEMP_DEG_C + OPEN_POWER_MEMCTRL_READ_TIMEOUT_SEC - Processor temperature to invoke DVFS. + Memory controller read timeout in seconds - - 85 - + non-volatile - - PROC_ERROR_TEMP_DEG_C + OPEN_POWER_DIMM_READ_TIMEOUT_SEC - Processor temperature to log on error calling out the processor. + DIMM read timeout in seconds - - 95 - + non-volatile - - PROC_READ_TIMEOUT_SEC + OPEN_POWER_PROC_ERROR_TEMP_DEG_C - Maximum time allowed without having a new processor temperature - reading before DVFS will occur. + Processor temperature error threshold in degrees C - - 5 - + non-volatile - - MEMCTRL_THROTTLE_TEMP_DEG_C + OPEN_POWER_MIN_MEM_UTILIZATION_THROTTLING - Memory controller temperature to invoke memory throttling. + Minimum memory utilization for memory throttling - - 89 - + non-volatile - - MEMCTRL_ERROR_TEMP_DEG_C + OPEN_POWER_PROC_READ_TIMEOUT_SEC - Memory controller temperature to log an error calling out the memory - controller. + Processor read timeout in seconds - - 99 - + non-volatile - - MEMCTRL_READ_TIMEOUT_SEC + OPEN_POWER_REGULATOR_EFFICIENCY_FACTOR - Maximum time allowed without having a new temperature reading from the - memory controller before throttling will occur. + Regulator efficiency factor - - 30 - + non-volatile - - DIMM_THROTTLE_TEMP_DEG_C + OPEN_POWER_MIN_POWER_CAP_WATTS - DIMM temperature to invoke memory throttling. + Minimum power cap in Watts - - 79 - + non-volatile - - DIMM_ERROR_TEMP_DEG_C + OPEN_POWER_N_PLUS_ONE_BULK_POWER_LIMIT_WATTS - DIMM termperature to log na error calling out the DIMM. + N+1 bulk power limit in Watts - - 96 - + non-volatile - - DIMM_READ_TIMEOUT_SEC + OPEN_POWER_N_PLUS_ONE_MAX_MEM_POWER_WATTS - Maximum time allowed without having a new Temperature reading from a - DIMM before throttling will occur. + N+1 max memory power in Watts - - 30 - + non-volatile diff --git a/src/usr/targeting/common/xmltohb/target_types_hb.xml b/src/usr/targeting/common/xmltohb/target_types_hb.xml index fd662b5b6..91db89c41 100644 --- a/src/usr/targeting/common/xmltohb/target_types_hb.xml +++ b/src/usr/targeting/common/xmltohb/target_types_hb.xml @@ -38,28 +38,28 @@ IBSCOM_ENABLE_OVERRIDE HB_MUTEX_TEST_LOCK HB_EXISTING_IMAGE - N_PLUS_ONE_BULK_POWER_LIMIT_WATTS - N_PLUS_ONE_MAX_MEM_POWER_WATTS - N_BULK_POWER_LIMIT_WATTS - N_MAX_MEM_POWER_WATTS - REGULATOR_EFFICIENCY_FACTOR - MIN_POWER_CAP_WATTS - MIN_MEM_UTILIZATION_THROTTLING - PROC_DVFS_TEMP_DEG_C - PROC_ERROR_TEMP_DEG_C - PROC_READ_TIMEOUT_SEC - MEMCTRL_THROTTLE_TEMP_DEG_C - MEMCTRL_ERROR_TEMP_DEG_C - MEMCTRL_READ_TIMEOUT_SEC - DIMM_THROTTLE_TEMP_DEG_C - DIMM_ERROR_TEMP_DEG_C - DIMM_READ_TIMEOUT_SEC ADC_CHANNEL_FUNC_IDS ADC_CHANNEL_GNDS ADC_CHANNEL_GAINS ADC_CHANNEL_OFFSETS APSS_GPIO_PORT_MODES APSS_GPIO_PORT_PINS + OPEN_POWER_DIMM_THROTTLE_TEMP_DEG_C + OPEN_POWER_DIMM_ERROR_TEMP_DEG_C + OPEN_POWER_MEMCTRL_THROTTLE_TEMP_DEG_C + OPEN_POWER_PROC_DVFS_TEMP_DEG_C + OPEN_POWER_MEMCTRL_ERROR_TEMP_DEG_C + OPEN_POWER_N_BULK_POWER_LIMIT_WATTS + OPEN_POWER_N_MAX_MEM_POWER_WATTS + OPEN_POWER_MEMCTRL_READ_TIMEOUT_SEC + OPEN_POWER_DIMM_READ_TIMEOUT_SEC + OPEN_POWER_PROC_ERROR_TEMP_DEG_C + OPEN_POWER_MIN_MEM_UTILIZATION_THROTTLING + OPEN_POWER_PROC_READ_TIMEOUT_SEC + OPEN_POWER_REGULATOR_EFFICIENCY_FACTOR + OPEN_POWER_MIN_POWER_CAP_WATTS + OPEN_POWER_N_PLUS_ONE_BULK_POWER_LIMIT_WATTS + OPEN_POWER_N_PLUS_ONE_MAX_MEM_POWER_WATTS -- cgit v1.2.1