summaryrefslogtreecommitdiffstats
path: root/src/import/chips/p9/procedures/hwp/initfiles
diff options
context:
space:
mode:
authorJoe McGill <jmcgill@us.ibm.com>2018-03-28 14:06:05 -0500
committerSachin Gupta <sgupta2m@in.ibm.com>2018-05-03 11:31:07 -0400
commita7e21bc75bf93bcabf0c96e011e06c1790dfffaa (patch)
tree8037a990ebb9a5f79c48b3a41c384e753fea292b /src/import/chips/p9/procedures/hwp/initfiles
parent1768f6cce137b3aa293e2e294a38f10be89a88be (diff)
downloadtalos-sbe-a7e21bc75bf93bcabf0c96e011e06c1790dfffaa.tar.gz
talos-sbe-a7e21bc75bf93bcabf0c96e011e06c1790dfffaa.zip
Savory Insomnia -- revert to ordered tlbie mode for Cumulus
- configure the fabric & unit snooper logic to operate in ordered/p8 tlbie mode - prohibit the nest mmu from snooping tlbie - adjust NCU tlbie stall settings - revert HW419330 fix on Cumulus only Change-Id: Idf18f81b08c4fb6e372fa4c544c023a8820bb37b CQ: HW440920 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/56406 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@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: PPE CI <ppe-ci+hostboot@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: Thi N. Tran <thi@us.ibm.com> Reviewed-by: Jenny Huynh <jhuynh@us.ibm.com> Reviewed-by: LUKE MURRAY <murrayl@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/56415 Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com>
Diffstat (limited to 'src/import/chips/p9/procedures/hwp/initfiles')
-rw-r--r--src/import/chips/p9/procedures/hwp/initfiles/p9_ncu_scom.C26
1 files changed, 24 insertions, 2 deletions
diff --git a/src/import/chips/p9/procedures/hwp/initfiles/p9_ncu_scom.C b/src/import/chips/p9/procedures/hwp/initfiles/p9_ncu_scom.C
index 19537592..3daa1fc8 100644
--- a/src/import/chips/p9/procedures/hwp/initfiles/p9_ncu_scom.C
+++ b/src/import/chips/p9/procedures/hwp/initfiles/p9_ncu_scom.C
@@ -37,7 +37,10 @@ constexpr uint64_t literal_0b1000 = 0b1000;
constexpr uint64_t literal_0x40 = 0x40;
constexpr uint64_t literal_0x8 = 0x8;
constexpr uint64_t literal_6 = 6;
+constexpr uint64_t literal_0 = 0;
+constexpr uint64_t literal_15 = 15;
constexpr uint64_t literal_4 = 4;
+constexpr uint64_t literal_0x01 = 0x01;
constexpr uint64_t literal_0x0F = 0x0F;
fapi2::ReturnCode p9_ncu_scom(const fapi2::Target<fapi2::TARGET_TYPE_EX>& TGT0,
@@ -54,6 +57,8 @@ fapi2::ReturnCode p9_ncu_scom(const fapi2::Target<fapi2::TARGET_TYPE_EX>& TGT0,
FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_FABRIC_ADDR_EXTENSION_GROUP_ID, TGT1, l_TGT1_ATTR_FABRIC_ADDR_EXTENSION_GROUP_ID));
fapi2::ATTR_FABRIC_ADDR_EXTENSION_CHIP_ID_Type l_TGT1_ATTR_FABRIC_ADDR_EXTENSION_CHIP_ID;
FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_FABRIC_ADDR_EXTENSION_CHIP_ID, TGT1, l_TGT1_ATTR_FABRIC_ADDR_EXTENSION_CHIP_ID));
+ fapi2::ATTR_CHIP_EC_FEATURE_HW440920_Type l_TGT2_ATTR_CHIP_EC_FEATURE_HW440920;
+ FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_EC_FEATURE_HW440920, TGT2, l_TGT2_ATTR_CHIP_EC_FEATURE_HW440920));
fapi2::buffer<uint64_t> l_scom_buffer;
{
FAPI_TRY(fapi2::getScom( TGT0, 0x1001100aull, l_scom_buffer ));
@@ -147,8 +152,25 @@ fapi2::ReturnCode p9_ncu_scom(const fapi2::Target<fapi2::TARGET_TYPE_EX>& TGT0,
constexpr auto l_EXP_NC_NCMISC_NCSCOMS_TLBIE_STALL_EN_ON = 0x1;
l_scom_buffer.insert<0, 1, 63, uint64_t>(l_EXP_NC_NCMISC_NCSCOMS_TLBIE_STALL_EN_ON );
l_scom_buffer.insert<1, 3, 61, uint64_t>(literal_6 );
- l_scom_buffer.insert<4, 4, 60, uint64_t>(literal_4 );
- l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x0F );
+
+ if ((l_TGT2_ATTR_CHIP_EC_FEATURE_HW440920 != literal_0))
+ {
+ l_scom_buffer.insert<4, 4, 60, uint64_t>(literal_15 );
+ }
+ else if (( true ))
+ {
+ l_scom_buffer.insert<4, 4, 60, uint64_t>(literal_4 );
+ }
+
+ if ((l_TGT2_ATTR_CHIP_EC_FEATURE_HW440920 != literal_0))
+ {
+ l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x01 );
+ }
+ else if (( true ))
+ {
+ l_scom_buffer.insert<8, 8, 56, uint64_t>(literal_0x0F );
+ }
+
FAPI_TRY(fapi2::putScom(TGT0, 0x1001100cull, l_scom_buffer));
}
OpenPOWER on IntegriCloud