summaryrefslogtreecommitdiffstats
path: root/src/import/chips/p9/procedures/hwp/initfiles
diff options
context:
space:
mode:
authorJenny Huynh <jhuynh@us.ibm.com>2019-05-17 10:40:33 -0400
committerChristian R. Geddes <crgeddes@us.ibm.com>2019-05-20 09:46:55 -0500
commitbedc05eb919f70831f744865c94e19d9d169e654 (patch)
tree6e8db7981857616eadc1dfaf25af693d05e496d3 /src/import/chips/p9/procedures/hwp/initfiles
parent2a334beaa4b6e4b8eb7993476631e69e4a0da0b2 (diff)
downloadtalos-hostboot-bedc05eb919f70831f744865c94e19d9d169e654.tar.gz
talos-hostboot-bedc05eb919f70831f744865c94e19d9d169e654.zip
Fabric inits update for Axone
Change-Id: I7fd20b531154d7109b191f78c2400320552b611e Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77544 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: PPE CI <ppe-ci+hostboot@us.ibm.com> Reviewed-by: DANIEL C. HOWE <dchowe@us.ibm.com> Reviewed-by: Thi N. Tran <thi@us.ibm.com> Tested-by: HWSV CI <hwsv-ci+hostboot@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: Joseph J. McGill <jmcgill@us.ibm.com> Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77557 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: Christian R. Geddes <crgeddes@us.ibm.com>
Diffstat (limited to 'src/import/chips/p9/procedures/hwp/initfiles')
-rw-r--r--src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_cd_hp1_scom.C16
-rw-r--r--src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_cd_hp2_scom.C22
-rw-r--r--src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_cd_hp3_scom.C22
-rw-r--r--src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_no_hp_scom.C51
4 files changed, 102 insertions, 9 deletions
diff --git a/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_cd_hp1_scom.C b/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_cd_hp1_scom.C
index 6f65f5fe5..896614802 100644
--- a/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_cd_hp1_scom.C
+++ b/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_cd_hp1_scom.C
@@ -149,6 +149,10 @@ fapi2::ReturnCode p9_fbc_cd_hp1_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC
FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_PROC_FABRIC_CORE_CEILING_RATIO, TGT1, l_TGT1_ATTR_PROC_FABRIC_CORE_CEILING_RATIO));
uint64_t l_def_CORE_CEILING_RATIO_8_8 = (l_TGT1_ATTR_PROC_FABRIC_CORE_CEILING_RATIO ==
ENUM_ATTR_PROC_FABRIC_CORE_CEILING_RATIO_RATIO_8_8);
+ fapi2::ATTR_CHIP_EC_FEATURE_AXONE_FBC_SETTINGS_Type l_TGT0_ATTR_CHIP_EC_FEATURE_AXONE_FBC_SETTINGS;
+ FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_EC_FEATURE_AXONE_FBC_SETTINGS, TGT0,
+ l_TGT0_ATTR_CHIP_EC_FEATURE_AXONE_FBC_SETTINGS));
+ uint64_t l_def_IS_AXONE = (l_TGT0_ATTR_CHIP_EC_FEATURE_AXONE_FBC_SETTINGS != literal_0);
fapi2::buffer<uint64_t> l_scom_buffer;
{
if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5)
@@ -1200,11 +1204,21 @@ fapi2::ReturnCode p9_fbc_cd_hp1_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC
l_scom_buffer.insert<34, 8, 56, uint64_t>(literal_0b11111110 );
}
- if (literal_1)
+ if (l_def_IS_AXONE)
+ {
+ l_scom_buffer.insert<42, 2, 62, uint64_t>(literal_0b10 );
+ }
+
+ if (( ! l_def_IS_AXONE))
{
l_scom_buffer.insert<42, 8, 56, uint64_t>(literal_0b11111110 );
}
+ if (l_def_IS_AXONE)
+ {
+ l_scom_buffer.insert<44, 6, 58, uint64_t>(literal_0b000000 );
+ }
+
if (literal_1)
{
l_scom_buffer.insert<50, 2, 62, uint64_t>(literal_0b01 );
diff --git a/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_cd_hp2_scom.C b/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_cd_hp2_scom.C
index 42e21b5f9..456de5563 100644
--- a/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_cd_hp2_scom.C
+++ b/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_cd_hp2_scom.C
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2017,2018 */
+/* Contributors Listed Below - COPYRIGHT 2017,2019 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -40,9 +40,11 @@ constexpr uint64_t literal_0b1111 = 0b1111;
constexpr uint64_t literal_0b011 = 0b011;
constexpr uint64_t literal_0b010 = 0b010;
constexpr uint64_t literal_0b11111110 = 0b11111110;
+constexpr uint64_t literal_0 = 0;
+constexpr uint64_t literal_0b10 = 0b10;
+constexpr uint64_t literal_0b000000 = 0b000000;
constexpr uint64_t literal_0b01 = 0b01;
constexpr uint64_t literal_0b00 = 0b00;
-constexpr uint64_t literal_0b10 = 0b10;
fapi2::ReturnCode p9_fbc_cd_hp2_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>& TGT0,
const fapi2::Target<fapi2::TARGET_TYPE_SYSTEM>& TGT1)
@@ -59,6 +61,10 @@ fapi2::ReturnCode p9_fbc_cd_hp2_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC
fapi2::ATTR_PROC_FABRIC_X_LINKS_CNFG_Type l_TGT0_ATTR_PROC_FABRIC_X_LINKS_CNFG;
FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_PROC_FABRIC_X_LINKS_CNFG, TGT0, l_TGT0_ATTR_PROC_FABRIC_X_LINKS_CNFG));
uint64_t l_def_NUM_X_LINKS_CFG = l_TGT0_ATTR_PROC_FABRIC_X_LINKS_CNFG;
+ fapi2::ATTR_CHIP_EC_FEATURE_AXONE_FBC_SETTINGS_Type l_TGT0_ATTR_CHIP_EC_FEATURE_AXONE_FBC_SETTINGS;
+ FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_EC_FEATURE_AXONE_FBC_SETTINGS, TGT0,
+ l_TGT0_ATTR_CHIP_EC_FEATURE_AXONE_FBC_SETTINGS));
+ uint64_t l_def_IS_AXONE = (l_TGT0_ATTR_CHIP_EC_FEATURE_AXONE_FBC_SETTINGS != literal_0);
fapi2::buffer<uint64_t> l_scom_buffer;
{
if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5)
@@ -184,11 +190,21 @@ fapi2::ReturnCode p9_fbc_cd_hp2_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC
l_scom_buffer.insert<34, 8, 56, uint64_t>(literal_0b11111110 );
}
- if (literal_1)
+ if (l_def_IS_AXONE)
+ {
+ l_scom_buffer.insert<42, 2, 62, uint64_t>(literal_0b10 );
+ }
+
+ if (( ! l_def_IS_AXONE))
{
l_scom_buffer.insert<42, 8, 56, uint64_t>(literal_0b11111110 );
}
+ if (l_def_IS_AXONE)
+ {
+ l_scom_buffer.insert<44, 6, 58, uint64_t>(literal_0b000000 );
+ }
+
if (literal_1)
{
l_scom_buffer.insert<50, 2, 62, uint64_t>(literal_0b01 );
diff --git a/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_cd_hp3_scom.C b/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_cd_hp3_scom.C
index 9790095c3..3488465f2 100644
--- a/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_cd_hp3_scom.C
+++ b/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_cd_hp3_scom.C
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2017,2018 */
+/* Contributors Listed Below - COPYRIGHT 2017,2019 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -40,9 +40,11 @@ constexpr uint64_t literal_0b1 = 0b1;
constexpr uint64_t literal_0b011 = 0b011;
constexpr uint64_t literal_0b010 = 0b010;
constexpr uint64_t literal_0b11111110 = 0b11111110;
+constexpr uint64_t literal_0 = 0;
+constexpr uint64_t literal_0b10 = 0b10;
+constexpr uint64_t literal_0b000000 = 0b000000;
constexpr uint64_t literal_0b01 = 0b01;
constexpr uint64_t literal_0b00 = 0b00;
-constexpr uint64_t literal_0b10 = 0b10;
fapi2::ReturnCode p9_fbc_cd_hp3_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP>& TGT0,
const fapi2::Target<fapi2::TARGET_TYPE_SYSTEM>& TGT1)
@@ -59,6 +61,10 @@ fapi2::ReturnCode p9_fbc_cd_hp3_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC
fapi2::ATTR_PROC_FABRIC_X_LINKS_CNFG_Type l_TGT0_ATTR_PROC_FABRIC_X_LINKS_CNFG;
FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_PROC_FABRIC_X_LINKS_CNFG, TGT0, l_TGT0_ATTR_PROC_FABRIC_X_LINKS_CNFG));
uint64_t l_def_NUM_X_LINKS_CFG = l_TGT0_ATTR_PROC_FABRIC_X_LINKS_CNFG;
+ fapi2::ATTR_CHIP_EC_FEATURE_AXONE_FBC_SETTINGS_Type l_TGT0_ATTR_CHIP_EC_FEATURE_AXONE_FBC_SETTINGS;
+ FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_EC_FEATURE_AXONE_FBC_SETTINGS, TGT0,
+ l_TGT0_ATTR_CHIP_EC_FEATURE_AXONE_FBC_SETTINGS));
+ uint64_t l_def_IS_AXONE = (l_TGT0_ATTR_CHIP_EC_FEATURE_AXONE_FBC_SETTINGS != literal_0);
fapi2::buffer<uint64_t> l_scom_buffer;
{
if (((l_chip_id == 0x5) && (l_chip_ec == 0x20)) || ((l_chip_id == 0x5) && (l_chip_ec == 0x21)) || ((l_chip_id == 0x5)
@@ -184,11 +190,21 @@ fapi2::ReturnCode p9_fbc_cd_hp3_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC
l_scom_buffer.insert<34, 8, 56, uint64_t>(literal_0b11111110 );
}
- if (literal_1)
+ if (l_def_IS_AXONE)
+ {
+ l_scom_buffer.insert<42, 2, 62, uint64_t>(literal_0b10 );
+ }
+
+ if (( ! l_def_IS_AXONE))
{
l_scom_buffer.insert<42, 8, 56, uint64_t>(literal_0b11111110 );
}
+ if (l_def_IS_AXONE)
+ {
+ l_scom_buffer.insert<44, 6, 58, uint64_t>(literal_0b000000 );
+ }
+
if (literal_1)
{
l_scom_buffer.insert<50, 2, 62, uint64_t>(literal_0b01 );
diff --git a/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_no_hp_scom.C b/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_no_hp_scom.C
index d368c5b07..ba5d1a069 100644
--- a/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_no_hp_scom.C
+++ b/src/import/chips/p9/procedures/hwp/initfiles/p9_fbc_no_hp_scom.C
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2016,2017 */
+/* Contributors Listed Below - COPYRIGHT 2016,2019 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -31,8 +31,8 @@ using namespace fapi2;
constexpr uint64_t literal_0 = 0;
constexpr uint64_t literal_1 = 1;
-constexpr uint64_t literal_0x0 = 0x0;
constexpr uint64_t literal_3 = 3;
+constexpr uint64_t literal_0x0 = 0x0;
constexpr uint64_t literal_0x3 = 0x3;
constexpr uint64_t literal_2 = 2;
constexpr uint64_t literal_0x4 = 0x4;
@@ -89,6 +89,8 @@ fapi2::ReturnCode p9_fbc_no_hp_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC_
uint64_t l_def_IS_FLAT_8 = (l_TGT1_ATTR_PROC_EPS_TABLE_TYPE == fapi2::ENUM_ATTR_PROC_EPS_TABLE_TYPE_EPS_TYPE_HE_F8);
fapi2::ATTR_PROC_FABRIC_PUMP_MODE_Type l_TGT1_ATTR_PROC_FABRIC_PUMP_MODE;
FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_PROC_FABRIC_PUMP_MODE, TGT1, l_TGT1_ATTR_PROC_FABRIC_PUMP_MODE));
+ fapi2::ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE_Type l_TGT0_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE;
+ FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE, TGT0, l_TGT0_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE));
fapi2::buffer<uint64_t> l_scom_buffer;
{
FAPI_TRY(fapi2::getScom( TGT0, 0x501180aull, l_scom_buffer ));
@@ -128,6 +130,21 @@ fapi2::ReturnCode p9_fbc_no_hp_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC_
constexpr auto l_PB_COM_PB_CFG_LCL_HW_MARK_CNT_42 = 0x2aaaa;
l_scom_buffer.insert<30, 6, 46, uint64_t>(l_PB_COM_PB_CFG_LCL_HW_MARK_CNT_42 );
+
+ if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) )
+ {
+ if ((l_TGT0_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE[literal_3] == fapi2::ENUM_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE_SMP))
+ {
+ constexpr auto l_PB_COM_PB_CFG_NP2_EN_OFF = 0x0;
+ l_scom_buffer.insert<49, 1, 61, uint64_t>(l_PB_COM_PB_CFG_NP2_EN_OFF );
+ }
+ else if ((l_TGT0_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE[literal_3] == fapi2::ENUM_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE_NV))
+ {
+ constexpr auto l_PB_COM_PB_CFG_NP2_EN_ON = 0x7;
+ l_scom_buffer.insert<49, 1, 61, uint64_t>(l_PB_COM_PB_CFG_NP2_EN_ON );
+ }
+ }
+
FAPI_TRY(fapi2::putScom(TGT0, 0x501180aull, l_scom_buffer));
}
{
@@ -168,6 +185,21 @@ fapi2::ReturnCode p9_fbc_no_hp_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC_
constexpr auto l_PB_COM_PB_CFG_LCL_HW_MARK_CNT_42 = 0x2aaaa;
l_scom_buffer.insert<30, 6, 52, uint64_t>(l_PB_COM_PB_CFG_LCL_HW_MARK_CNT_42 );
+
+ if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) )
+ {
+ if ((l_TGT0_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE[literal_3] == fapi2::ENUM_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE_SMP))
+ {
+ constexpr auto l_PB_COM_PB_CFG_NP2_EN_OFF = 0x0;
+ l_scom_buffer.insert<49, 1, 62, uint64_t>(l_PB_COM_PB_CFG_NP2_EN_OFF );
+ }
+ else if ((l_TGT0_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE[literal_3] == fapi2::ENUM_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE_NV))
+ {
+ constexpr auto l_PB_COM_PB_CFG_NP2_EN_ON = 0x7;
+ l_scom_buffer.insert<49, 1, 62, uint64_t>(l_PB_COM_PB_CFG_NP2_EN_ON );
+ }
+ }
+
FAPI_TRY(fapi2::putScom(TGT0, 0x5011c0aull, l_scom_buffer));
}
{
@@ -1710,6 +1742,21 @@ fapi2::ReturnCode p9_fbc_no_hp_scom(const fapi2::Target<fapi2::TARGET_TYPE_PROC_
constexpr auto l_PB_COM_PB_CFG_LCL_HW_MARK_CNT_42 = 0x2aaaa;
l_scom_buffer.insert<30, 6, 58, uint64_t>(l_PB_COM_PB_CFG_LCL_HW_MARK_CNT_42 );
+
+ if (((l_chip_id == 0x7) && (l_chip_ec == 0x10)) )
+ {
+ if ((l_TGT0_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE[literal_3] == fapi2::ENUM_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE_SMP))
+ {
+ constexpr auto l_PB_COM_PB_CFG_NP2_EN_OFF = 0x0;
+ l_scom_buffer.insert<49, 1, 63, uint64_t>(l_PB_COM_PB_CFG_NP2_EN_OFF );
+ }
+ else if ((l_TGT0_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE[literal_3] == fapi2::ENUM_ATTR_PROC_FABRIC_OPTICS_CONFIG_MODE_NV))
+ {
+ constexpr auto l_PB_COM_PB_CFG_NP2_EN_ON = 0x7;
+ l_scom_buffer.insert<49, 1, 63, uint64_t>(l_PB_COM_PB_CFG_NP2_EN_ON );
+ }
+ }
+
FAPI_TRY(fapi2::putScom(TGT0, 0x501200aull, l_scom_buffer));
}
OpenPOWER on IntegriCloud