mirror of
https://github.com/torvalds/linux
synced 2024-09-06 18:01:05 +00:00
drm/amd/display: always program DPPDTO unless not safe to lower
[Why] We defer clock updates to after pipes have been programmed. In some instances we use DPPCLK that have been previously set to be "unused". This results in a brief window of time where underflow could occur. [How] During prepare bandwidth allow rn_update_clocks_update_dpp_dto to check each instance and compare previous clock to new clock. If new clock is higher than previous clock, program DPPDTO. Signed-off-by: Jake Wang <haonan.wang2@amd.com> Acked-by: Bindu Ramamurthy <bindu.r@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
c277925cca
commit
4aa9d658d2
|
@ -227,12 +227,11 @@ void rn_update_clocks(struct clk_mgr *clk_mgr_base,
|
|||
rn_vbios_smu_set_dppclk(clk_mgr, clk_mgr_base->clks.dppclk_khz);
|
||||
|
||||
// always update dtos unless clock is lowered and not safe to lower
|
||||
if (new_clocks->dppclk_khz >= dc->current_state->bw_ctx.bw.dcn.clk.dppclk_khz)
|
||||
rn_update_clocks_update_dpp_dto(
|
||||
clk_mgr,
|
||||
context,
|
||||
clk_mgr_base->clks.actual_dppclk_khz,
|
||||
safe_to_lower);
|
||||
rn_update_clocks_update_dpp_dto(
|
||||
clk_mgr,
|
||||
context,
|
||||
clk_mgr_base->clks.actual_dppclk_khz,
|
||||
safe_to_lower);
|
||||
}
|
||||
|
||||
if (update_dispclk &&
|
||||
|
|
Loading…
Reference in a new issue