platform: generic: allwinner: Clear the overflow generated during the deletion process

Signed-off-by: haijiao.liu <haijiao.liu@sophgo.com>
This commit is contained in:
haijiao.liu
2023-08-14 18:19:02 +08:00
committed by xingxg2022
parent a82a033c74
commit 44fdaafcb4
2 changed files with 12 additions and 0 deletions

View File

@@ -260,6 +260,15 @@ static void thead_c9xx_pmu_ctr_enable_irq(uint32_t ctr_idx)
static void thead_c9xx_pmu_ctr_disable_irq(uint32_t ctr_idx)
{
unsigned long mip_val;
if (ctr_idx >= SBI_PMU_HW_CTR_MAX)
return;
mip_val = csr_read(CSR_MIP);
if (mip_val & THEAD_C9XX_MIP_MOIP)
csr_clear(THEAD_C9XX_CSR_MCOUNTEROF, BIT(ctr_idx));
csr_clear(THEAD_C9XX_CSR_MCOUNTERWEN, BIT(ctr_idx));
csr_clear(THEAD_C9XX_CSR_MCOUNTERINTEN, BIT(ctr_idx));
}