aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/drivers/gpu/drm/amd/amdgpu
diff options
context:
space:
mode:
authorSamson Tam <Samson.Tam@amd.com>2019-11-28 15:55:01 -0500
committerAlex Deucher <alexander.deucher@amd.com>2019-12-18 16:09:10 -0500
commit89d07b662f5e2d74c439f9a7cbefa41b3e76d745 (patch)
treec38d3322092ca6e419e8abb47fc1c998b46db55d /drivers/gpu/drm/amd/amdgpu
parentdrm/amd/display: Get cache window sizes from DMCUB firmware (diff)
downloadwireguard-linux-89d07b662f5e2d74c439f9a7cbefa41b3e76d745.tar.xz
wireguard-linux-89d07b662f5e2d74c439f9a7cbefa41b3e76d745.zip
drm/amd/display: fix 270 degree rotation for mixed-SLS mode
[Why] When we rotate 270 in mixed SLS mode, the recouts occupy the right side of the display. So all the recout_skip_v values are relative to the left side of the display. This causes adjust_vp_and_init_for_seamless_clip() to incorrectly increase the data->viewport.height for that recout. The rotation looks like the bottom half is duplicated twice. [How] recout.x values are being adjusted based on stream->timing.h_border_left. Instead of using h_border_left, use dst.x to represent the border. Shift dst.x by the amount of stream->timing.h_border_left and set stream->timing.h_border_left to 0. Do all the calculations and then revert stream->timing.h_border_left and stream->dst.x back to their original values. When calculating pipe_ctx->plane_res.scl_data.h_active, make sure to use the original stream->timing.h_border_left value. Signed-off-by: Samson Tam <Samson.Tam@amd.com> Reviewed-by: Jun Lei <Jun.Lei@amd.com> Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu')
0 files changed, 0 insertions, 0 deletions