diff options
| author | Yue Du <daviddu@us.ibm.com> | 2018-09-13 22:17:01 -0500 |
|---|---|---|
| committer | hostboot <hostboot@us.ibm.com> | 2018-09-22 10:33:59 -0500 |
| commit | d1bfc67460df03843587ecb0a0b2369398c3559e (patch) | |
| tree | 179061c4c338592c30f201fee808963cb6028ef7 /import/chips/p9 | |
| parent | 9d245f2518e4849b7dbf1f6cb5ba934864878e3e (diff) | |
| download | talos-hcode-d1bfc67460df03843587ecb0a0b2369398c3559e.tar.gz talos-hcode-d1bfc67460df03843587ecb0a0b2369398c3559e.zip | |
STOP: Disable cache inject and LCO before purge L3
- Updated the same HCODE changes in update_ec_eq HWP
Key_Cronus_Test=PM_REGRESS
Change-Id: I22f8b746f118ceeafac1b0c36b4b57cc59bbec3c
CQ: SW443614
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/66113
Reviewed-by: RANGANATHPRASAD G. BRAHMASAMUDRA <prasadbgr@in.ibm.com>
Reviewed-by: Gregory S. Still <stillgs@us.ibm.com>
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com>
Tested-by: Cronus HW CI <cronushw-ci+hostboot@us.ibm.com>
Reviewed-by: Jennifer A. Stofer <stofer@us.ibm.com>
Diffstat (limited to 'import/chips/p9')
| -rw-r--r-- | import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_hcd_cache_scomcust.c | 8 | ||||
| -rw-r--r-- | import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_sgpe_stop_entry.c | 12 |
2 files changed, 13 insertions, 7 deletions
diff --git a/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_hcd_cache_scomcust.c b/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_hcd_cache_scomcust.c index a69f561e..a72dd542 100644 --- a/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_hcd_cache_scomcust.c +++ b/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_hcd_cache_scomcust.c @@ -160,7 +160,9 @@ p9_hcd_cache_scomcust(uint32_t quad, uint32_t m_ex, int is_stop8) GPE_GETSCOM(GPE_SCOM_ADDR_EX(EX_DRAM_REF_REG, quad, 0), scom_data.value); scom_data.words.upper &= ~BIT32(7); GPE_PUTSCOM(GPE_SCOM_ADDR_EX(EX_DRAM_REF_REG, quad, 0), scom_data.value); - GPE_PUTSCOM(GPE_SCOM_ADDR_EX(EX_PM_LCO_DIS_REG, quad, 0), 0); + GPE_GETSCOM(GPE_SCOM_ADDR_EX(EX_L3_MODE_REG1, quad, 0), scom_data.value); + scom_data.words.upper &= ~BIT32(22); + GPE_PUTSCOM(GPE_SCOM_ADDR_EX(EX_L3_MODE_REG1, quad, 0), scom_data.value); } if (m_ex & SND_EX_IN_QUAD) @@ -168,7 +170,9 @@ p9_hcd_cache_scomcust(uint32_t quad, uint32_t m_ex, int is_stop8) GPE_GETSCOM(GPE_SCOM_ADDR_EX(EX_DRAM_REF_REG, quad, 1), scom_data.value); scom_data.words.upper &= ~BIT32(7); GPE_PUTSCOM(GPE_SCOM_ADDR_EX(EX_DRAM_REF_REG, quad, 1), scom_data.value); - GPE_PUTSCOM(GPE_SCOM_ADDR_EX(EX_PM_LCO_DIS_REG, quad, 1), 0); + GPE_GETSCOM(GPE_SCOM_ADDR_EX(EX_L3_MODE_REG1, quad, 1), scom_data.value); + scom_data.words.upper &= ~BIT32(22); + GPE_PUTSCOM(GPE_SCOM_ADDR_EX(EX_L3_MODE_REG1, quad, 1), scom_data.value); } PK_TRACE("Drop chiplet fence via NET_CTRL0[18]"); diff --git a/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_sgpe_stop_entry.c b/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_sgpe_stop_entry.c index 8b557655..ee600bde 100644 --- a/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_sgpe_stop_entry.c +++ b/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_sgpe_stop_entry.c @@ -772,18 +772,20 @@ p9_sgpe_stop_entry() MARK_TAG(SE_PURGE_L3, (32 >> qloop)) //================================== - PK_TRACE("Drop LCO prior to purge via EX_PM_LCO_DIS_REG[0]"); + PK_TRACE("Drop LCO and Cache Inject prior to purge via EX_L3_MODE_REG1[22]"); if(ex & FST_EX_IN_QUAD) { - GPE_PUTSCOM(GPE_SCOM_ADDR_EX(EX_PM_LCO_DIS_REG, qloop, 0), - BIT64(0)); + GPE_GETSCOM(GPE_SCOM_ADDR_EX(EX_L3_MODE_REG1, qloop, 0), scom_data.value); + scom_data.words.upper |= BIT32(22); + GPE_PUTSCOM(GPE_SCOM_ADDR_EX(EX_L3_MODE_REG1, qloop, 0), scom_data.value); } if(ex & SND_EX_IN_QUAD) { - GPE_PUTSCOM(GPE_SCOM_ADDR_EX(EX_PM_LCO_DIS_REG, qloop, 1), - BIT64(0)); + GPE_GETSCOM(GPE_SCOM_ADDR_EX(EX_L3_MODE_REG1, qloop, 1), scom_data.value); + scom_data.words.upper |= BIT32(22); + GPE_PUTSCOM(GPE_SCOM_ADDR_EX(EX_L3_MODE_REG1, qloop, 1), scom_data.value); } #if !SKIP_L3_PURGE |

