diff options
| -rw-r--r-- | import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_hcd_cache_scominit.c | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_hcd_cache_scominit.c b/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_hcd_cache_scominit.c index de0bf642..9223019f 100644 --- a/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_hcd_cache_scominit.c +++ b/import/chips/p9/procedures/ppe_closed/sgpe/stop_gpe/p9_hcd_cache_scominit.c @@ -168,6 +168,10 @@ p9_hcd_cache_scominit(uint32_t quad, uint32_t m_ex, int is_stop8) // p9_ncu_scom: EX_NCU_MODE_REG // EXP.NC.NCMISC.NCSCOMS.SYSMAP_SM_NOT_LG_SEL + // EXP.NC.NCMISC.NCSCOMS.TLBIE_PACING_CNT_EN + // EXP.NC.NCMISC.NCSCOMS.TLBIE_DEC_RATE 0x4 + // EXP.NC.NCMISC.NCSCOMS.TLBIE_INC_RATE 0x3 + // EXP.NC.NCMISC.NCSCOMS.TLBIE_CNT_THRESH 0x4 // EXP.NC.NCMISC.NCSCOMS.SKIP_GRP_SCOPE_EN // EXP.NC.NCMISC.NCSCOMS.SYSMAP_PB_CHIP_ADDR_EXT_MASK_EN @@ -182,7 +186,14 @@ p9_hcd_cache_scominit(uint32_t quad, uint32_t m_ex, int is_stop8) #if NIMBUS_DD_LEVEL != 10 - scom_data.words.lower |= BIT64SH(51); + scom_data.words.upper &= ~(BITS32(11, 21)); + scom_data.words.upper |= BIT32(10); + scom_data.words.upper |= BIT32(16); + scom_data.words.upper |= BITS32(25, 2); + + scom_data.words.lower &= ~(BITS64SH(32, 3)); + scom_data.words.lower |= BIT64SH(32); + scom_data.words.lower |= BIT64SH(51); if (attr_proc_fabric_pump_mode_chip_is_node) { @@ -210,6 +221,7 @@ p9_hcd_cache_scominit(uint32_t quad, uint32_t m_ex, int is_stop8) // EXP.NC.NCMISC.NCSCOMS.TLBIE_STALL_THRESHOLD // EXP.NC.NCMISC.NCSCOMS.TLBIE_STALL_CMPLT_CNT // EXP.NC.NCMISC.NCSCOMS.TLBIE_STALL_DELAY_CNT + // EXP.NC.NCMISC.NCSCOMS.TLBIE_PACING_MST_DLY_EN GPE_GETSCOM(GPE_SCOM_ADDR_EX(EX_NCU_MODE_REG3, quad, ex_index), scom_data.value); @@ -217,6 +229,12 @@ p9_hcd_cache_scominit(uint32_t quad, uint32_t m_ex, int is_stop8) scom_data.words.upper &= ~BITS32(0, 16); scom_data.words.upper |= (BITS32(0, 3) | BIT32(5) | BITS32(12, 4)); +#if NIMBUS_DD_LEVEL != 10 + + scom_data.words.upper |= BIT32(16); + +#endif + GPE_PUTSCOM(GPE_SCOM_ADDR_EX(EX_NCU_MODE_REG3, quad, ex_index), scom_data.value); } |

