mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 02:50:49 +09:00
drm/amd/display: Exit idle optimizations before attempt to access PHY
[ Upstream commit de612738e9 ]
[Why & How]
DMUB may hang when powering down pixel clocks due to no dprefclk.
It is fixed by exiting idle optimization before the attempt to access PHY.
Reviewed-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Acked-by: Alex Hung <alex.hung@amd.com>
Signed-off-by: Leo Chen <sancchen@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
faa77cf5f2
commit
ae1cb9656e
@@ -1813,10 +1813,13 @@ void dce110_enable_accelerated_mode(struct dc *dc, struct dc_state *context)
|
|||||||
hws->funcs.edp_backlight_control(edp_link_with_sink, false);
|
hws->funcs.edp_backlight_control(edp_link_with_sink, false);
|
||||||
}
|
}
|
||||||
/*resume from S3, no vbios posting, no need to power down again*/
|
/*resume from S3, no vbios posting, no need to power down again*/
|
||||||
|
clk_mgr_exit_optimized_pwr_state(dc, dc->clk_mgr);
|
||||||
|
|
||||||
power_down_all_hw_blocks(dc);
|
power_down_all_hw_blocks(dc);
|
||||||
disable_vga_and_power_gate_all_controllers(dc);
|
disable_vga_and_power_gate_all_controllers(dc);
|
||||||
if (edp_link_with_sink && !keep_edp_vdd_on)
|
if (edp_link_with_sink && !keep_edp_vdd_on)
|
||||||
dc->hwss.edp_power_control(edp_link_with_sink, false);
|
dc->hwss.edp_power_control(edp_link_with_sink, false);
|
||||||
|
clk_mgr_optimize_pwr_state(dc, dc->clk_mgr);
|
||||||
}
|
}
|
||||||
bios_set_scratch_acc_mode_change(dc->ctx->dc_bios, 1);
|
bios_set_scratch_acc_mode_change(dc->ctx->dc_bios, 1);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user