mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-04 00:15:49 -04:00
drm/amd/display: DCN401 cusor code update
Scaling and rotation changes for cursor. Reviewed-by: Ariel Bernstein <eric.bernstein@amd.com> Reviewed-by: Nevenko Stupar <nevenko.stupar@amd.com> Acked-by: Zaeem Mohamed <zaeem.mohamed@amd.com> Signed-off-by: Sridevi Arvindekar <sarvinde@amd.com> Tested-by: Daniel Wheeler <daniel.wheeler@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
committed by
Alex Deucher
parent
3df528be2a
commit
ed79ab5a07
@@ -1124,14 +1124,10 @@ void dcn401_set_cursor_position(struct pipe_ctx *pipe_ctx)
|
||||
* pipe to make sure each pipe enabling cursor on its part of the
|
||||
* screen.
|
||||
*/
|
||||
|
||||
if (param.rotation == ROTATION_ANGLE_90 || param.rotation == ROTATION_ANGLE_270) {
|
||||
} else {
|
||||
x_pos = pipe_ctx->stream->dst.x + x_pos * pipe_ctx->stream->dst.width /
|
||||
pipe_ctx->stream->src.width;
|
||||
y_pos = pipe_ctx->stream->dst.y + y_pos * pipe_ctx->stream->dst.height /
|
||||
pipe_ctx->stream->src.height;
|
||||
}
|
||||
x_pos = pipe_ctx->stream->dst.x + x_pos * pipe_ctx->stream->dst.width /
|
||||
pipe_ctx->stream->src.width;
|
||||
y_pos = pipe_ctx->stream->dst.y + y_pos * pipe_ctx->stream->dst.height /
|
||||
pipe_ctx->stream->src.height;
|
||||
|
||||
/**
|
||||
* If the cursor's source viewport is clipped then we need to
|
||||
@@ -1297,18 +1293,10 @@ void dcn401_set_cursor_position(struct pipe_ctx *pipe_ctx)
|
||||
pos_cpy.x = temp_x + recout_width;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Display groups that are 1xnY, have pos_cpy.y > recout.height
|
||||
* Calculation:
|
||||
* delta_from_bottom = recout.y + recout.height - pos_cpy.y
|
||||
* pos_cpy.y_new = recout.y + delta_from_bottom
|
||||
* Simplify it as:
|
||||
* pos_cpy.y = recout.y * 2 + recout.height - pos_cpy.y
|
||||
*/
|
||||
}
|
||||
|
||||
hubp->funcs->set_cursor_position(hubp, &pos_cpy, ¶m);
|
||||
|
||||
Reference in New Issue
Block a user