mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-17 16:16:42 +07:00
drm/i915: Move the NULL sg handling out from rotate_pages()
rotate_pages() checks to see if it got called with a NULL sg, and then goes to extract it from sg->sgl. It always gets called with a NULL sg for the first plane, so moving the initial 'sg=st->sgl' assignment out into intel_rotate_fb_obj_pages() seems less special-casey. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Link: http://patchwork.freedesktop.org/patch/msgid/1455569699-27905-9-git-send-email-ville.syrjala@linux.intel.com
This commit is contained in:
parent
1663b9d6a2
commit
11f20322e0
@ -3377,11 +3377,6 @@ rotate_pages(const dma_addr_t *in, unsigned int offset,
|
||||
unsigned int column, row;
|
||||
unsigned int src_idx;
|
||||
|
||||
if (!sg) {
|
||||
st->nents = 0;
|
||||
sg = st->sgl;
|
||||
}
|
||||
|
||||
for (column = 0; column < width; column++) {
|
||||
src_idx = stride * (height - 1) + column;
|
||||
for (row = 0; row < height; row++) {
|
||||
@ -3443,11 +3438,14 @@ intel_rotate_fb_obj_pages(struct intel_rotation_info *rot_info,
|
||||
i++;
|
||||
}
|
||||
|
||||
st->nents = 0;
|
||||
sg = st->sgl;
|
||||
|
||||
/* Rotate the pages. */
|
||||
sg = rotate_pages(page_addr_list, 0,
|
||||
rot_info->plane[0].width, rot_info->plane[0].height,
|
||||
rot_info->plane[0].width,
|
||||
st, NULL);
|
||||
st, sg);
|
||||
|
||||
/* Append the UV plane if NV12. */
|
||||
if (rot_info->pixel_format == DRM_FORMAT_NV12) {
|
||||
@ -3459,7 +3457,7 @@ intel_rotate_fb_obj_pages(struct intel_rotation_info *rot_info,
|
||||
|
||||
rot_info->uv_start_page = uv_start_page;
|
||||
|
||||
rotate_pages(page_addr_list, rot_info->uv_start_page,
|
||||
sg = rotate_pages(page_addr_list, rot_info->uv_start_page,
|
||||
rot_info->plane[1].width, rot_info->plane[1].height,
|
||||
rot_info->plane[1].width,
|
||||
st, sg);
|
||||
|
Loading…
Reference in New Issue
Block a user