mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2025-01-01 10:53:40 +08:00
drm/amd/display: Program cursor regs after context swapped.
Cursor is abnormal after pipe_ctx is changed in context. Cause: cursor attributes is programmed right after front end programming, but it use old pipe_ctx to program which is not updated yet. Solution: Program cursor regs after context swapped. Signed-off-by: Yongqiang Sun <yongqiang.sun@amd.com> Reviewed-by: Tony Cheng <Tony.Cheng@amd.com> Acked-by: Harry Wentland <harry.wentland@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
0c31a8218b
commit
457fbe76ec
@ -1992,22 +1992,9 @@ static void dcn10_apply_ctx_for_surface(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (num_planes > 0) {
|
if (num_planes > 0)
|
||||||
program_all_pipe_in_tree(dc, top_pipe_to_program, context);
|
program_all_pipe_in_tree(dc, top_pipe_to_program, context);
|
||||||
|
|
||||||
/* TODO: this is a hack w/a for switching from mpo to pipe split */
|
|
||||||
if (stream->cursor_attributes.address.quad_part != 0) {
|
|
||||||
struct dc_cursor_position position = { 0 };
|
|
||||||
|
|
||||||
dc_stream_set_cursor_position(
|
|
||||||
(struct dc_stream_state *)stream,
|
|
||||||
&position);
|
|
||||||
dc_stream_set_cursor_attributes(
|
|
||||||
(struct dc_stream_state *)stream,
|
|
||||||
&stream->cursor_attributes);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
tg->funcs->unlock(tg);
|
tg->funcs->unlock(tg);
|
||||||
|
|
||||||
if (num_planes == 0)
|
if (num_planes == 0)
|
||||||
|
Loading…
Reference in New Issue
Block a user