diff mbox series

[CI] drm/i915/display/psr: Calculate selective fetch plane registers

Message ID 20201130125750.17820-1-jose.souza@intel.com (mailing list archive)
State New, archived
Headers show
Series [CI] drm/i915/display/psr: Calculate selective fetch plane registers | expand

Commit Message

Souza, Jose Nov. 30, 2020, 12:57 p.m. UTC
Add the calculations to set plane selective fetch registers depending
in the value of the area damaged.
It is still using the whole plane area as damaged but that will change
in next patches.

v2:
- fixed new_plane_state->uapi.dst.y2 typo in
intel_psr2_sel_fetch_update()
- do not shifthing new_plane_state->uapi.dst only src is in 16.16 format

BSpec: 55229
Cc: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Reviewed-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
Tested-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
---
 .../drm/i915/display/intel_display_types.h    |  2 ++
 drivers/gpu/drm/i915/display/intel_psr.c      | 22 ++++++++++++++-----
 2 files changed, 18 insertions(+), 6 deletions(-)

Comments

Souza, Jose Dec. 1, 2020, 5:16 p.m. UTC | #1
On Tue, 2020-12-01 at 12:48 +0000, Patchwork wrote:
Patch Details
Series: drm/i915/display/psr: Calculate selective fetch plane registers
URL:    https://patchwork.freedesktop.org/series/84404/
State:  failure
Details:        https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/index.html
CI Bug Log - changes from CI_DRM_9409_full -> Patchwork_19014_full
Summary

FAILURE

Serious unknown changes coming with Patchwork_19014_full absolutely need to be
verified manually.

If you think the reported changes have nothing to do with the changes
introduced in Patchwork_19014_full, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.

Possible new issues

Here are the unknown changes that may have been introduced in Patchwork_19014_full:

IGT changes
Possible regressions

  *   igt@gem_exec_reloc@basic-wide-active@vcs1:
     *   shard-iclb: NOTRUN -> FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-iclb2/igt@gem_exec_reloc@basic-wide-active@vcs1.html>

Not related. Feature is only available in TGL+.

Patch pushed do dinq.

New tests

New tests have been introduced between CI_DRM_9409_full and Patchwork_19014_full:

New CI tests (1)

  *   boot:
     *   Statuses : 175 pass(s)
     *   Exec time: [0.0] s

Known issues

Here are the changes found in Patchwork_19014_full that come from known issues:

