summaryrefslogtreecommitdiffstats
path: root/src/import/chips/p9/procedures/hwp/perv
diff options
context:
space:
mode:
authorAnusha Reddy Rangareddygari <anusrang@in.ibm.com>2017-06-07 08:43:47 -0400
committerSachin Gupta <sgupta2m@in.ibm.com>2017-07-12 01:03:17 -0400
commit2284b94f8f45638c3f0380a1405176098cd997b0 (patch)
tree81ec19785b08a1198b8f374553205d72f8ebe1a3 /src/import/chips/p9/procedures/hwp/perv
parent5176cb7fda7020cf6a3b5064cba34b3f72a45536 (diff)
downloadtalos-sbe-2284b94f8f45638c3f0380a1405176098cd997b0.tar.gz
talos-sbe-2284b94f8f45638c3f0380a1405176098cd997b0.zip
dcc skew adjust procedure update
new attributes to support disabling of dccadj and skewadj functionality Change-Id: I4f23b8800a87a3d0d9ce0a0fadfa99e2de03d3f6 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/41470 Tested-by: Jenkins Server <pfd-jenkins+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: YUE DU <daviddu@us.ibm.com> Reviewed-by: SRINIVAS V. POLISETTY <srinivan@in.ibm.com> Reviewed-by: PARVATHI RACHAKONDA <prachako@in.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/41472 Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Sachin Gupta <sgupta2m@in.ibm.com>
Diffstat (limited to 'src/import/chips/p9/procedures/hwp/perv')
-rw-r--r--src/import/chips/p9/procedures/hwp/perv/p9_hcd_cache_dcc_skewadjust_setup.C477
1 files changed, 248 insertions, 229 deletions
diff --git a/src/import/chips/p9/procedures/hwp/perv/p9_hcd_cache_dcc_skewadjust_setup.C b/src/import/chips/p9/procedures/hwp/perv/p9_hcd_cache_dcc_skewadjust_setup.C
index 748f3c30..c2a06cf5 100644
--- a/src/import/chips/p9/procedures/hwp/perv/p9_hcd_cache_dcc_skewadjust_setup.C
+++ b/src/import/chips/p9/procedures/hwp/perv/p9_hcd_cache_dcc_skewadjust_setup.C
@@ -49,251 +49,270 @@ fapi2::ReturnCode p9_hcd_cache_dcc_skewadjust_setup(const
fapi2::Target<fapi2::TARGET_TYPE_PROC_CHIP> l_chip = i_cache.getParent<fapi2::TARGET_TYPE_PROC_CHIP>();
fapi2::Target<fapi2::TARGET_TYPE_PERV> l_perv = i_cache.getParent<fapi2::TARGET_TYPE_PERV>();
auto l_core_functional_vector = i_cache.getChildren<fapi2::TARGET_TYPE_CORE>(fapi2::TARGET_STATE_FUNCTIONAL);
+ fapi2::Target<fapi2::TARGET_TYPE_SYSTEM> l_sys;
uint8_t l_attr_chip_unit_pos = 0;
fapi2::buffer<uint64_t> l_data64;
- fapi2::buffer<uint8_t> l_attr_dcadj_skewadjust_p9dd1_init;
+ fapi2::buffer<uint8_t> l_attr_dcadj_p9dd1_init;
+ fapi2::buffer<uint8_t> l_attr_skewadj_p9dd1_init;
+ fapi2::buffer<uint8_t> l_attr_dcadj_disable;
+ fapi2::buffer<uint8_t> l_attr_skewadj_disable;
+ FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_SYSTEM_CORECACHE_SKEWADJ_DISABLE,
+ l_sys, l_attr_dcadj_disable));
- FAPI_DBG("Entering ...");
-
- FAPI_DBG("Release Skew Adjust Reset");
- l_data64.flush<1>().clearBit<2>();
- FAPI_TRY(fapi2::putScom(l_perv, PERV_NET_CTRL0_WAND, l_data64));
-
- FAPI_DBG("Release L2-0, L2-1 DC Adjust reset");
- l_data64.flush<1>();
- l_data64.clearBit<23>();
- l_data64.clearBit<24>();
- FAPI_TRY(fapi2::putScom(l_perv, PERV_NET_CTRL1_WAND, l_data64));
-
- for(auto& it : l_core_functional_vector)
- {
- FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_UNIT_POS,
- it.getParent<fapi2::TARGET_TYPE_PERV>(),
- l_attr_chip_unit_pos));
-
- FAPI_DBG("Release CORE DC Adjust reset");
- l_data64.flush<1>();
- l_data64.clearBit<2>();
- FAPI_TRY(fapi2::putScom(l_chip, (C_NET_CTRL0_WAND + (0x1000000 * (l_attr_chip_unit_pos - 0x20))) ,
- l_data64));
- }
-
- FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_EC_FEATURE_DCADJ_P9NDD1_INIT,
- l_chip, l_attr_dcadj_skewadjust_p9dd1_init));
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_0 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_0, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_0)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_1 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_1, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_1)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_2 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_2, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_2)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_3 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_3, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_3)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_4 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_4, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_4)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_5 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_5, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_5)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_6 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_6, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_6)");
+ FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_SYSTEM_CORECACHE_DCADJ_DISABLE,
+ l_sys, l_attr_skewadj_disable));
- FAPI_DBG("Scan eq_ana_bndy_bucket_7 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_7, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_7)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_8 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_8, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_8)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_9 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_9, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_9)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_10 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_10, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_10)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_11 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_11, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_11)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_12 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_12, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_12)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_13 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_13, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_13)");
-
- if( l_attr_dcadj_skewadjust_p9dd1_init )
- {
- FAPI_DBG("Release DCC bypass");
- l_data64.flush<1>();
- l_data64.clearBit<1>();
- FAPI_TRY(fapi2::putScom(l_perv, PERV_NET_CTRL1_WAND, l_data64));
- }
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_14 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_14, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_14)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_15 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_15, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_15)");
+ FAPI_DBG("Entering ...");
- if(! l_attr_dcadj_skewadjust_p9dd1_init ) //DD2 bucket_16, 17 -- dcadso
+ if (! l_attr_dcadj_disable) // When dcadj is enabled, execute the if part
{
- FAPI_DBG("Release DCC bypass");
+ FAPI_DBG("Release L2-0, L2-1 DC Adjust reset");
l_data64.flush<1>();
- l_data64.clearBit<1>();
+ l_data64.clearBit<23>();
+ l_data64.clearBit<24>();
FAPI_TRY(fapi2::putScom(l_perv, PERV_NET_CTRL1_WAND, l_data64));
- FAPI_DBG("Scan eq_ana_bndy_bucket_16 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_16, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_16)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_17 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_17, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_17)");
- }
- else //DD1 bucket_16, 17 -- skewadjust
- {
- FAPI_DBG("Scan eq_ana_bndy_bucket_16 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_16, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_16)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_17 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_17, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_17)");
- }
-
- FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_EC_FEATURE_SKEWADJ_P9NDD1_INIT,
- l_chip, l_attr_dcadj_skewadjust_p9dd1_init));
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_18 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_18, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_18)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_19 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_19, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_19)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_20 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_20, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_20)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_21 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_21, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_21)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_22 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_22, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_22)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_23 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_23, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_23)");
-
- if (l_attr_dcadj_skewadjust_p9dd1_init) //DD1
- {
- FAPI_DBG("Release Progdly bypass");
- l_data64.flush<1>();
- l_data64.clearBit<2>();
- FAPI_TRY(fapi2::putScom(l_perv, PERV_NET_CTRL1_WAND, l_data64));
+ for(auto& it : l_core_functional_vector)
+ {
+ FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_UNIT_POS,
+ it.getParent<fapi2::TARGET_TYPE_PERV>(),
+ l_attr_chip_unit_pos));
+
+ FAPI_DBG("Release CORE DC Adjust reset");
+ l_data64.flush<1>();
+ l_data64.clearBit<2>();
+ FAPI_TRY(fapi2::putScom(l_chip, (C_NET_CTRL0_WAND + (0x1000000 * (l_attr_chip_unit_pos - 0x20))) ,
+ l_data64));
+ }
+
+ FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_EC_FEATURE_DCADJ_P9NDD1_INIT,
+ l_chip, l_attr_dcadj_p9dd1_init));
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_0 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_0, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_0)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_1 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_1, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_1)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_2 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_2, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_2)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_3 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_3, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_3)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_4 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_4, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_4)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_5 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_5, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_5)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_6 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_6, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_6)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_7 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_7, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_7)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_8 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_8, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_8)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_9 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_9, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_9)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_10 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_10, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_10)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_11 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_11, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_11)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_12 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_12, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_12)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_13 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_13, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_13)");
+
+ if( l_attr_dcadj_p9dd1_init )
+ {
+ FAPI_DBG("Release DCC bypass");
+ l_data64.flush<1>();
+ l_data64.clearBit<1>();
+ FAPI_TRY(fapi2::putScom(l_perv, PERV_NET_CTRL1_WAND, l_data64));
+ }
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_14 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_14, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_14)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_15 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_15, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_15)");
+
+ if(! l_attr_dcadj_p9dd1_init ) //DD2 bucket_16, 17 -- dcadso
+ {
+
+ FAPI_DBG("Release DCC bypass");
+ l_data64.flush<1>();
+ l_data64.clearBit<1>();
+ FAPI_TRY(fapi2::putScom(l_perv, PERV_NET_CTRL1_WAND, l_data64));
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_16 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_16, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_16)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_17 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_17, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_17)");
+ }
}
- FAPI_DBG("Scan eq_ana_bndy_bucket_24 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_24, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_24)");
- FAPI_DBG("Scan eq_ana_bndy_bucket_25 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_25, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_25)");
-
- if (! l_attr_dcadj_skewadjust_p9dd1_init)
+ if (! l_attr_skewadj_disable) // when skewadj is enabled, execute the if part
{
- FAPI_DBG("Scan eq_ana_bndy_bucket_26 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_26, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_26)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_27 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_27, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_27)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_28 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_28, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_28)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_29 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_29, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_29)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_30 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_30, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_30)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_31 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_31, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_31)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_32 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_32, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_32)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_33 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_33, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_33)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_34 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_34, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_34)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_35 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_35, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_35)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_36 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_36, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_36)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_37 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_37, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_37)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_38 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_38, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_38)");
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_39 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_39, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_39)");
-
- FAPI_DBG("Release Progdly bypass");
- l_data64.flush<1>();
- l_data64.clearBit<2>();
- FAPI_TRY(fapi2::putScom(l_perv, PERV_NET_CTRL1_WAND, l_data64));
-
- FAPI_DBG("Scan eq_ana_bndy_bucket_40 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_40, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_40)");
- FAPI_DBG("Scan eq_ana_bndy_bucket_41 ring");
- FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_41, fapi2::RING_MODE_SET_PULSE_NSL),
- "Error from putRing (eq_ana_bndy_bucket_41)");
+ FAPI_DBG("Release Skew Adjust Reset");
+ l_data64.flush<1>().clearBit<2>();
+ FAPI_TRY(fapi2::putScom(l_perv, PERV_NET_CTRL0_WAND, l_data64));
+
+ FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_CHIP_EC_FEATURE_SKEWADJ_P9NDD1_INIT,
+ l_chip, l_attr_skewadj_p9dd1_init));
+
+ if( l_attr_skewadj_p9dd1_init ) //DD1 bucket_16, 17 -- skewadjust
+ {
+ FAPI_DBG("Scan eq_ana_bndy_bucket_16 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_16, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_16)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_17 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_17, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_17)");
+ }
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_18 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_18, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_18)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_19 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_19, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_19)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_20 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_20, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_20)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_21 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_21, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_21)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_22 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_22, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_22)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_23 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_23, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_23)");
+
+ if (l_attr_skewadj_p9dd1_init) //DD1
+ {
+ FAPI_DBG("Release Progdly bypass");
+ l_data64.flush<1>();
+ l_data64.clearBit<2>();
+ FAPI_TRY(fapi2::putScom(l_perv, PERV_NET_CTRL1_WAND, l_data64));
+ }
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_24 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_24, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_24)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_25 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_25, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_25)");
+
+ if (! l_attr_skewadj_p9dd1_init) //DD2
+ {
+ FAPI_DBG("Scan eq_ana_bndy_bucket_26 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_26, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_26)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_27 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_27, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_27)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_28 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_28, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_28)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_29 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_29, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_29)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_30 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_30, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_30)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_31 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_31, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_31)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_32 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_32, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_32)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_33 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_33, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_33)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_34 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_34, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_34)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_35 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_35, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_35)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_36 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_36, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_36)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_37 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_37, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_37)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_38 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_38, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_38)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_39 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_39, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_39)");
+
+ FAPI_DBG("Release Progdly bypass");
+ l_data64.flush<1>();
+ l_data64.clearBit<2>();
+ FAPI_TRY(fapi2::putScom(l_perv, PERV_NET_CTRL1_WAND, l_data64));
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_40 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_40, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_40)");
+
+ FAPI_DBG("Scan eq_ana_bndy_bucket_41 ring");
+ FAPI_TRY(fapi2::putRing(i_cache, eq_ana_bndy_bucket_41, fapi2::RING_MODE_SET_PULSE_NSL),
+ "Error from putRing (eq_ana_bndy_bucket_41)");
+ }
}
FAPI_DBG("Exiting ...");
OpenPOWER on IntegriCloud