summaryrefslogtreecommitdiffstats
path: root/src/import/chips/p9
diff options
context:
space:
mode:
authorJoe McGill <jmcgill@us.ibm.com>2016-03-04 11:51:37 -0600
committerDaniel M. Crowell <dcrowell@us.ibm.com>2016-03-31 14:00:58 -0400
commit3c0756154d375230ff16caa640326524aa0a4610 (patch)
tree9be12f4052b6ef75485e5ac1fbdbca4c52e7f652 /src/import/chips/p9
parent2faa3f9ec26b25cd92e8f33f9a1417cfe66c027f (diff)
downloadtalos-hostboot-3c0756154d375230ff16caa640326524aa0a4610.tar.gz
talos-hostboot-3c0756154d375230ff16caa640326524aa0a4610.zip
ifCompiler -- initfile HWP generation code to match specification
when=L: permit fall through/no update when no rows evaluate to true add read-modify-write path to support ispys with bit field specifications support espys (integer data specification to putspy API) of arbitrary size support ispys of arbitrary size (64 bits per row maximum) add test initfiles for all targets expected to be supported in image build need eCMD update to test OBUS/MC initfiles add test procedure/wrapper for regression using Cronus platform when=S: emit error if no clocks-on content is found in spydef general: update ENGD reference to use e9034 u055 model Change-Id: I522d4fa559f84a8c4d960b8a686def5af92ad3ef Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/21741 Tested-by: PPE CI Tested-by: Jenkins Server Tested-by: Hostboot CI Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/21763 Tested-by: FSP CI Jenkins Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/import/chips/p9')
-rw-r--r--src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_scom.C122
1 files changed, 14 insertions, 108 deletions
diff --git a/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_scom.C b/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_scom.C
index 0f8387a09..72e9f970f 100644
--- a/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_scom.C
+++ b/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_scom.C
@@ -27,20 +27,16 @@ using namespace fapi2;
#define ATTR_PROC_FABRIC_A_ATTACHED_CHIP_CNFG_ATTRIBUTE_VALUE_0 0
#define ATTR_PROC_FABRIC_X_ATTACHED_CHIP_CNFG_ATTRIBUTE_VALUE_0 0
-#define LITERAL_PB_IOE_LL0_CONFIG_LINK_PAIR_ON 0x80000000
-#define LITERAL_PB_IOE_LL0_IOEL_FIR_MASK_REG_0xFFFFFFFFFFFFFFFF 0xFFFFFFFFFFFFFFFF
-#define LITERAL_PB_IOE_LL1_CONFIG_LINK_PAIR_ON 0x80000000
+#define LITERAL_PB_IOE_LL1_CONFIG_LINK_PAIR_ON 0x1
#define LITERAL_PB_IOE_LL1_IOEL_FIR_MASK_REG_0xFFFFFFFFFFFFFFFF 0xFFFFFFFFFFFFFFFF
-#define LITERAL_PB_IOE_LL2_CONFIG_LINK_PAIR_ON 0x80000000
-#define LITERAL_PB_IOE_LL2_IOEL_FIR_MASK_REG_0xFFFFFFFFFFFFFFFF 0xFFFFFFFFFFFFFFFF
-#define LITERAL_PB_IOE_SCOM_PB_CFG_IOE01_IS_LOGICAL_PAIR_ON 0x80000000
-#define LITERAL_PB_IOE_SCOM_PB_CFG_IOE23_IS_LOGICAL_PAIR_ON 0x80000000
-#define LITERAL_PB_IOE_SCOM_PB_CFG_IOE45_IS_LOGICAL_PAIR_ON 0x80000000
+#define LITERAL_PB_IOE_SCOM_PB_CFG_IOE01_IS_LOGICAL_PAIR_ON 0x1
+#define LITERAL_PB_IOE_SCOM_PB_CFG_IOE23_IS_LOGICAL_PAIR_ON 0x1
+#define LITERAL_PB_IOE_SCOM_PB_CFG_IOE45_IS_LOGICAL_PAIR_ON 0x1
#define LITERAL_PB_IOE_SCOM_PB_IOE_FIR_MASK_REG_0xFFFFFFFFFFFFFFFF 0xFFFFFFFFFFFFFFFF
-#define LITERAL_PB_IOO_SCOM_PB_CFG_IOO01_IS_LOGICAL_PAIR_ON 0x80000000
-#define LITERAL_PB_IOO_SCOM_PB_CFG_IOO23_IS_LOGICAL_PAIR_ON 0x80000000
-#define LITERAL_PB_IOO_SCOM_PB_CFG_IOO45_IS_LOGICAL_PAIR_ON 0x80000000
-#define LITERAL_PB_IOO_SCOM_PB_CFG_IOO67_IS_LOGICAL_PAIR_ON 0x80000000
+#define LITERAL_PB_IOO_SCOM_PB_CFG_IOO01_IS_LOGICAL_PAIR_ON 0x1
+#define LITERAL_PB_IOO_SCOM_PB_CFG_IOO23_IS_LOGICAL_PAIR_ON 0x1
+#define LITERAL_PB_IOO_SCOM_PB_CFG_IOO45_IS_LOGICAL_PAIR_ON 0x1
+#define LITERAL_PB_IOO_SCOM_PB_CFG_IOO67_IS_LOGICAL_PAIR_ON 0x1
#define LITERAL_PB_IOO_SCOM_PB_IOO_FIR_MASK_REG_0xFFFFFFFFFFFFFFFF 0xFFFFFFFFFFFFFFFF
fapi2::ReturnCode p9_fbc_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>& TGT0)
@@ -108,41 +104,12 @@ fapi2::ReturnCode p9_fbc_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>&
64, 0 );
}
- fapi2::buffer<uint64_t> PB_IOE_LL0_CONFIG_LINK_PAIR_scom0;
- l_rc = fapi2::getScom( TGT0, 0x601180aull, PB_IOE_LL0_CONFIG_LINK_PAIR_scom0 );
-
- if (l_rc)
- {
- FAPI_ERR("ERROR executing: getScom (0x601180a)");
- break;
- }
-
- if (iv_def_X0_ENABLED)
- {
- PB_IOE_LL0_CONFIG_LINK_PAIR_scom0.insert<uint64_t> (LITERAL_PB_IOE_LL0_CONFIG_LINK_PAIR_ON, 0, 1, 63 );
- }
-
- fapi2::buffer<uint64_t> PB_IOE_LL0_IOEL_FIR_MASK_REG_scom0;
- l_rc = fapi2::getScom( TGT0, 0x6011803ull, PB_IOE_LL0_IOEL_FIR_MASK_REG_scom0 );
-
- if (l_rc)
- {
- FAPI_ERR("ERROR executing: getScom (0x6011803)");
- break;
- }
-
- if (iv_def_X0_ENABLED)
- {
- PB_IOE_LL0_IOEL_FIR_MASK_REG_scom0.insert<uint64_t> (LITERAL_PB_IOE_LL0_IOEL_FIR_MASK_REG_0xFFFFFFFFFFFFFFFF, 0, 64,
- 0 );
- }
-
fapi2::buffer<uint64_t> PB_IOE_LL1_CONFIG_LINK_PAIR_scom0;
- l_rc = fapi2::getScom( TGT0, 0x6011c0aull, PB_IOE_LL1_CONFIG_LINK_PAIR_scom0 );
+ l_rc = fapi2::getScom( TGT0, 0x601180aull, PB_IOE_LL1_CONFIG_LINK_PAIR_scom0 );
if (l_rc)
{
- FAPI_ERR("ERROR executing: getScom (0x6011c0a)");
+ FAPI_ERR("ERROR executing: getScom (0x601180a)");
break;
}
@@ -152,11 +119,11 @@ fapi2::ReturnCode p9_fbc_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>&
}
fapi2::buffer<uint64_t> PB_IOE_LL1_IOEL_FIR_MASK_REG_scom0;
- l_rc = fapi2::getScom( TGT0, 0x6011c03ull, PB_IOE_LL1_IOEL_FIR_MASK_REG_scom0 );
+ l_rc = fapi2::getScom( TGT0, 0x6011803ull, PB_IOE_LL1_IOEL_FIR_MASK_REG_scom0 );
if (l_rc)
{
- FAPI_ERR("ERROR executing: getScom (0x6011c03)");
+ FAPI_ERR("ERROR executing: getScom (0x6011803)");
break;
}
@@ -166,35 +133,6 @@ fapi2::ReturnCode p9_fbc_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>&
0 );
}
- fapi2::buffer<uint64_t> PB_IOE_LL2_CONFIG_LINK_PAIR_scom0;
- l_rc = fapi2::getScom( TGT0, 0x601200aull, PB_IOE_LL2_CONFIG_LINK_PAIR_scom0 );
-
- if (l_rc)
- {
- FAPI_ERR("ERROR executing: getScom (0x601200a)");
- break;
- }
-
- if (iv_def_X2_ENABLED)
- {
- PB_IOE_LL2_CONFIG_LINK_PAIR_scom0.insert<uint64_t> (LITERAL_PB_IOE_LL2_CONFIG_LINK_PAIR_ON, 0, 1, 63 );
- }
-
- fapi2::buffer<uint64_t> PB_IOE_LL2_IOEL_FIR_MASK_REG_scom0;
- l_rc = fapi2::getScom( TGT0, 0x6012003ull, PB_IOE_LL2_IOEL_FIR_MASK_REG_scom0 );
-
- if (l_rc)
- {
- FAPI_ERR("ERROR executing: getScom (0x6012003)");
- break;
- }
-
- if (iv_def_X2_ENABLED)
- {
- PB_IOE_LL2_IOEL_FIR_MASK_REG_scom0.insert<uint64_t> (LITERAL_PB_IOE_LL2_IOEL_FIR_MASK_REG_0xFFFFFFFFFFFFFFFF, 0, 64,
- 0 );
- }
-
ATTR_PROC_FABRIC_A_ATTACHED_CHIP_CNFG_Type iv_TGT0_ATTR_PROC_FABRIC_A_ATTACHED_CHIP_CNFG;
l_rc = FAPI_ATTR_GET(ATTR_PROC_FABRIC_A_ATTACHED_CHIP_CNFG, TGT0, iv_TGT0_ATTR_PROC_FABRIC_A_ATTACHED_CHIP_CNFG);
@@ -305,7 +243,7 @@ fapi2::ReturnCode p9_fbc_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>&
break;
}
- l_rc = fapi2::putScom( TGT0, 0x6011803ull, PB_IOE_LL0_IOEL_FIR_MASK_REG_scom0 );
+ l_rc = fapi2::putScom( TGT0, 0x6011803ull, PB_IOE_LL1_IOEL_FIR_MASK_REG_scom0 );
if (l_rc)
{
@@ -313,7 +251,7 @@ fapi2::ReturnCode p9_fbc_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>&
break;
}
- l_rc = fapi2::putScom( TGT0, 0x601180aull, PB_IOE_LL0_CONFIG_LINK_PAIR_scom0 );
+ l_rc = fapi2::putScom( TGT0, 0x601180aull, PB_IOE_LL1_CONFIG_LINK_PAIR_scom0 );
if (l_rc)
{
@@ -321,38 +259,6 @@ fapi2::ReturnCode p9_fbc_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>&
break;
}
- l_rc = fapi2::putScom( TGT0, 0x6011c03ull, PB_IOE_LL1_IOEL_FIR_MASK_REG_scom0 );
-
- if (l_rc)
- {
- FAPI_ERR("ERROR executing: putScom (0x6011c03)");
- break;
- }
-
- l_rc = fapi2::putScom( TGT0, 0x6011c0aull, PB_IOE_LL1_CONFIG_LINK_PAIR_scom0 );
-
- if (l_rc)
- {
- FAPI_ERR("ERROR executing: putScom (0x6011c0a)");
- break;
- }
-
- l_rc = fapi2::putScom( TGT0, 0x6012003ull, PB_IOE_LL2_IOEL_FIR_MASK_REG_scom0 );
-
- if (l_rc)
- {
- FAPI_ERR("ERROR executing: putScom (0x6012003)");
- break;
- }
-
- l_rc = fapi2::putScom( TGT0, 0x601200aull, PB_IOE_LL2_CONFIG_LINK_PAIR_scom0 );
-
- if (l_rc)
- {
- FAPI_ERR("ERROR executing: putScom (0x601200a)");
- break;
- }
-
}
while(0);
OpenPOWER on IntegriCloud