diff options
author | Ben Gass <bgass@us.ibm.com> | 2019-10-07 18:03:22 -0400 |
---|---|---|
committer | Christian R Geddes <crgeddes@us.ibm.com> | 2019-10-15 17:12:50 -0500 |
commit | 98bf4ecbde2d327d0c7707cbe96654486bcfcc50 (patch) | |
tree | cb7d213e534297644181d0df8548fbb98eeb23fd /src/import/chips | |
parent | 9f92316f3b086c4a0fe85205114c6978477c65e5 (diff) | |
download | talos-hostboot-98bf4ecbde2d327d0c7707cbe96654486bcfcc50.tar.gz talos-hostboot-98bf4ecbde2d327d0c7707cbe96654486bcfcc50.zip |
Update OMI DS template support
- Allow DS template 1 to be turned off
- Leave DS template 0 only bit on if no other templates enabled
- Remove overly restrictive DS template checks
Change-Id: I7d5d02b949043d1cbae340c392ce587cd5bac26f
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/84969
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com>
Reviewed-by: Adam S Hale <adam.samuel.hale@ibm.com>
Dev-Ready: Benjamin Gass <bgass@us.ibm.com>
Reviewed-by: Thi N Tran <thi@us.ibm.com>
Reviewed-by: Jennifer A Stofer <stofer@us.ibm.com>
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/84973
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')
-rw-r--r-- | src/import/chips/p9/procedures/hwp/initfiles/p9a_omi_init_scom.C | 10 | ||||
-rw-r--r-- | src/import/chips/p9/procedures/hwp/memory/p9a_omi_init.C | 23 |
2 files changed, 17 insertions, 16 deletions
diff --git a/src/import/chips/p9/procedures/hwp/initfiles/p9a_omi_init_scom.C b/src/import/chips/p9/procedures/hwp/initfiles/p9a_omi_init_scom.C index 3801b25b9..68c8df463 100644 --- a/src/import/chips/p9/procedures/hwp/initfiles/p9a_omi_init_scom.C +++ b/src/import/chips/p9/procedures/hwp/initfiles/p9a_omi_init_scom.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2018 */ +/* Contributors Listed Below - COPYRIGHT 2018,2019 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -40,6 +40,8 @@ fapi2::ReturnCode p9a_omi_init_scom(const fapi2::Target<fapi2::TARGET_TYPE_MCC>& FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_PROC_ENABLE_DL_TMPL_7, TGT0, l_TGT0_ATTR_PROC_ENABLE_DL_TMPL_7)); fapi2::ATTR_PROC_ENABLE_DL_TMPL_4_Type l_TGT0_ATTR_PROC_ENABLE_DL_TMPL_4; FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_PROC_ENABLE_DL_TMPL_4, TGT0, l_TGT0_ATTR_PROC_ENABLE_DL_TMPL_4)); + fapi2::ATTR_PROC_ENABLE_DL_TMPL_1_Type l_TGT0_ATTR_PROC_ENABLE_DL_TMPL_1; + FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_PROC_ENABLE_DL_TMPL_1, TGT0, l_TGT0_ATTR_PROC_ENABLE_DL_TMPL_1)); fapi2::ATTR_PROC_TMPL_0_PACING_Type l_TGT0_ATTR_PROC_TMPL_0_PACING; FAPI_TRY(FAPI_ATTR_GET(fapi2::ATTR_PROC_TMPL_0_PACING, TGT0, l_TGT0_ATTR_PROC_TMPL_0_PACING)); fapi2::ATTR_PROC_TMPL_1_PACING_Type l_TGT0_ATTR_PROC_TMPL_1_PACING; @@ -64,6 +66,12 @@ fapi2::ReturnCode p9a_omi_init_scom(const fapi2::Target<fapi2::TARGET_TYPE_MCC>& l_scom_buffer.insert<6, 1, 63, uint64_t>(l_MCP_CHAN0_DSTL_DSTLCFG_TMPL4_DISABLE_ON ); } + if ((l_TGT0_ATTR_PROC_ENABLE_DL_TMPL_1 == fapi2::ENUM_ATTR_PROC_ENABLE_DL_TMPL_1_DISABLED)) + { + constexpr auto l_MCP_CHAN0_DSTL_DSTLCFG_TMPL1_DIS_ON = 0x1; + l_scom_buffer.insert<3, 1, 63, uint64_t>(l_MCP_CHAN0_DSTL_DSTLCFG_TMPL1_DIS_ON ); + } + FAPI_TRY(fapi2::putScom(TGT0, 0x701090bull, l_scom_buffer)); } { diff --git a/src/import/chips/p9/procedures/hwp/memory/p9a_omi_init.C b/src/import/chips/p9/procedures/hwp/memory/p9a_omi_init.C index b11696597..60d52d748 100644 --- a/src/import/chips/p9/procedures/hwp/memory/p9a_omi_init.C +++ b/src/import/chips/p9/procedures/hwp/memory/p9a_omi_init.C @@ -5,7 +5,7 @@ /* */ /* OpenPOWER HostBoot Project */ /* */ -/* Contributors Listed Below - COPYRIGHT 2018 */ +/* Contributors Listed Below - COPYRIGHT 2018,2019 */ /* [+] International Business Machines Corp. */ /* */ /* */ @@ -90,20 +90,13 @@ fapi2::ReturnCode p9a_omi_init_enable_templates(const fapi2::Target<fapi2::TARGE l_enable_tmpl_7), "Error from FAPI_ATTR_GET (ATTR_PROC_ENABLE_DL_TMPL_7)"); - FAPI_ASSERT(l_enable_tmpl_1 != 0, - fapi2::PROC_DOWNSTREAM_TMPL1_REQUIRED_ERR() - .set_TARGET(i_target), - "Downstream template 1 is required."); - - FAPI_ASSERT(l_enable_tmpl_4 != 0 || l_enable_tmpl_7 != 0, - fapi2::PROC_DOWNSTREAM_TMPL4OR7_REQUIRED_ERR() - .set_TARGET(i_target), - "Downstream template 4 and/or 7 is required."); - - //Turn off temp0_only - FAPI_TRY(getScom(i_target, P9A_MCC_DSTLCFG, l_data)); - l_data.clearBit<P9A_MCC_DSTLCFG_TMPL0_ONLY>(); - FAPI_TRY(putScom(i_target, P9A_MCC_DSTLCFG, l_data)); + if (l_enable_tmpl_1 || l_enable_tmpl_4 || l_enable_tmpl_7) + { + //Turn off temp0_only + FAPI_TRY(getScom(i_target, P9A_MCC_DSTLCFG, l_data)); + l_data.clearBit<P9A_MCC_DSTLCFG_TMPL0_ONLY>(); + FAPI_TRY(putScom(i_target, P9A_MCC_DSTLCFG, l_data)); + } fapi_try_exit: |