mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-11-14 10:15:13 +00:00
drm/amd/display: add pipe lock during stream update
[why] Stream update will adjust both info packets and stream params, need to make sure all things are applied togather. [how] add pipe lock during stream update Signed-off-by: Wenjing Liu <Wenjing.Liu@amd.com> Reviewed-by: Jun Lei <Jun.Lei@amd.com> Acked-by: Leo Li <sunpeng.li@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
3af91bb150
commit
e6bddf6c67
1 changed files with 2 additions and 0 deletions
|
|
@ -1672,6 +1672,7 @@ static void commit_planes_do_stream_update(struct dc *dc,
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (stream_update->dpms_off) {
|
if (stream_update->dpms_off) {
|
||||||
|
dc->hwss.pipe_control_lock(dc, pipe_ctx, true);
|
||||||
if (*stream_update->dpms_off) {
|
if (*stream_update->dpms_off) {
|
||||||
core_link_disable_stream(pipe_ctx, KEEP_ACQUIRED_RESOURCE);
|
core_link_disable_stream(pipe_ctx, KEEP_ACQUIRED_RESOURCE);
|
||||||
dc->hwss.optimize_bandwidth(dc, dc->current_state);
|
dc->hwss.optimize_bandwidth(dc, dc->current_state);
|
||||||
|
|
@ -1679,6 +1680,7 @@ static void commit_planes_do_stream_update(struct dc *dc,
|
||||||
dc->hwss.prepare_bandwidth(dc, dc->current_state);
|
dc->hwss.prepare_bandwidth(dc, dc->current_state);
|
||||||
core_link_enable_stream(dc->current_state, pipe_ctx);
|
core_link_enable_stream(dc->current_state, pipe_ctx);
|
||||||
}
|
}
|
||||||
|
dc->hwss.pipe_control_lock(dc, pipe_ctx, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (stream_update->abm_level && pipe_ctx->stream_res.abm) {
|
if (stream_update->abm_level && pipe_ctx->stream_res.abm) {
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue