summaryrefslogtreecommitdiffstats
path: root/src/import/chips
diff options
context:
space:
mode:
authorAndre Marin <aamarin@us.ibm.com>2019-08-16 13:51:47 -0400
committerDaniel M Crowell <dcrowell@us.ibm.com>2019-10-16 14:32:00 -0500
commitb403e6730f5ccbb9e065d49496b964a753cd02c2 (patch)
treea5b89d9e97f525b2071f68500d5e68b6bbd60ced /src/import/chips
parent0571992d6ae7ea505e14553ed1a4369ae0c2a816 (diff)
downloadtalos-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')
-rw-r--r--src/import/chips/ocmb/explorer/procedures/hwp/memory/exp_mss_eff_config_thermal.C18
-rw-r--r--src/import/chips/ocmb/explorer/procedures/hwp/memory/lib/power_thermal/exp_decoder.C48
-rw-r--r--src/import/chips/p9/procedures/hwp/memory/lib/mss_attribute_accessors.H22
-rw-r--r--src/import/chips/p9/procedures/xml/attribute_info/memory_mcs_attributes.xml12
-rw-r--r--src/import/chips/p9/procedures/xml/error_info/p9_memory_mss_eff_config.xml60
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
OpenPOWER on IntegriCloud