diff --git a/msm/dsi/dsi_ctrl_hw_cmn.c b/msm/dsi/dsi_ctrl_hw_cmn.c index a0afc9b7..5fcaed1b 100644 --- a/msm/dsi/dsi_ctrl_hw_cmn.c +++ b/msm/dsi/dsi_ctrl_hw_cmn.c @@ -1170,11 +1170,12 @@ void dsi_ctrl_hw_cmn_clear_interrupt_status(struct dsi_ctrl_hw *ctrl, u32 ints) reg |= BIT(30); /* - * Do not clear error status. - * It will be cleared as part of - * error handler function. + * Do not clear error status. It will be cleared as part of error handler function. + * Do not clear dynamic refresh done status. It will be cleared as part of + * wait4dynamic_refresh_done() function. */ - reg &= ~BIT(24); + reg &= ~(BIT(24) | BIT(28)); + DSI_W32(ctrl, DSI_INT_CTRL, reg); DSI_CTRL_HW_DBG(ctrl, "Clear interrupts, ints = 0x%x, INT_CTRL=0x%x\n", diff --git a/msm/dsi/dsi_pll_4nm.c b/msm/dsi/dsi_pll_4nm.c index 80a94f2b..22155892 100644 --- a/msm/dsi/dsi_pll_4nm.c +++ b/msm/dsi/dsi_pll_4nm.c @@ -1481,7 +1481,8 @@ int dsi_pll_4nm_configure(void *pll, bool commit) if (rsc->slave) dsi_pll_enable_pll_bias(rsc->slave); - dsi_pll_init_val(rsc); + if (commit) + dsi_pll_init_val(rsc); rc = dsi_pll_4nm_set_byteclk_div(rsc, commit);