diff options
author | Andre Marin <aamarin@us.ibm.com> | 2019-08-16 13:51:47 -0400 |
---|---|---|
committer | Daniel M Crowell <dcrowell@us.ibm.com> | 2019-10-16 14:32:00 -0500 |
commit | b403e6730f5ccbb9e065d49496b964a753cd02c2 (patch) | |
tree | a5b89d9e97f525b2071f68500d5e68b6bbd60ced /src/import/chips | |
parent | 0571992d6ae7ea505e14553ed1a4369ae0c2a816 (diff) | |
download | talos-hostboot-b403e6730f5ccbb9e065d49496b964a753cd02c2.tar.gz talos-hostboot-b403e6730f5ccbb9e065d49496b964a753cd02c2.zip |
Clean up for p10 porting dependency errors
CMVC-Coreq: 1094420
Change-Id: I02b8dfab08121d4ac9ffbb7dedd37f7083bf527f
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/81543
Dev-Ready: STEPHEN GLANCY <sglancy@us.ibm.com>
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com>
Reviewed-by: STEPHEN GLANCY <sglancy@us.ibm.com>
Reviewed-by: Louis Stermole <stermole@us.ibm.com>
Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com>
Tested-by: HWSV CI <hwsv-ci+hostboot@us.ibm.com>
Reviewed-by: Jennifer A Stofer <stofer@us.ibm.com>
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/82367
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/chips')
5 files changed, 55 insertions, 105 deletions
diff --git a/src/import/chips/ocmb/explorer/procedures/hwp/memory/exp_mss_eff_config_thermal.C b/src/import/chips/ocmb/explorer/procedures/hwp/memory/exp_mss_eff_config_thermal.C index a261faa19..1891eb75e 100644 --- a/src/import/chips/ocmb/explorer/procedures/hwp/memory/exp_mss_eff_config_thermal.C +++ b/src/import/chips/ocmb/explorer/procedures/hwp/memory/exp_mss_eff_config_thermal.C @@ -129,15 +129,15 @@ extern "C" // Set the thermal power throttle //Set the PMIC current slope, intercept and limit - mss::power_thermal::get_power_attrs (l_throttle_type, - l_port, - l_thermal_power_slope_v, - l_thermal_power_intecept_v, - l_thermal_power_limit_v, - l_current_curve_with_limit_v, - l_slope, - l_intercept, - l_limit); + FAPI_TRY( mss::power_thermal::get_power_attrs (l_throttle_type, + l_port, + l_thermal_power_slope_v, + l_thermal_power_intecept_v, + l_thermal_power_limit_v, + l_current_curve_with_limit_v, + l_slope, + l_intercept, + l_limit) ); FAPI_TRY(mss::attr::set_total_pwr_slope(l_port, l_slope)); FAPI_TRY(mss::attr::set_total_pwr_intercept(l_port, l_intercept)); diff --git a/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/power_thermal/exp_decoder.C b/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/power_thermal/exp_decoder.C index 709a1989f..3411bc1d3 100644 --- a/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/power_thermal/exp_decoder.C +++ b/src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/power_thermal/exp_decoder.C @@ -86,16 +86,16 @@ fapi2::ReturnCode decoder<mss::mc_type::EXPLORER>::find_slope ( 2); // To get thermal power slope - get_power_thermal_value<TT::THERMAL_START, TT::THERMAL_LENGTH, SLOPE>( - *i_slope[0], - "ATTR_MSS_MRW_OCMB_THERMAL_MEMORY_PWR_SLOPE", - iv_total_slope); + FAPI_TRY( (get_power_thermal_value<TT::THERMAL_START, TT::THERMAL_LENGTH, SLOPE>( + *i_slope[0], + "ATTR_MSS_MRW_OCMB_THERMAL_MEMORY_PWR_SLOPE", + iv_total_slope)) ); // To get power slope - get_power_thermal_value<TT::POWER_SLOPE_START, TT::POWER_SLOPE_LENGTH, SLOPE>( - *i_slope[1], - "ATTR_MSS_MRW_OCMB_CURRENT_CURVE_WITH_LIMIT", - iv_vddr_slope); + FAPI_TRY( (get_power_thermal_value<TT::POWER_SLOPE_START, TT::POWER_SLOPE_LENGTH, SLOPE>( + *i_slope[1], + "ATTR_MSS_MRW_OCMB_CURRENT_CURVE_WITH_LIMIT", + iv_vddr_slope)) ); fapi_try_exit: return fapi2::current_err; @@ -126,16 +126,16 @@ fapi2::ReturnCode decoder<mss::mc_type::EXPLORER>::find_intercept ( 2); // To get thermal power intercept - get_power_thermal_value<TT::THERMAL_START, TT::THERMAL_LENGTH, INTERCEPT>( - *i_intercept[0], - "ATTR_MSS_MRW_OCMB_POWER_INTERCEPT", - iv_total_intercept); + FAPI_TRY( (get_power_thermal_value<TT::THERMAL_START, TT::THERMAL_LENGTH, INTERCEPT>( + *i_intercept[0], + "ATTR_MSS_MRW_OCMB_POWER_INTERCEPT", + iv_total_intercept)) ); // To get power intercept - get_power_thermal_value<TT::POWER_INTERCEPT_START, TT::POWER_INTERCEPT_LENGTH, INTERCEPT>( - *i_intercept[1], - "ATTR_MSS_MRW_OCMB_CURRENT_CURVE_WITH_LIMIT", - iv_vddr_intercept); + FAPI_TRY( (get_power_thermal_value<TT::POWER_INTERCEPT_START, TT::POWER_INTERCEPT_LENGTH, INTERCEPT>( + *i_intercept[1], + "ATTR_MSS_MRW_OCMB_CURRENT_CURVE_WITH_LIMIT", + iv_vddr_intercept)) ); fapi_try_exit: return fapi2::current_err; @@ -167,16 +167,16 @@ fapi2::ReturnCode decoder<mss::mc_type::EXPLORER>::find_thermal_power_limit ( 2); // To get thermal power limit - get_power_thermal_value<TT::THERMAL_START, TT::THERMAL_LENGTH, POWER_LIMIT>( - *i_thermal_limits[0], - "ATTR_MSS_MRW_OCMB_THERMAL_MEMORY_POWER_LIMIT", - iv_thermal_power_limit); + FAPI_TRY( (get_power_thermal_value<TT::THERMAL_START, TT::THERMAL_LENGTH, POWER_LIMIT>( + *i_thermal_limits[0], + "ATTR_MSS_MRW_OCMB_THERMAL_MEMORY_POWER_LIMIT", + iv_thermal_power_limit)) ); // To get power intercept - get_power_thermal_value<TT::POWER_LIMIT_START, TT::POWER_LIMIT_LENGTH, POWER_LIMIT>( - *i_thermal_limits[1], - "ATTR_MSS_MRW_OCMB_CURRENT_CURVE_WITH_LIMIT", - iv_power_limit); + FAPI_TRY( (get_power_thermal_value<TT::POWER_LIMIT_START, TT::POWER_LIMIT_LENGTH, POWER_LIMIT>( + *i_thermal_limits[1], + "ATTR_MSS_MRW_OCMB_CURRENT_CURVE_WITH_LIMIT", + iv_power_limit)) ); fapi_try_exit: return fapi2::current_err; diff --git a/src/import/chips/p9/procedures/hwp/memory/lib/mss_attribute_accessors.H b/src/import/chips/p9/procedures/hwp/memory/lib/mss_attribute_accessors.H index d41445265..8b94c3460 100644 --- a/src/import/chips/p9/procedures/hwp/memory/lib/mss_attribute_accessors.H +++ b/src/import/chips/p9/procedures/hwp/memory/lib/mss_attribute_accessors.H @@ -21661,6 +21661,28 @@ fapi_try_exit: return fapi2::current_err; } +/// +/// @brief ATTR_MEM_PORT_POS_OF_FAIL_THROTTLE getter +/// @param[out] uint64_t& reference to store the value +/// @note Generated by gen_accessors.pl generateParameters (SYSTEM) +/// @return fapi2::ReturnCode - FAPI2_RC_SUCCESS iff get is OK +/// @note This is the fapi position of the port that failed to calculate memory throttles +/// given the passed in watt target and or +/// utilization +/// +inline fapi2::ReturnCode port_pos_of_fail_throttle(uint64_t& o_value) +{ + + FAPI_TRY( FAPI_ATTR_GET(fapi2::ATTR_MEM_PORT_POS_OF_FAIL_THROTTLE, fapi2::Target<fapi2::TARGET_TYPE_SYSTEM>(), + o_value) ); + return fapi2::current_err; + +fapi_try_exit: + FAPI_ERR("failed accessing ATTR_MEM_PORT_POS_OF_FAIL_THROTTLE: 0x%lx (system target)", + uint64_t(fapi2::current_err)); + return fapi2::current_err; +} + } diff --git a/src/import/chips/p9/procedures/xml/attribute_info/memory_mcs_attributes.xml b/src/import/chips/p9/procedures/xml/attribute_info/memory_mcs_attributes.xml index 0a3c2e2b4..fd10554ce 100644 --- a/src/import/chips/p9/procedures/xml/attribute_info/memory_mcs_attributes.xml +++ b/src/import/chips/p9/procedures/xml/attribute_info/memory_mcs_attributes.xml @@ -1178,18 +1178,6 @@ </attribute> <attribute> - <id>ATTR_MSS_MEM_PORT_POS_OF_FAIL_THROTTLE</id> - <targetType>TARGET_TYPE_SYSTEM</targetType> - <description> - This is the fapi position of the port that failed to calculate - memory throttles given the passed in watt target and or utilization - </description> - <initToZero></initToZero> - <valueType>uint64</valueType> - <writeable/> - </attribute> - - <attribute> <id>ATTR_MSS_MEM_M_DRAM_CLOCKS</id> <targetType>TARGET_TYPE_MCS</targetType> <description> diff --git a/src/import/chips/p9/procedures/xml/error_info/p9_memory_mss_eff_config.xml b/src/import/chips/p9/procedures/xml/error_info/p9_memory_mss_eff_config.xml index 4bd96d9f7..8569812a9 100644 --- a/src/import/chips/p9/procedures/xml/error_info/p9_memory_mss_eff_config.xml +++ b/src/import/chips/p9/procedures/xml/error_info/p9_memory_mss_eff_config.xml @@ -246,20 +246,6 @@ </hwpError> <hwpError> - <rc>RC_MSS_INVALID_FREQ_PASSED_IN</rc> - <description> - An invalid Freq value has been set - </description> - <ffdc>FREQ</ffdc> - <ffdc>FUNCTION</ffdc> - <ffdc>DIMM_TARGET</ffdc> - <callout> - <procedure>CODE</procedure> - <priority>HIGH</priority> - </callout> - </hwpError> - - <hwpError> <rc>RC_MSS_ERROR_CREATING_EFF_CONFIG_DIMM_OBJECT</rc> <description> Failed to create a dimm object, probably due to bad data from SPD (ie code doesn't support) @@ -383,52 +369,6 @@ </hwpError> <hwpError> - <rc>RC_MSS_INVALID_PAGE_SIZE</rc> - <description> - Invalid page size - </description> - <ffdc>DRAM_WIDTH</ffdc> - <callout> - <procedure>MEMORY_PLUGGING_ERROR</procedure> - <priority>HIGH</priority> - </callout> - <callout> - <target>DIMM_TARGET</target> - <priority>MEDIUM</priority> - </callout> - <deconfigure> - <target>DIMM_TARGET</target> - </deconfigure> - <callout> - <procedure>CODE</procedure> - <priority>MEDIUM</priority> - </callout> - </hwpError> - - <hwpError> - <rc>RC_MSS_INVALID_DRAM_WIDTH</rc> - <description> - Code only supports x4 and x8 drams at this time - </description> - <ffdc>DRAM_WIDTH</ffdc> - <callout> - <procedure>MEMORY_PLUGGING_ERROR</procedure> - <priority>HIGH</priority> - </callout> - <callout> - <target>DIMM_TARGET</target> - <priority>MEDIUM</priority> - </callout> - <deconfigure> - <target>DIMM_TARGET</target> - </deconfigure> - <callout> - <procedure>CODE</procedure> - <priority>MEDIUM</priority> - </callout> - </hwpError> - - <hwpError> <rc>RC_MSS_INVALID_RTT_PARK_CALCULATIONS</rc> <description> Calculated the rtt_park_index into the VPD attribute incorrectly |