diff options
author | Chris Steffen <cwsteffen@us.ibm.com> | 2016-05-12 13:33:51 -0500 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2016-05-18 18:14:27 -0400 |
commit | 291203a04d6ecfd3a603e5d51582ddaf23396efd (patch) | |
tree | 056e9547b19257514117e86a3f22763a959f7647 /src/import/chips/p9/procedures/hwp/initfiles | |
parent | a577c58abdd850bcf9884075e5225bdae2cce381 (diff) | |
download | talos-hostboot-291203a04d6ecfd3a603e5d51582ddaf23396efd.tar.gz talos-hostboot-291203a04d6ecfd3a603e5d51582ddaf23396efd.zip |
P9 Xbus System Model Fixes
Various Fixes to run on the system model
- Updated the initfiles to latest model
- Fixed Reset in scominit file
- Fixed 64-bit get/set scom error
- Added Longer hw linktraining delays
- Added more Debug Statements in the Dccal Procedure
- Updated wrappers to be common by passing in the target group
Change-Id: I695b4fc4c4abca259e37b89f631ce65b6212245d
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/24465
Tested-by: Jenkins Server
Tested-by: Hostboot CI
Reviewed-by: Gary A. Peterson <garyp@us.ibm.com>
Reviewed-by: Richard J. Knight <rjknight@us.ibm.com>
Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/24471
Tested-by: FSP CI Jenkins
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/import/chips/p9/procedures/hwp/initfiles')
-rw-r--r-- | src/import/chips/p9/procedures/hwp/initfiles/p9_xbus_g0_scom.C | 48 | ||||
-rw-r--r-- | src/import/chips/p9/procedures/hwp/initfiles/p9_xbus_g1_scom.C | 48 |
2 files changed, 96 insertions, 0 deletions
diff --git a/src/import/chips/p9/procedures/hwp/initfiles/p9_xbus_g0_scom.C b/src/import/chips/p9/procedures/hwp/initfiles/p9_xbus_g0_scom.C index 648e04652..22e971187 100644 --- a/src/import/chips/p9/procedures/hwp/initfiles/p9_xbus_g0_scom.C +++ b/src/import/chips/p9/procedures/hwp/initfiles/p9_xbus_g0_scom.C @@ -42,6 +42,8 @@ constexpr auto literal_0b00001 = 0b00001; constexpr auto literal_0b0010001 = 0b0010001; constexpr auto literal_0b0000000000000000 = 0b0000000000000000; constexpr auto literal_0b01111111 = 0b01111111; +constexpr auto literal_0b10 = 0b10; +constexpr auto literal_0b1100 = 0b1100; constexpr auto literal_0b00 = 0b00; constexpr auto literal_0b01 = 0b01; @@ -6458,6 +6460,52 @@ fapi2::ReturnCode p9_xbus_g0_scom(const fapi2::Target<fapi2::TARGET_TYPE_XBUS>& } } { + l_rc = fapi2::getScom( TGT0, 0x800ae80006010c3full, l_scom_buffer ); + + if (l_rc) + { + FAPI_ERR("ERROR executing: getScom (0x800ae80006010c3full)"); + break; + } + + { + l_scom_buffer.insert<uint64_t> (literal_0b10, 56, 2, 62 ); + } + + l_rc = fapi2::putScom(TGT0, 0x800ae80006010c3full, l_scom_buffer); + + if (l_rc) + { + FAPI_ERR("ERROR executing: putScom (0x800ae80006010c3full)"); + break; + } + } + { + l_rc = fapi2::getScom( TGT0, 0x800af80006010c3full, l_scom_buffer ); + + if (l_rc) + { + FAPI_ERR("ERROR executing: getScom (0x800af80006010c3full)"); + break; + } + + { + l_scom_buffer.insert<uint64_t> (literal_0b1100, 48, 4, 60 ); + } + + { + l_scom_buffer.insert<uint64_t> (literal_0b1100, 52, 4, 60 ); + } + + l_rc = fapi2::putScom(TGT0, 0x800af80006010c3full, l_scom_buffer); + + if (l_rc) + { + FAPI_ERR("ERROR executing: putScom (0x800af80006010c3full)"); + break; + } + } + { l_rc = fapi2::getScom( TGT0, 0x800b800006010c3full, l_scom_buffer ); if (l_rc) diff --git a/src/import/chips/p9/procedures/hwp/initfiles/p9_xbus_g1_scom.C b/src/import/chips/p9/procedures/hwp/initfiles/p9_xbus_g1_scom.C index 86bb587e6..ca0b2929c 100644 --- a/src/import/chips/p9/procedures/hwp/initfiles/p9_xbus_g1_scom.C +++ b/src/import/chips/p9/procedures/hwp/initfiles/p9_xbus_g1_scom.C @@ -43,6 +43,8 @@ constexpr auto literal_0b00001 = 0b00001; constexpr auto literal_0b0010001 = 0b0010001; constexpr auto literal_0b0000000000000000 = 0b0000000000000000; constexpr auto literal_0b01111111 = 0b01111111; +constexpr auto literal_0b10 = 0b10; +constexpr auto literal_0b1100 = 0b1100; constexpr auto literal_0b00 = 0b00; constexpr auto literal_0b01 = 0b01; @@ -6459,6 +6461,52 @@ fapi2::ReturnCode p9_xbus_g1_scom(const fapi2::Target<fapi2::TARGET_TYPE_XBUS>& } } { + l_rc = fapi2::getScom( TGT0, 0x800ae82006010c3full, l_scom_buffer ); + + if (l_rc) + { + FAPI_ERR("ERROR executing: getScom (0x800ae82006010c3full)"); + break; + } + + { + l_scom_buffer.insert<uint64_t> (literal_0b10, 56, 2, 62 ); + } + + l_rc = fapi2::putScom(TGT0, 0x800ae82006010c3full, l_scom_buffer); + + if (l_rc) + { + FAPI_ERR("ERROR executing: putScom (0x800ae82006010c3full)"); + break; + } + } + { + l_rc = fapi2::getScom( TGT0, 0x800af82006010c3full, l_scom_buffer ); + + if (l_rc) + { + FAPI_ERR("ERROR executing: getScom (0x800af82006010c3full)"); + break; + } + + { + l_scom_buffer.insert<uint64_t> (literal_0b1100, 48, 4, 60 ); + } + + { + l_scom_buffer.insert<uint64_t> (literal_0b1100, 52, 4, 60 ); + } + + l_rc = fapi2::putScom(TGT0, 0x800af82006010c3full, l_scom_buffer); + + if (l_rc) + { + FAPI_ERR("ERROR executing: putScom (0x800af82006010c3full)"); + break; + } + } + { l_rc = fapi2::getScom( TGT0, 0x800b802006010c3full, l_scom_buffer ); if (l_rc) |