summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLennard Streat <lstreat@us.ibm.com>2017-12-12 15:05:41 -0600
committerDaniel M. Crowell <dcrowell@us.ibm.com>2018-01-13 13:36:23 -0500
commitca9bfdb954dbb8bc033c0b41bdd984aa6a7062df (patch)
tree3ea39da838b1e7f6c832c2e11a2d73dcd60a635a
parente7fd8e4f5b0157ac3deec515e929d527bbe38088 (diff)
downloadblackbird-hostboot-ca9bfdb954dbb8bc033c0b41bdd984aa6a7062df.tar.gz
blackbird-hostboot-ca9bfdb954dbb8bc033c0b41bdd984aa6a7062df.zip
Workaround for Warlike Parasite (HW430546)
Change-Id: I1c93a9b505e6656ea9bda20a7fac363e037a3d73 CQ: HW430546 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/50832 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Joseph J. McGill <jmcgill@us.ibm.com> Reviewed-by: SHELTON LEUNG <sleung@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: HWSV CI <hwsv-ci+hostboot@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/50841 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>
-rw-r--r--src/import/chips/p9/procedures/hwp/initfiles/p9c_mi_scom.C22
-rw-r--r--src/import/chips/p9/procedures/xml/attribute_info/chip_ec_attributes.xml20
2 files changed, 37 insertions, 5 deletions
diff --git a/src/import/chips/p9/procedures/hwp/initfiles/p9c_mi_scom.C b/src/import/chips/p9/procedures/hwp/initfiles/p9c_mi_scom.C
index 9981b5fe4..e3bc3c56a 100644
--- a/src/import/chips/p9/procedures/hwp/initfiles/p9c_mi_scom.C
+++ b/src/import/chips/p9/procedures/hwp/initfiles/p9c_mi_scom.C
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2017 */
+/* Contributors Listed Below - COPYRIGHT 2017,2018 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -30,11 +30,12 @@
using namespace fapi2;
constexpr uint64_t literal_7 = 7;
+constexpr uint64_t literal_1 = 1;
+constexpr uint64_t literal_15 = 15;
+constexpr uint64_t literal_0 = 0;
constexpr uint64_t literal_16 = 16;
constexpr uint64_t literal_8 = 8;
-constexpr uint64_t literal_1 = 1;
constexpr uint64_t literal_0x19 = 0x19;
-constexpr uint64_t literal_0 = 0;
constexpr uint64_t literal_1167 = 1167;
constexpr uint64_t literal_1000 = 1000;
constexpr uint64_t literal_1273 = 1273;
@@ -54,6 +55,10 @@ fapi2::ReturnCode p9c_mi_scom(const fapi2::Target<fapi2::TARGET_TYPE_MI>& TGT0,
fapi2::ATTR_NAME_Type l_chip_id;
FAPI_TRY(FAPI_ATTR_GET_PRIVILEGED(fapi2::ATTR_NAME, TGT2, l_chip_id));
FAPI_TRY(FAPI_ATTR_GET_PRIVILEGED(fapi2::ATTR_EC, TGT2, l_chip_ec));
+ fapi2::ATTR_CHIP_EC_FEATURE_HW430546_P9UDD10_WARLIKE_PARASITE_Type
+ l_TGT2_ATTR_CHIP_EC_FEATURE_HW430546_P9UDD10_WARLIKE_PARASITE;
+ FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_EC_FEATURE_HW430546_P9UDD10_WARLIKE_PARASITE, TGT2,
+ l_TGT2_ATTR_CHIP_EC_FEATURE_HW430546_P9UDD10_WARLIKE_PARASITE));
uint64_t l_def_ENABLE_PREFETCH_DROP_PROMOTE_BASIC = literal_1;
fapi2::ATTR_CHIP_EC_FEATURE_HW413362_P9UDD11_ASYNC_Type l_TGT2_ATTR_CHIP_EC_FEATURE_HW413362_P9UDD11_ASYNC;
FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_EC_FEATURE_HW413362_P9UDD11_ASYNC, TGT2,
@@ -77,7 +82,16 @@ fapi2::ReturnCode p9c_mi_scom(const fapi2::Target<fapi2::TARGET_TYPE_MI>& TGT0,
FAPI_TRY(fapi2::getScom( TGT0, 0x5010810ull, l_scom_buffer ));
l_scom_buffer.insert<46, 4, 60, uint64_t>(literal_7 );
- l_scom_buffer.insert<50, 5, 59, uint64_t>(literal_16 );
+
+ if ((l_TGT2_ATTR_CHIP_EC_FEATURE_HW430546_P9UDD10_WARLIKE_PARASITE == literal_1))
+ {
+ l_scom_buffer.insert<50, 5, 59, uint64_t>(literal_15 );
+ }
+ else if ((l_TGT2_ATTR_CHIP_EC_FEATURE_HW430546_P9UDD10_WARLIKE_PARASITE == literal_0))
+ {
+ l_scom_buffer.insert<50, 5, 59, uint64_t>(literal_16 );
+ }
+
l_scom_buffer.insert<55, 6, 58, uint64_t>(literal_8 );
if ((l_def_ENABLE_PREFETCH_DROP_PROMOTE_BASIC == literal_1))
diff --git a/src/import/chips/p9/procedures/xml/attribute_info/chip_ec_attributes.xml b/src/import/chips/p9/procedures/xml/attribute_info/chip_ec_attributes.xml
index eea51af47..dc37a29d8 100644
--- a/src/import/chips/p9/procedures/xml/attribute_info/chip_ec_attributes.xml
+++ b/src/import/chips/p9/procedures/xml/attribute_info/chip_ec_attributes.xml
@@ -5,7 +5,7 @@
<!-- -->
<!-- OpenPOWER HostBoot Project -->
<!-- -->
-<!-- Contributors Listed Below - COPYRIGHT 2016,2017 -->
+<!-- Contributors Listed Below - COPYRIGHT 2016,2018 -->
<!-- [+] International Business Machines Corp. -->
<!-- -->
<!-- -->
@@ -5283,6 +5283,24 @@
</attribute>
<attribute>
+ <id>ATTR_CHIP_EC_FEATURE_HW430546_P9UDD10_WARLIKE_PARASITE</id>
+ <targetType>TARGET_TYPE_PROC_CHIP</targetType>
+ <description>
+ Reduce available channel tags for shadow machine usage to
+ prevent tag overrun due to pathalogical bug.
+ </description>
+ <chipEcFeature>
+ <chip>
+ <name>ENUM_ATTR_NAME_CUMULUS</name>
+ <ec>
+ <value>0x10</value>
+ <test>EQUAL</test>
+ </ec>
+ </chip>
+ </chipEcFeature>
+ </attribute>
+
+ <attribute>
<id>ATTR_CHIP_EC_FEATURE_HW404176_ASSERT_SCAN_CLK</id>
<targetType>TARGET_TYPE_PROC_CHIP</targetType>
<description>
OpenPOWER on IntegriCloud