IGT changes
Issues hit

  *   igt@drm_read@empty-block:

     *   shard-glk: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-glk8/igt@drm_read@empty-block.html> -> DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-glk3/igt@drm_read@empty-block.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>)
  *   igt@gem_ctx_shared@q-smoketest-all:

     *   shard-glk: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-glk5/igt@gem_ctx_shared@q-smoketest-all.html> -> DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-glk1/igt@gem_ctx_shared@q-smoketest-all.html> (i915#118<https://gitlab.freedesktop.org/drm/intel/issues/118> / i915#95<https://gitlab.freedesktop.org/drm/intel/issues/95>) +2 similar issues
  *   igt@gem_exec_fence@syncobj-timeline-wait:

     *   shard-skl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl3/igt@gem_exec_fence@syncobj-timeline-wait.html> -> DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl2/igt@gem_exec_fence@syncobj-timeline-wait.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>) +4 similar issues
  *   igt@gem_exec_whisper@basic-queues-priority-all:

     *   shard-iclb: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-iclb6/igt@gem_exec_whisper@basic-queues-priority-all.html> -> INCOMPLETE<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-iclb8/igt@gem_exec_whisper@basic-queues-priority-all.html> (i915#1895<https://gitlab.freedesktop.org/drm/intel/issues/1895>)
  *   igt@kms_cursor_crc@pipe-c-cursor-256x256-sliding:

     *   shard-apl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-apl1/igt@kms_cursor_crc@pipe-c-cursor-256x256-sliding.html> -> FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-apl6/igt@kms_cursor_crc@pipe-c-cursor-256x256-sliding.html> (i915#54<https://gitlab.freedesktop.org/drm/intel/issues/54>)

     *   shard-skl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl3/igt@kms_cursor_crc@pipe-c-cursor-256x256-sliding.html> -> FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl2/igt@kms_cursor_crc@pipe-c-cursor-256x256-sliding.html> (i915#54<https://gitlab.freedesktop.org/drm/intel/issues/54>)

     *   shard-kbl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-kbl7/igt@kms_cursor_crc@pipe-c-cursor-256x256-sliding.html> -> FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-kbl3/igt@kms_cursor_crc@pipe-c-cursor-256x256-sliding.html> (i915#54<https://gitlab.freedesktop.org/drm/intel/issues/54>)

  *   igt@kms_fbcon_fbt@fbc-suspend:

     *   shard-glk: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-glk4/igt@kms_fbcon_fbt@fbc-suspend.html> -> FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-glk2/igt@kms_fbcon_fbt@fbc-suspend.html> (i915#64<https://gitlab.freedesktop.org/drm/intel/issues/64>)
  *   igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@a-dp1:

     *   shard-kbl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-kbl6/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@a-dp1.html> -> DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-kbl4/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@a-dp1.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>)
  *   igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1:

     *   shard-skl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl10/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html> -> FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl7/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html> (i915#79<https://gitlab.freedesktop.org/drm/intel/issues/79>)
  *   igt@kms_flip@plain-flip-fb-recreate@b-edp1:

     *   shard-skl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl2/igt@kms_flip@plain-flip-fb-recreate@b-edp1.html> -> FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl1/igt@kms_flip@plain-flip-fb-recreate@b-edp1.html> (i915#2122<https://gitlab.freedesktop.org/drm/intel/issues/2122>) +1 similar issue
  *   igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-cpu:

     *   shard-tglb: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-tglb3/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-cpu.html> -> DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-tglb7/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-cpu.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>)
  *   igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-gtt:

     *   shard-iclb: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-iclb2/igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-gtt.html> -> DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-iclb7/igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-gtt.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>)
  *   igt@kms_hdr@bpc-switch:

     *   shard-skl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl10/igt@kms_hdr@bpc-switch.html> -> FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl5/igt@kms_hdr@bpc-switch.html> (i915#1188<https://gitlab.freedesktop.org/drm/intel/issues/1188>)
  *   igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes:

     *   shard-skl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl9/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html> -> INCOMPLETE<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl8/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-c-planes.html> (i915#198<https://gitlab.freedesktop.org/drm/intel/issues/198>) +1 similar issue
  *   igt@kms_plane_alpha_blend@pipe-c-coverage-7efc:

     *   shard-skl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl4/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html> -> FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl6/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html> (fdo#108145<https://bugs.freedesktop.org/show_bug.cgi?id=108145> / i915#265<https://gitlab.freedesktop.org/drm/intel/issues/265>)
  *   igt@kms_psr2_su@page_flip:

     *   shard-iclb: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-iclb2/igt@kms_psr2_su@page_flip.html> -> SKIP<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-iclb4/igt@kms_psr2_su@page_flip.html> (fdo#109642<https://bugs.freedesktop.org/show_bug.cgi?id=109642> / fdo#111068<https://bugs.freedesktop.org/show_bug.cgi?id=111068>)
  *   igt@kms_psr@psr2_sprite_plane_move:

     *   shard-iclb: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-iclb2/igt@kms_psr@psr2_sprite_plane_move.html> -> SKIP<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-iclb7/igt@kms_psr@psr2_sprite_plane_move.html> (fdo#109441<https://bugs.freedesktop.org/show_bug.cgi?id=109441>) +1 similar issue
  *   igt@prime_vgem@basic-fence-flip:

     *   shard-apl: PASS<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-apl2/igt@prime_vgem@basic-fence-flip.html> -> DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-apl8/igt@prime_vgem@basic-fence-flip.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>) +3 similar issues

Possible fixes

  *   igt@i915_pm_dc@dc6-psr:

     *   shard-iclb: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-iclb4/igt@i915_pm_dc@dc6-psr.html> (i915#454<https://gitlab.freedesktop.org/drm/intel/issues/454>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-iclb3/igt@i915_pm_dc@dc6-psr.html>
  *   {igt@kms_async_flips@alternate-sync-async-flip}:

     *   shard-skl: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl2/igt@kms_async_flips@alternate-sync-async-flip.html> (i915#2521<https://gitlab.freedesktop.org/drm/intel/issues/2521>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl1/igt@kms_async_flips@alternate-sync-async-flip.html>
  *   {igt@kms_async_flips@test-time-stamp}:

     *   shard-tglb: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-tglb2/igt@kms_async_flips@test-time-stamp.html> (i915#2597<https://gitlab.freedesktop.org/drm/intel/issues/2597>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-tglb5/igt@kms_async_flips@test-time-stamp.html>
  *   igt@kms_cursor_crc@pipe-c-cursor-128x128-random:

     *   shard-skl: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl2/igt@kms_cursor_crc@pipe-c-cursor-128x128-random.html> (i915#54<https://gitlab.freedesktop.org/drm/intel/issues/54>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl1/igt@kms_cursor_crc@pipe-c-cursor-128x128-random.html> +3 similar issues
  *   igt@kms_cursor_legacy@basic-flip-before-cursor-atomic:

     *   shard-skl: DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl3/igt@kms_cursor_legacy@basic-flip-before-cursor-atomic.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl10/igt@kms_cursor_legacy@basic-flip-before-cursor-atomic.html>
  *   igt@kms_cursor_legacy@flip-vs-cursor-crc-legacy:

     *   shard-tglb: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-tglb6/igt@kms_cursor_legacy@flip-vs-cursor-crc-legacy.html> (i915#2346<https://gitlab.freedesktop.org/drm/intel/issues/2346>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-tglb8/igt@kms_cursor_legacy@flip-vs-cursor-crc-legacy.html>
  *   igt@kms_flip@dpms-off-confusion@a-dp1:

     *   shard-apl: DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-apl4/igt@kms_flip@dpms-off-confusion@a-dp1.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-apl7/igt@kms_flip@dpms-off-confusion@a-dp1.html>
  *   igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1:

     *   shard-tglb: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-tglb7/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1.html> (i915#2598<https://gitlab.freedesktop.org/drm/intel/issues/2598>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-tglb6/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1.html>
  *   igt@kms_flip@flip-vs-expired-vblank@c-edp1:

     *   shard-skl: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl10/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html> (i915#79<https://gitlab.freedesktop.org/drm/intel/issues/79>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl7/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html>
  *   igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes:

     *   shard-skl: DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl1/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982> / i915#533<https://gitlab.freedesktop.org/drm/intel/issues/533>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl10/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-a-planes.html>
  *   igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes:

     *   shard-skl: INCOMPLETE<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl6/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html> (i915#198<https://gitlab.freedesktop.org/drm/intel/issues/198>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl3/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html>
  *   igt@kms_plane_alpha_blend@pipe-b-coverage-7efc:

     *   shard-skl: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl1/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html> (fdo#108145<https://bugs.freedesktop.org/show_bug.cgi?id=108145> / i915#265<https://gitlab.freedesktop.org/drm/intel/issues/265>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl10/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html>
  *   igt@kms_plane_lowres@pipe-c-tiling-none:

     *   shard-kbl: DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-kbl2/igt@kms_plane_lowres@pipe-c-tiling-none.html> (i915#165<https://gitlab.freedesktop.org/drm/intel/issues/165> / i915#78<https://gitlab.freedesktop.org/drm/intel/issues/78>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-kbl1/igt@kms_plane_lowres@pipe-c-tiling-none.html>
  *   igt@kms_psr@psr2_no_drrs:

     *   shard-iclb: SKIP<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-iclb5/igt@kms_psr@psr2_no_drrs.html> (fdo#109441<https://bugs.freedesktop.org/show_bug.cgi?id=109441>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-iclb2/igt@kms_psr@psr2_no_drrs.html> +2 similar issues
  *   igt@kms_sequence@queue-busy:

     *   shard-kbl: DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-kbl4/igt@kms_sequence@queue-busy.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-kbl2/igt@kms_sequence@queue-busy.html>
  *   igt@perf@blocking:

     *   shard-skl: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl5/igt@perf@blocking.html> (i915#1542<https://gitlab.freedesktop.org/drm/intel/issues/1542>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl1/igt@perf@blocking.html>
  *   igt@perf_pmu@module-unload:

     *   shard-iclb: DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-iclb2/igt@perf_pmu@module-unload.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982> / i915#262<https://gitlab.freedesktop.org/drm/intel/issues/262>) -> PASS<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-iclb7/igt@perf_pmu@module-unload.html>

Warnings

  *   igt@i915_pm_dc@dc6-psr:

     *   shard-skl: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl9/igt@i915_pm_dc@dc6-psr.html> (i915#454<https://gitlab.freedesktop.org/drm/intel/issues/454>) -> INCOMPLETE<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl9/igt@i915_pm_dc@dc6-psr.html> (i915#198<https://gitlab.freedesktop.org/drm/intel/issues/198>)
  *   igt@i915_pm_rc6_residency@rc6-idle:

     *   shard-iclb: WARN<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-iclb7/igt@i915_pm_rc6_residency@rc6-idle.html> (i915#1804<https://gitlab.freedesktop.org/drm/intel/issues/1804> / i915#2684<https://gitlab.freedesktop.org/drm/intel/issues/2684>) -> WARN<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-iclb1/igt@i915_pm_rc6_residency@rc6-idle.html> (i915#2681<https://gitlab.freedesktop.org/drm/intel/issues/2681> / i915#2684<https://gitlab.freedesktop.org/drm/intel/issues/2684>)
  *   igt@kms_cursor_legacy@flip-vs-cursor-busy-crc-legacy:

     *   shard-skl: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl3/igt@kms_cursor_legacy@flip-vs-cursor-busy-crc-legacy.html> (i915#2346<https://gitlab.freedesktop.org/drm/intel/issues/2346>) -> DMESG-FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl2/igt@kms_cursor_legacy@flip-vs-cursor-busy-crc-legacy.html> (i915#1982<https://gitlab.freedesktop.org/drm/intel/issues/1982>)
  *   igt@kms_dp_dsc@basic-dsc-enable-edp:

     *   shard-iclb: SKIP<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-iclb5/igt@kms_dp_dsc@basic-dsc-enable-edp.html> (fdo#109349<https://bugs.freedesktop.org/show_bug.cgi?id=109349>) -> DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-iclb2/igt@kms_dp_dsc@basic-dsc-enable-edp.html> (i915#1226<https://gitlab.freedesktop.org/drm/intel/issues/1226>)
  *   igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1:

     *   shard-skl: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl10/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1.html> (i915#2122<https://gitlab.freedesktop.org/drm/intel/issues/2122>) -> FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl7/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1.html> (i915#79<https://gitlab.freedesktop.org/drm/intel/issues/79>)
  *   igt@kms_vblank@pipe-a-ts-continuation-suspend:

     *   shard-apl: DMESG-WARN<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-apl6/igt@kms_vblank@pipe-a-ts-continuation-suspend.html> (i915#2635<https://gitlab.freedesktop.org/drm/intel/issues/2635> / i915#295<https://gitlab.freedesktop.org/drm/intel/issues/295>) -> INCOMPLETE<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-apl8/igt@kms_vblank@pipe-a-ts-continuation-suspend.html> (i915#2295<https://gitlab.freedesktop.org/drm/intel/issues/2295> / i915#2635<https://gitlab.freedesktop.org/drm/intel/issues/2635>)
  *   igt@runner@aborted:

     *   shard-skl: FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9409/shard-skl3/igt@runner@aborted.html> (i915#1814<https://gitlab.freedesktop.org/drm/intel/issues/1814> / i915#2029<https://gitlab.freedesktop.org/drm/intel/issues/2029> / i915#2722<https://gitlab.freedesktop.org/drm/intel/issues/2722>) -> FAIL<https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19014/shard-skl6/igt@runner@aborted.html> (i915#2295<https://gitlab.freedesktop.org/drm/intel/issues/2295> / i915#2722<https://gitlab.freedesktop.org/drm/intel/issues/2722>)

{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).

Participating hosts (10 -> 10)

No changes in participating hosts

Build changes

  *   Linux: CI_DRM_9409 -> Patchwork_19014

CI-20190529: 20190529
CI_DRM_9409: 07f40790f7bb7889980f97ab9b890cfd578d2db8 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5877: c36f7973d1ee7886ec65fa16c7b1fd8dc5a33caa @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_19014: 39cce460be0f6a94087307813348ecf3b2e305b1 @ git://anongit.freedesktop.org/gfx-ci/linux
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h
index ce82d654d0f2..3a18aaf907cc 100644
--- a/drivers/gpu/drm/i915/display/intel_display_types.h
+++ b/drivers/gpu/drm/i915/display/intel_display_types.h
@@ -604,6 +604,8 @@  struct intel_plane_state {
 	u32 planar_slave;
 
 	struct drm_intel_sprite_colorkey ckey;
+
+	struct drm_rect psr2_sel_fetch_area;
 };
 
 struct intel_initial_plane_config {
diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
index b3631b722de3..d9a395c486d3 100644
--- a/drivers/gpu/drm/i915/display/intel_psr.c
+++ b/drivers/gpu/drm/i915/display/intel_psr.c
@@ -1185,6 +1185,7 @@  void intel_psr2_program_plane_sel_fetch(struct intel_plane *plane,
 {
 	struct drm_i915_private *dev_priv = to_i915(plane->base.dev);
 	enum pipe pipe = plane->pipe;
+	const struct drm_rect *clip;
 	u32 val;
 
 	if (!crtc_state->enable_psr2_sel_fetch)
@@ -1196,16 +1197,20 @@  void intel_psr2_program_plane_sel_fetch(struct intel_plane *plane,
 	if (!val || plane->id == PLANE_CURSOR)
 		return;
 
-	val = plane_state->uapi.dst.y1 << 16 | plane_state->uapi.dst.x1;
+	clip = &plane_state->psr2_sel_fetch_area;
+
+	val = (clip->y1 + plane_state->uapi.dst.y1) << 16;
+	val |= plane_state->uapi.dst.x1;
 	intel_de_write_fw(dev_priv, PLANE_SEL_FETCH_POS(pipe, plane->id), val);
 
-	val = plane_state->color_plane[color_plane].y << 16;
+	/* TODO: consider tiling and auxiliary surfaces */
+	val = (clip->y1 + plane_state->color_plane[color_plane].y) << 16;
 	val |= plane_state->color_plane[color_plane].x;
 	intel_de_write_fw(dev_priv, PLANE_SEL_FETCH_OFFSET(pipe, plane->id),
 			  val);
 
 	/* Sizes are 0 based */
-	val = ((drm_rect_height(&plane_state->uapi.src) >> 16) - 1) << 16;
+	val = (drm_rect_height(clip) - 1) << 16;
 	val |= (drm_rect_width(&plane_state->uapi.src) >> 16) - 1;
 	intel_de_write_fw(dev_priv, PLANE_SEL_FETCH_SIZE(pipe, plane->id), val);
 }
@@ -1279,7 +1284,7 @@  int intel_psr2_sel_fetch_update(struct intel_atomic_state *state,
 
 	for_each_oldnew_intel_plane_in_state(state, plane, old_plane_state,
 					     new_plane_state, i) {
-		struct drm_rect temp;
+		struct drm_rect *sel_fetch_area, temp;
 
 		if (new_plane_state->uapi.crtc != crtc_state->uapi.crtc)
 			continue;
@@ -1302,8 +1307,13 @@  int intel_psr2_sel_fetch_update(struct intel_atomic_state *state,
 		 * For now doing a selective fetch in the whole plane area,
 		 * optimizations will come in the future.
 		 */
-		temp.y1 = new_plane_state->uapi.dst.y1;
-		temp.y2 = new_plane_state->uapi.dst.y2;
+		sel_fetch_area = &new_plane_state->psr2_sel_fetch_area;
+		sel_fetch_area->y1 = new_plane_state->uapi.src.y1 >> 16;
+		sel_fetch_area->y2 = new_plane_state->uapi.src.y2 >> 16;
+
+		temp = *sel_fetch_area;
+		temp.y1 += new_plane_state->uapi.dst.y1;
+		temp.y2 += new_plane_state->uapi.dst.y2;
 		clip_area_update(&pipe_clip, &temp);
 	}