Message ID | 20191202171608.3361125-1-matthew.d.roper@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/i915/irq: Refactor gen11 display interrupt handling | expand |
> -----Original Message----- > From: Intel-gfx [mailto:intel-gfx-bounces@lists.freedesktop.org] On Behalf Of > Matt Roper > Sent: Monday, December 2, 2019 9:16 AM > To: intel-gfx@lists.freedesktop.org > Cc: De Marchi, Lucas <lucas.demarchi@intel.com> > Subject: [Intel-gfx] [PATCH] drm/i915/irq: Refactor gen11 display interrupt > handling > > Let's move handling and reset for gen11 display IRQs to their own functions, > similar to how we deal with GT interrupts. This will make the top-level functions > a bit easier to read and potentially make things easier to deal with in the future > if new platforms wind up needing different display handling logic. > > Cc: Lucas De Marchi <lucas.demarchi@intel.com> LGTM. Reviewed-by: Radhakrishna Sripada <radhakrishna.sripada@intel.com> - Radhakrishna(RK) Sripada > Signed-off-by: Matt Roper <matthew.d.roper@intel.com> > --- > drivers/gpu/drm/i915/i915_irq.c | 57 ++++++++++++++++++++------------- > 1 file changed, 35 insertions(+), 22 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c > index 46a9f7dafbf3..a5348f79114f 100644 > --- a/drivers/gpu/drm/i915/i915_irq.c > +++ b/drivers/gpu/drm/i915/i915_irq.c > @@ -2453,6 +2453,25 @@ static inline void gen11_master_intr_enable(void > __iomem * const regs) > raw_reg_write(regs, GEN11_GFX_MSTR_IRQ, GEN11_MASTER_IRQ); } > > +static void > +gen11_display_irq_handler(struct drm_i915_private *i915) { > + void __iomem * const regs = i915->uncore.regs; > + const u32 disp_ctl = raw_reg_read(regs, GEN11_DISPLAY_INT_CTL); > + > + disable_rpm_wakeref_asserts(&i915->runtime_pm); > + /* > + * GEN11_DISPLAY_INT_CTL has same format as GEN8_MASTER_IRQ > + * for the display related bits. > + */ > + raw_reg_write(regs, GEN11_DISPLAY_INT_CTL, 0x0); > + gen8_de_irq_handler(i915, disp_ctl); > + raw_reg_write(regs, GEN11_DISPLAY_INT_CTL, > + GEN11_DISPLAY_IRQ_ENABLE); > + > + enable_rpm_wakeref_asserts(&i915->runtime_pm); > +} > + > static __always_inline irqreturn_t > __gen11_irq_handler(struct drm_i915_private * const i915, > u32 (*intr_disable)(void __iomem * const regs), @@ -2476,21 > +2495,8 @@ __gen11_irq_handler(struct drm_i915_private * const i915, > gen11_gt_irq_handler(gt, master_ctl); > > /* IRQs are synced during runtime_suspend, we don't require a wakeref > */ > - if (master_ctl & GEN11_DISPLAY_IRQ) { > - const u32 disp_ctl = raw_reg_read(regs, > GEN11_DISPLAY_INT_CTL); > - > - disable_rpm_wakeref_asserts(&i915->runtime_pm); > - /* > - * GEN11_DISPLAY_INT_CTL has same format as > GEN8_MASTER_IRQ > - * for the display related bits. > - */ > - raw_reg_write(regs, GEN11_DISPLAY_INT_CTL, 0x0); > - gen8_de_irq_handler(i915, disp_ctl); > - raw_reg_write(regs, GEN11_DISPLAY_INT_CTL, > - GEN11_DISPLAY_IRQ_ENABLE); > - > - enable_rpm_wakeref_asserts(&i915->runtime_pm); > - } > + if (master_ctl & GEN11_DISPLAY_IRQ) > + gen11_display_irq_handler(i915); > > gu_misc_iir = gen11_gu_misc_irq_ack(gt, master_ctl); > > @@ -2792,15 +2798,11 @@ static void gen8_irq_reset(struct drm_i915_private > *dev_priv) > ibx_irq_reset(dev_priv); > } > > -static void gen11_irq_reset(struct drm_i915_private *dev_priv) > +static void gen11_display_irq_reset(struct drm_i915_private *dev_priv) > { > struct intel_uncore *uncore = &dev_priv->uncore; > enum pipe pipe; > > - gen11_master_intr_disable(dev_priv->uncore.regs); > - > - gen11_gt_irq_reset(&dev_priv->gt); > - > intel_uncore_write(uncore, GEN11_DISPLAY_INT_CTL, 0); > > if (INTEL_GEN(dev_priv) >= 12) { > @@ -2829,13 +2831,24 @@ static void gen11_irq_reset(struct > drm_i915_private *dev_priv) > GEN3_IRQ_RESET(uncore, GEN8_DE_PORT_); > GEN3_IRQ_RESET(uncore, GEN8_DE_MISC_); > GEN3_IRQ_RESET(uncore, GEN11_DE_HPD_); > - GEN3_IRQ_RESET(uncore, GEN11_GU_MISC_); > - GEN3_IRQ_RESET(uncore, GEN8_PCU_); > > if (INTEL_PCH_TYPE(dev_priv) >= PCH_ICP) > GEN3_IRQ_RESET(uncore, SDE); > } > > +static void gen11_irq_reset(struct drm_i915_private *dev_priv) { > + struct intel_uncore *uncore = &dev_priv->uncore; > + > + gen11_master_intr_disable(dev_priv->uncore.regs); > + > + gen11_gt_irq_reset(&dev_priv->gt); > + gen11_display_irq_reset(dev_priv); > + > + GEN3_IRQ_RESET(uncore, GEN11_GU_MISC_); > + GEN3_IRQ_RESET(uncore, GEN8_PCU_); > +} > + > void gen8_irq_power_well_post_enable(struct drm_i915_private *dev_priv, > u8 pipe_mask) > { > -- > 2.23.0 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/intel-gfx
On Mon, Dec 02, 2019 at 07:51:10PM +0000, Patchwork wrote: > == Series Details == > > Series: drm/i915/irq: Refactor gen11 display interrupt handling > URL : https://patchwork.freedesktop.org/series/70303/ > State : failure > > == Summary == > > CI Bug Log - changes from CI_DRM_7463 -> Patchwork_15541 > ==================================================== > > Summary > ------- > > **FAILURE** > > Serious unknown changes coming with Patchwork_15541 absolutely need to be > verified manually. > > If you think the reported changes have nothing to do with the changes > introduced in Patchwork_15541, please notify your bug team to allow them > to document this new failure mode, which will reduce false positives in CI. > > External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15541/index.html > > Possible new issues > ------------------- > > Here are the unknown changes that may have been introduced in Patchwork_15541: > > ### IGT changes ### > > #### Possible regressions #### > > * igt@i915_selftest@live_blt: > - fi-hsw-4770: [PASS][1] -> [DMESG-FAIL][2] > [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7463/fi-hsw-4770/igt@i915_selftest@live_blt.html > [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15541/fi-hsw-4770/igt@i915_selftest@live_blt.html <6> [343.644192] i915 0000:00:02.0: GPU HANG: ecode 7:2:0xc5ef0f78, in igt/blt-7 [4997], stopped heartbeat on bcs0 ... <3> [343.748709] vaddr[0]=3a10f08f, expected=e4bd4e20 ... <3> [343.841601] i915/i915_gem_object_blt_live_selftests: igt_fill_blt failed with error -22 A GPU hang could be a symptom if I screwed up interrupts, but HSW is the wrong platform for my series to cause problems on, so this appears unrelated. Hitting the re-test button. Matt > > > Known issues > ------------ > > Here are the changes found in Patchwork_15541 that come from known issues: > > ### IGT changes ### > > #### Issues hit #### > > * igt@i915_selftest@live_gtt: > - fi-skl-6600u: [PASS][3] -> [TIMEOUT][4] ([fdo#111732]) > [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7463/fi-skl-6600u/igt@i915_selftest@live_gtt.html > [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15541/fi-skl-6600u/igt@i915_selftest@live_gtt.html > > * igt@kms_chamelium@dp-crc-fast: > - fi-icl-u2: [PASS][5] -> [FAIL][6] ([fdo#109635] / [i915#262]) > [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7463/fi-icl-u2/igt@kms_chamelium@dp-crc-fast.html > [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15541/fi-icl-u2/igt@kms_chamelium@dp-crc-fast.html > > * igt@kms_frontbuffer_tracking@basic: > - fi-icl-guc: [PASS][7] -> [FAIL][8] ([i915#49]) > [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7463/fi-icl-guc/igt@kms_frontbuffer_tracking@basic.html > [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15541/fi-icl-guc/igt@kms_frontbuffer_tracking@basic.html > > > #### Possible fixes #### > > * igt@i915_module_load@reload-with-fault-injection: > - {fi-kbl-7560u}: [INCOMPLETE][9] ([i915#243] / [i915#609]) -> [PASS][10] > [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7463/fi-kbl-7560u/igt@i915_module_load@reload-with-fault-injection.html > [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15541/fi-kbl-7560u/igt@i915_module_load@reload-with-fault-injection.html > > * igt@i915_selftest@live_gt_lrc: > - fi-bwr-2160: [INCOMPLETE][11] ([i915#695]) -> [PASS][12] > [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7463/fi-bwr-2160/igt@i915_selftest@live_gt_lrc.html > [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15541/fi-bwr-2160/igt@i915_selftest@live_gt_lrc.html > > * igt@kms_chamelium@hdmi-hpd-fast: > - fi-icl-u2: [FAIL][13] ([i915#217]) -> [PASS][14] > [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7463/fi-icl-u2/igt@kms_chamelium@hdmi-hpd-fast.html > [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15541/fi-icl-u2/igt@kms_chamelium@hdmi-hpd-fast.html > > * igt@kms_frontbuffer_tracking@basic: > - fi-hsw-peppy: [DMESG-WARN][15] ([i915#44]) -> [PASS][16] > [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7463/fi-hsw-peppy/igt@kms_frontbuffer_tracking@basic.html > [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15541/fi-hsw-peppy/igt@kms_frontbuffer_tracking@basic.html > > > #### Warnings #### > > * igt@kms_force_connector_basic@force-edid: > - fi-kbl-x1275: [DMESG-WARN][17] ([i915#62] / [i915#92] / [i915#95]) -> [DMESG-WARN][18] ([i915#62] / [i915#92]) +5 similar issues > [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7463/fi-kbl-x1275/igt@kms_force_connector_basic@force-edid.html > [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15541/fi-kbl-x1275/igt@kms_force_connector_basic@force-edid.html > > * igt@kms_pipe_crc_basic@hang-read-crc-pipe-a: > - fi-kbl-x1275: [DMESG-WARN][19] ([i915#62] / [i915#92]) -> [DMESG-WARN][20] ([i915#62] / [i915#92] / [i915#95]) +5 similar issues > [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7463/fi-kbl-x1275/igt@kms_pipe_crc_basic@hang-read-crc-pipe-a.html > [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15541/fi-kbl-x1275/igt@kms_pipe_crc_basic@hang-read-crc-pipe-a.html > > > {name}: This element is suppressed. This means it is ignored when computing > the status of the difference (SUCCESS, WARNING, or FAILURE). > > [fdo#109635]: https://bugs.freedesktop.org/show_bug.cgi?id=109635 > [fdo#111732]: https://bugs.freedesktop.org/show_bug.cgi?id=111732 > [i915#217]: https://gitlab.freedesktop.org/drm/intel/issues/217 > [i915#243]: https://gitlab.freedesktop.org/drm/intel/issues/243 > [i915#262]: https://gitlab.freedesktop.org/drm/intel/issues/262 > [i915#44]: https://gitlab.freedesktop.org/drm/intel/issues/44 > [i915#49]: https://gitlab.freedesktop.org/drm/intel/issues/49 > [i915#609]: https://gitlab.freedesktop.org/drm/intel/issues/609 > [i915#62]: https://gitlab.freedesktop.org/drm/intel/issues/62 > [i915#695]: https://gitlab.freedesktop.org/drm/intel/issues/695 > [i915#92]: https://gitlab.freedesktop.org/drm/intel/issues/92 > [i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95 > > > Participating hosts (52 -> 44) > ------------------------------ > > Missing (8): fi-hsw-4770r fi-ilk-m540 fi-hsw-4200u fi-bsw-cyan fi-ctg-p8600 fi-tgl-y fi-byt-clapper fi-bdw-samus > > > Build changes > ------------- > > * CI: CI-20190529 -> None > * Linux: CI_DRM_7463 -> Patchwork_15541 > > CI-20190529: 20190529 > CI_DRM_7463: 9f2615346de3a40be3fa62d08f3331632a7ad265 @ git://anongit.freedesktop.org/gfx-ci/linux > IGT_5321: 9df50aef49e0da4413609d9866b41b82b725f2a0 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools > Patchwork_15541: 3fa1864cd1a737cd865f43ead828f71d3e2a4b25 @ git://anongit.freedesktop.org/gfx-ci/linux > > > == Linux commits == > > 3fa1864cd1a7 drm/i915/irq: Refactor gen11 display interrupt handling > > == Logs == > > For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15541/index.html
On Tue, Dec 03, 2019 at 06:40:37AM +0000, Patchwork wrote: > == Series Details == > > Series: drm/i915/irq: Refactor gen11 display interrupt handling (rev2) > URL : https://patchwork.freedesktop.org/series/70303/ > State : failure > > == Summary == > > CI Bug Log - changes from CI_DRM_7467_full -> Patchwork_15546_full > ==================================================== > > Summary > ------- > > **FAILURE** > > Serious unknown changes coming with Patchwork_15546_full absolutely need to be > verified manually. > > If you think the reported changes have nothing to do with the changes > introduced in Patchwork_15546_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_15546_full: > > ### IGT changes ### > > #### Possible regressions #### > > * igt@gem_ctx_persistence@bcs0-mixed-process: > - shard-skl: [PASS][1] -> [FAIL][2] > [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-skl5/igt@gem_ctx_persistence@bcs0-mixed-process.html > [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-skl3/igt@gem_ctx_persistence@bcs0-mixed-process.html I think this is https://gitlab.freedesktop.org/drm/intel/issues/679 so unrelated to this patch (which would only affect ICL+ anyway). Patch applied to dinq. Thanks RK for the review. Matt > > > Known issues > ------------ > > Here are the changes found in Patchwork_15546_full that come from known issues: > > ### IGT changes ### > > #### Issues hit #### > > * igt@gem_ctx_isolation@vecs0-s3: > - shard-apl: [PASS][3] -> [DMESG-WARN][4] ([i915#180]) > [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-apl4/igt@gem_ctx_isolation@vecs0-s3.html > [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-apl6/igt@gem_ctx_isolation@vecs0-s3.html > - shard-skl: [PASS][5] -> [INCOMPLETE][6] ([i915#69]) > [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-skl7/igt@gem_ctx_isolation@vecs0-s3.html > [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-skl2/igt@gem_ctx_isolation@vecs0-s3.html > > * igt@gem_ctx_persistence@processes: > - shard-skl: [PASS][7] -> [FAIL][8] ([i915#570]) > [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-skl7/igt@gem_ctx_persistence@processes.html > [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-skl6/igt@gem_ctx_persistence@processes.html > > * igt@gem_ctx_persistence@vcs1-cleanup: > - shard-iclb: [PASS][9] -> [SKIP][10] ([fdo#109276] / [fdo#112080]) +2 similar issues > [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-iclb4/igt@gem_ctx_persistence@vcs1-cleanup.html > [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-iclb8/igt@gem_ctx_persistence@vcs1-cleanup.html > > * igt@gem_exec_balancer@smoke: > - shard-iclb: [PASS][11] -> [SKIP][12] ([fdo#110854]) > [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-iclb1/igt@gem_exec_balancer@smoke.html > [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-iclb5/igt@gem_exec_balancer@smoke.html > > * igt@gem_exec_gttfill@basic: > - shard-tglb: [PASS][13] -> [INCOMPLETE][14] ([fdo#111593]) +1 similar issue > [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-tglb7/igt@gem_exec_gttfill@basic.html > [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-tglb4/igt@gem_exec_gttfill@basic.html > > * igt@gem_exec_parallel@vecs0-fds: > - shard-hsw: [PASS][15] -> [FAIL][16] ([i915#676]) +1 similar issue > [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-hsw1/igt@gem_exec_parallel@vecs0-fds.html > [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-hsw6/igt@gem_exec_parallel@vecs0-fds.html > > * igt@gem_exec_schedule@preempt-queue-bsd2: > - shard-iclb: [PASS][17] -> [SKIP][18] ([fdo#109276]) +4 similar issues > [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-iclb4/igt@gem_exec_schedule@preempt-queue-bsd2.html > [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-iclb8/igt@gem_exec_schedule@preempt-queue-bsd2.html > > * igt@gem_ppgtt@flink-and-close-vma-leak: > - shard-skl: [PASS][19] -> [FAIL][20] ([i915#644]) > [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-skl4/igt@gem_ppgtt@flink-and-close-vma-leak.html > [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-skl2/igt@gem_ppgtt@flink-and-close-vma-leak.html > > * igt@gem_softpin@noreloc-s3: > - shard-kbl: [PASS][21] -> [INCOMPLETE][22] ([fdo#103665]) > [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-kbl6/igt@gem_softpin@noreloc-s3.html > [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-kbl1/igt@gem_softpin@noreloc-s3.html > > * igt@gem_sync@basic-store-each: > - shard-tglb: [PASS][23] -> [INCOMPLETE][24] ([i915#435] / [i915#472]) > [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-tglb4/igt@gem_sync@basic-store-each.html > [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-tglb4/igt@gem_sync@basic-store-each.html > > * igt@i915_selftest@live_blt: > - shard-hsw: [PASS][25] -> [DMESG-FAIL][26] ([i915#683]) > [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-hsw1/igt@i915_selftest@live_blt.html > [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-hsw4/igt@i915_selftest@live_blt.html > > * igt@kms_big_fb@linear-64bpp-rotate-0: > - shard-skl: [PASS][27] -> [DMESG-WARN][28] ([i915#109]) +1 similar issue > [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-skl6/igt@kms_big_fb@linear-64bpp-rotate-0.html > [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-skl4/igt@kms_big_fb@linear-64bpp-rotate-0.html > > * igt@kms_big_fb@y-tiled-8bpp-rotate-180: > - shard-skl: [PASS][29] -> [INCOMPLETE][30] ([fdo#112347]) > [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-skl6/igt@kms_big_fb@y-tiled-8bpp-rotate-180.html > [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-skl4/igt@kms_big_fb@y-tiled-8bpp-rotate-180.html > > * igt@kms_cursor_crc@pipe-a-cursor-256x85-onscreen: > - shard-skl: [PASS][31] -> [FAIL][32] ([i915#54]) > [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-skl7/igt@kms_cursor_crc@pipe-a-cursor-256x85-onscreen.html > [32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-skl2/igt@kms_cursor_crc@pipe-a-cursor-256x85-onscreen.html > > * igt@kms_cursor_crc@pipe-c-cursor-suspend: > - shard-kbl: [PASS][33] -> [DMESG-WARN][34] ([i915#180]) +3 similar issues > [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-kbl2/igt@kms_cursor_crc@pipe-c-cursor-suspend.html > [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-kbl2/igt@kms_cursor_crc@pipe-c-cursor-suspend.html > > * igt@kms_draw_crc@draw-method-xrgb2101010-render-untiled: > - shard-tglb: [PASS][35] -> [INCOMPLETE][36] ([fdo#112393]) > [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-tglb6/igt@kms_draw_crc@draw-method-xrgb2101010-render-untiled.html > [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-tglb9/igt@kms_draw_crc@draw-method-xrgb2101010-render-untiled.html > > * igt@kms_flip@flip-vs-expired-vblank-interruptible: > - shard-glk: [PASS][37] -> [FAIL][38] ([i915#79]) > [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-glk5/igt@kms_flip@flip-vs-expired-vblank-interruptible.html > [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-glk4/igt@kms_flip@flip-vs-expired-vblank-interruptible.html > > * igt@kms_flip@flip-vs-suspend-interruptible: > - shard-snb: [PASS][39] -> [DMESG-WARN][40] ([i915#42]) > [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-snb7/igt@kms_flip@flip-vs-suspend-interruptible.html > [40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-snb4/igt@kms_flip@flip-vs-suspend-interruptible.html > > * igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw: > - shard-iclb: [PASS][41] -> [FAIL][42] ([i915#49]) +2 similar issues > [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-iclb1/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html > [42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-iclb6/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html > > * igt@kms_frontbuffer_tracking@fbc-rgb565-draw-mmap-gtt: > - shard-tglb: [PASS][43] -> [FAIL][44] ([i915#49]) +1 similar issue > [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-tglb7/igt@kms_frontbuffer_tracking@fbc-rgb565-draw-mmap-gtt.html > [44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-tglb7/igt@kms_frontbuffer_tracking@fbc-rgb565-draw-mmap-gtt.html > > * igt@kms_frontbuffer_tracking@psr-1p-primscrn-shrfb-pgflip-blt: > - shard-skl: [PASS][45] -> [INCOMPLETE][46] ([i915#123]) > [45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-skl10/igt@kms_frontbuffer_tracking@psr-1p-primscrn-shrfb-pgflip-blt.html > [46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-skl10/igt@kms_frontbuffer_tracking@psr-1p-primscrn-shrfb-pgflip-blt.html > > * igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b: > - shard-tglb: [PASS][47] -> [INCOMPLETE][48] ([i915#456] / [i915#460]) +1 similar issue > [47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-tglb4/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b.html > [48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-tglb2/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b.html > > * igt@kms_plane@pixel-format-pipe-c-planes: > - shard-iclb: [PASS][49] -> [INCOMPLETE][50] ([i915#140] / [i915#246]) > [49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-iclb4/igt@kms_plane@pixel-format-pipe-c-planes.html > [50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-iclb4/igt@kms_plane@pixel-format-pipe-c-planes.html > > * igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min: > - shard-skl: [PASS][51] -> [FAIL][52] ([fdo#108145]) > [51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-skl6/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html > [52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-skl3/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-min.html > > * igt@kms_plane_alpha_blend@pipe-b-coverage-7efc: > - shard-skl: [PASS][53] -> [FAIL][54] ([fdo#108145] / [i915#265]) > [53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-skl7/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html > [54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-skl6/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html > > * igt@kms_setmode@basic: > - shard-skl: [PASS][55] -> [FAIL][56] ([i915#31]) > [55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-skl8/igt@kms_setmode@basic.html > [56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-skl9/igt@kms_setmode@basic.html > > * igt@perf_pmu@busy-no-semaphores-vcs1: > - shard-iclb: [PASS][57] -> [SKIP][58] ([fdo#112080]) +8 similar issues > [57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-iclb1/igt@perf_pmu@busy-no-semaphores-vcs1.html > [58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-iclb6/igt@perf_pmu@busy-no-semaphores-vcs1.html > > > #### Possible fixes #### > > * igt@gem_ctx_isolation@rcs0-s3: > - shard-tglb: [INCOMPLETE][59] ([i915#456]) -> [PASS][60] > [59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-tglb4/igt@gem_ctx_isolation@rcs0-s3.html > [60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-tglb3/igt@gem_ctx_isolation@rcs0-s3.html > > * igt@gem_ctx_isolation@vcs1-dirty-switch: > - shard-iclb: [SKIP][61] ([fdo#109276] / [fdo#112080]) -> [PASS][62] > [61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-iclb3/igt@gem_ctx_isolation@vcs1-dirty-switch.html > [62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-iclb2/igt@gem_ctx_isolation@vcs1-dirty-switch.html > > * igt@gem_exec_parallel@bcs0-contexts: > - shard-hsw: [FAIL][63] ([i915#676]) -> [PASS][64] > [63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-hsw6/igt@gem_exec_parallel@bcs0-contexts.html > [64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-hsw5/igt@gem_exec_parallel@bcs0-contexts.html > > * igt@gem_exec_parallel@vcs1-fds: > - shard-iclb: [SKIP][65] ([fdo#112080]) -> [PASS][66] +8 similar issues > [65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-iclb3/igt@gem_exec_parallel@vcs1-fds.html > [66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-iclb2/igt@gem_exec_parallel@vcs1-fds.html > > * {igt@gem_exec_schedule@pi-common-bsd1}: > - shard-iclb: [SKIP][67] ([fdo#109276]) -> [PASS][68] +11 similar issues > [67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-iclb3/igt@gem_exec_schedule@pi-common-bsd1.html > [68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-iclb1/igt@gem_exec_schedule@pi-common-bsd1.html > > * {igt@gem_exec_schedule@pi-shared-iova-bsd}: > - shard-iclb: [SKIP][69] ([i915#677]) -> [PASS][70] > [69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-iclb1/igt@gem_exec_schedule@pi-shared-iova-bsd.html > [70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-iclb6/igt@gem_exec_schedule@pi-shared-iova-bsd.html > > * igt@gem_exec_schedule@preempt-bsd: > - shard-iclb: [SKIP][71] ([fdo#112146]) -> [PASS][72] +3 similar issues > [71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-iclb1/igt@gem_exec_schedule@preempt-bsd.html > [72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-iclb5/igt@gem_exec_schedule@preempt-bsd.html > > * igt@gem_exec_schedule@preempt-queue-chain-vebox: > - shard-kbl: [INCOMPLETE][73] ([fdo#103665]) -> [PASS][74] > [73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-kbl3/igt@gem_exec_schedule@preempt-queue-chain-vebox.html > [74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-kbl2/igt@gem_exec_schedule@preempt-queue-chain-vebox.html > > * igt@gem_exec_schedule@smoketest-bsd2: > - shard-tglb: [INCOMPLETE][75] ([fdo#111998]) -> [PASS][76] > [75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-tglb4/igt@gem_exec_schedule@smoketest-bsd2.html > [76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-tglb2/igt@gem_exec_schedule@smoketest-bsd2.html > > * igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy-gup: > - shard-snb: [DMESG-WARN][77] ([fdo#111870]) -> [PASS][78] > [77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-snb6/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy-gup.html > [78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-snb1/igt@gem_userptr_blits@map-fixed-invalidate-overlap-busy-gup.html > > * igt@i915_pm_dc@dc5-dpms: > - shard-iclb: [FAIL][79] ([i915#447]) -> [PASS][80] > [79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-iclb3/igt@i915_pm_dc@dc5-dpms.html > [80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-iclb5/igt@i915_pm_dc@dc5-dpms.html > > * igt@i915_pm_rpm@system-suspend-execbuf: > - shard-skl: [INCOMPLETE][81] ([i915#151] / [i915#69]) -> [PASS][82] > [81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-skl6/igt@i915_pm_rpm@system-suspend-execbuf.html > [82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-skl7/igt@i915_pm_rpm@system-suspend-execbuf.html > > * igt@kms_big_fb@y-tiled-16bpp-rotate-180: > - shard-tglb: [INCOMPLETE][83] ([i915#667]) -> [PASS][84] > [83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-tglb1/igt@kms_big_fb@y-tiled-16bpp-rotate-180.html > [84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-tglb5/igt@kms_big_fb@y-tiled-16bpp-rotate-180.html > - shard-skl: [INCOMPLETE][85] ([fdo#112347] / [i915#655]) -> [PASS][86] > [85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-skl2/igt@kms_big_fb@y-tiled-16bpp-rotate-180.html > [86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-skl5/igt@kms_big_fb@y-tiled-16bpp-rotate-180.html > > * igt@kms_big_fb@y-tiled-16bpp-rotate-90: > - shard-tglb: [INCOMPLETE][87] ([i915#435]) -> [PASS][88] +1 similar issue > [87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-tglb4/igt@kms_big_fb@y-tiled-16bpp-rotate-90.html > [88]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-tglb4/igt@kms_big_fb@y-tiled-16bpp-rotate-90.html > > * igt@kms_big_fb@yf-tiled-16bpp-rotate-180: > - shard-glk: [INCOMPLETE][89] ([i915#58] / [k.org#198133]) -> [PASS][90] +1 similar issue > [89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-glk5/igt@kms_big_fb@yf-tiled-16bpp-rotate-180.html > [90]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-glk7/igt@kms_big_fb@yf-tiled-16bpp-rotate-180.html > > * igt@kms_cursor_crc@pipe-a-cursor-64x64-sliding: > - shard-apl: [INCOMPLETE][91] ([fdo#103927]) -> [PASS][92] > [91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-apl8/igt@kms_cursor_crc@pipe-a-cursor-64x64-sliding.html > [92]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-apl4/igt@kms_cursor_crc@pipe-a-cursor-64x64-sliding.html > > * igt@kms_cursor_legacy@cursor-vs-flip-toggle: > - shard-hsw: [FAIL][93] ([i915#57]) -> [PASS][94] > [93]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-hsw4/igt@kms_cursor_legacy@cursor-vs-flip-toggle.html > [94]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-hsw2/igt@kms_cursor_legacy@cursor-vs-flip-toggle.html > > * igt@kms_flip@flip-vs-expired-vblank-interruptible: > - shard-skl: [FAIL][95] ([i915#79]) -> [PASS][96] > [95]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-skl7/igt@kms_flip@flip-vs-expired-vblank-interruptible.html > [96]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-skl6/igt@kms_flip@flip-vs-expired-vblank-interruptible.html > > * igt@kms_flip@flip-vs-suspend: > - shard-hsw: [INCOMPLETE][97] ([i915#61]) -> [PASS][98] > [97]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-hsw5/igt@kms_flip@flip-vs-suspend.html > [98]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-hsw6/igt@kms_flip@flip-vs-suspend.html > > * igt@kms_frontbuffer_tracking@fbc-suspend: > - shard-kbl: [DMESG-WARN][99] ([i915#180]) -> [PASS][100] +3 similar issues > [99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-kbl4/igt@kms_frontbuffer_tracking@fbc-suspend.html > [100]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-kbl6/igt@kms_frontbuffer_tracking@fbc-suspend.html > - shard-apl: [DMESG-WARN][101] ([i915#180]) -> [PASS][102] +1 similar issue > [101]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-apl4/igt@kms_frontbuffer_tracking@fbc-suspend.html > [102]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-apl6/igt@kms_frontbuffer_tracking@fbc-suspend.html > - shard-tglb: [INCOMPLETE][103] ([i915#456] / [i915#460] / [i915#474]) -> [PASS][104] > [103]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-tglb1/igt@kms_frontbuffer_tracking@fbc-suspend.html > [104]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-tglb7/igt@kms_frontbuffer_tracking@fbc-suspend.html > > * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-blt: > - shard-iclb: [FAIL][105] ([i915#49]) -> [PASS][106] > [105]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-iclb1/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-blt.html > [106]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-iclb6/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-draw-blt.html > > * igt@kms_plane_alpha_blend@pipe-c-coverage-7efc: > - shard-skl: [FAIL][107] ([fdo#108145] / [i915#265]) -> [PASS][108] > [107]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-skl7/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html > [108]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-skl6/igt@kms_plane_alpha_blend@pipe-c-coverage-7efc.html > > * igt@kms_psr2_su@frontbuffer: > - shard-iclb: [SKIP][109] ([fdo#109642] / [fdo#111068]) -> [PASS][110] > [109]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-iclb6/igt@kms_psr2_su@frontbuffer.html > [110]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-iclb2/igt@kms_psr2_su@frontbuffer.html > > * igt@kms_psr@psr2_sprite_mmap_cpu: > - shard-iclb: [SKIP][111] ([fdo#109441]) -> [PASS][112] > [111]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-iclb6/igt@kms_psr@psr2_sprite_mmap_cpu.html > [112]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-iclb2/igt@kms_psr@psr2_sprite_mmap_cpu.html > > > #### Warnings #### > > * igt@gem_ctx_isolation@vcs1-nonpriv-switch: > - shard-iclb: [SKIP][113] ([fdo#109276] / [fdo#112080]) -> [FAIL][114] ([IGT#28]) > [113]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-iclb6/igt@gem_ctx_isolation@vcs1-nonpriv-switch.html > [114]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-iclb2/igt@gem_ctx_isolation@vcs1-nonpriv-switch.html > > * igt@gem_eio@kms: > - shard-snb: [INCOMPLETE][115] ([i915#82]) -> [DMESG-WARN][116] ([i915#444] / [i915#502]) > [115]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-snb6/igt@gem_eio@kms.html > [116]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-snb5/igt@gem_eio@kms.html > > * igt@kms_plane@pixel-format-pipe-a-planes: > - shard-skl: [INCOMPLETE][117] ([i915#648]) -> [INCOMPLETE][118] ([fdo#112347] / [i915#648]) > [117]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-skl10/igt@kms_plane@pixel-format-pipe-a-planes.html > [118]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-skl5/igt@kms_plane@pixel-format-pipe-a-planes.html > > * igt@kms_plane@pixel-format-pipe-b-planes-source-clamping: > - shard-skl: [INCOMPLETE][119] ([fdo#112347] / [i915#648]) -> [INCOMPLETE][120] ([fdo#112347] / [fdo#112391] / [i915#648]) > [119]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-skl5/igt@kms_plane@pixel-format-pipe-b-planes-source-clamping.html > [120]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-skl4/igt@kms_plane@pixel-format-pipe-b-planes-source-clamping.html > > * igt@kms_psr@psr2_suspend: > - shard-iclb: [SKIP][121] ([fdo#109441]) -> [DMESG-WARN][122] ([fdo#107724]) > [121]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7467/shard-iclb6/igt@kms_psr@psr2_suspend.html > [122]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/shard-iclb2/igt@kms_psr@psr2_suspend.html > > > {name}: This element is suppressed. This means it is ignored when computing > the status of the difference (SUCCESS, WARNING, or FAILURE). > > [IGT#28]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/28 > [fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665 > [fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927 > [fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724 > [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145 > [fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276 > [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441 > [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642 > [fdo#110854]: https://bugs.freedesktop.org/show_bug.cgi?id=110854 > [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068 > [fdo#111593]: https://bugs.freedesktop.org/show_bug.cgi?id=111593 > [fdo#111870]: https://bugs.freedesktop.org/show_bug.cgi?id=111870 > [fdo#111998]: https://bugs.freedesktop.org/show_bug.cgi?id=111998 > [fdo#112080]: https://bugs.freedesktop.org/show_bug.cgi?id=112080 > [fdo#112146]: https://bugs.freedesktop.org/show_bug.cgi?id=112146 > [fdo#112347]: https://bugs.freedesktop.org/show_bug.cgi?id=112347 > [fdo#112391]: https://bugs.freedesktop.org/show_bug.cgi?id=112391 > [fdo#112393]: https://bugs.freedesktop.org/show_bug.cgi?id=112393 > [i915#109]: https://gitlab.freedesktop.org/drm/intel/issues/109 > [i915#123]: https://gitlab.freedesktop.org/drm/intel/issues/123 > [i915#140]: https://gitlab.freedesktop.org/drm/intel/issues/140 > [i915#151]: https://gitlab.freedesktop.org/drm/intel/issues/151 > [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180 > [i915#246]: https://gitlab.freedesktop.org/drm/intel/issues/246 > [i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265 > [i915#31]: https://gitlab.freedesktop.org/drm/intel/issues/31 > [i915#42]: https://gitlab.freedesktop.org/drm/intel/issues/42 > [i915#435]: https://gitlab.freedesktop.org/drm/intel/issues/435 > [i915#444]: https://gitlab.freedesktop.org/drm/intel/issues/444 > [i915#447]: https://gitlab.freedesktop.org/drm/intel/issues/447 > [i915#456]: https://gitlab.freedesktop.org/drm/intel/issues/456 > [i915#460]: https://gitlab.freedesktop.org/drm/intel/issues/460 > [i915#472]: https://gitlab.freedesktop.org/drm/intel/issues/472 > [i915#474]: https://gitlab.freedesktop.org/drm/intel/issues/474 > [i915#49]: https://gitlab.freedesktop.org/drm/intel/issues/49 > [i915#502]: https://gitlab.freedesktop.org/drm/intel/issues/502 > [i915#54]: https://gitlab.freedesktop.org/drm/intel/issues/54 > [i915#57]: https://gitlab.freedesktop.org/drm/intel/issues/57 > [i915#570]: https://gitlab.freedesktop.org/drm/intel/issues/570 > [i915#58]: https://gitlab.freedesktop.org/drm/intel/issues/58 > [i915#61]: https://gitlab.freedesktop.org/drm/intel/issues/61 > [i915#644]: https://gitlab.freedesktop.org/drm/intel/issues/644 > [i915#648]: https://gitlab.freedesktop.org/drm/intel/issues/648 > [i915#655]: https://gitlab.freedesktop.org/drm/intel/issues/655 > [i915#667]: https://gitlab.freedesktop.org/drm/intel/issues/667 > [i915#669]: https://gitlab.freedesktop.org/drm/intel/issues/669 > [i915#676]: https://gitlab.freedesktop.org/drm/intel/issues/676 > [i915#677]: https://gitlab.freedesktop.org/drm/intel/issues/677 > [i915#683]: https://gitlab.freedesktop.org/drm/intel/issues/683 > [i915#69]: https://gitlab.freedesktop.org/drm/intel/issues/69 > [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79 > [i915#82]: https://gitlab.freedesktop.org/drm/intel/issues/82 > [k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133 > > > Participating hosts (11 -> 11) > ------------------------------ > > No changes in participating hosts > > > Build changes > ------------- > > * CI: CI-20190529 -> None > * Linux: CI_DRM_7467 -> Patchwork_15546 > > CI-20190529: 20190529 > CI_DRM_7467: 14954f24e7251b067b2081aaa09a7da6840da0d5 @ git://anongit.freedesktop.org/gfx-ci/linux > IGT_5321: 9df50aef49e0da4413609d9866b41b82b725f2a0 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools > Patchwork_15546: 8c921255493be0c0c4d31ef965e4a65202354c15 @ git://anongit.freedesktop.org/gfx-ci/linux > piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit > > == Logs == > > For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15546/index.html
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c index 46a9f7dafbf3..a5348f79114f 100644 --- a/drivers/gpu/drm/i915/i915_irq.c +++ b/drivers/gpu/drm/i915/i915_irq.c @@ -2453,6 +2453,25 @@ static inline void gen11_master_intr_enable(void __iomem * const regs) raw_reg_write(regs, GEN11_GFX_MSTR_IRQ, GEN11_MASTER_IRQ); } +static void +gen11_display_irq_handler(struct drm_i915_private *i915) +{ + void __iomem * const regs = i915->uncore.regs; + const u32 disp_ctl = raw_reg_read(regs, GEN11_DISPLAY_INT_CTL); + + disable_rpm_wakeref_asserts(&i915->runtime_pm); + /* + * GEN11_DISPLAY_INT_CTL has same format as GEN8_MASTER_IRQ + * for the display related bits. + */ + raw_reg_write(regs, GEN11_DISPLAY_INT_CTL, 0x0); + gen8_de_irq_handler(i915, disp_ctl); + raw_reg_write(regs, GEN11_DISPLAY_INT_CTL, + GEN11_DISPLAY_IRQ_ENABLE); + + enable_rpm_wakeref_asserts(&i915->runtime_pm); +} + static __always_inline irqreturn_t __gen11_irq_handler(struct drm_i915_private * const i915, u32 (*intr_disable)(void __iomem * const regs), @@ -2476,21 +2495,8 @@ __gen11_irq_handler(struct drm_i915_private * const i915, gen11_gt_irq_handler(gt, master_ctl); /* IRQs are synced during runtime_suspend, we don't require a wakeref */ - if (master_ctl & GEN11_DISPLAY_IRQ) { - const u32 disp_ctl = raw_reg_read(regs, GEN11_DISPLAY_INT_CTL); - - disable_rpm_wakeref_asserts(&i915->runtime_pm); - /* - * GEN11_DISPLAY_INT_CTL has same format as GEN8_MASTER_IRQ - * for the display related bits. - */ - raw_reg_write(regs, GEN11_DISPLAY_INT_CTL, 0x0); - gen8_de_irq_handler(i915, disp_ctl); - raw_reg_write(regs, GEN11_DISPLAY_INT_CTL, - GEN11_DISPLAY_IRQ_ENABLE); - - enable_rpm_wakeref_asserts(&i915->runtime_pm); - } + if (master_ctl & GEN11_DISPLAY_IRQ) + gen11_display_irq_handler(i915); gu_misc_iir = gen11_gu_misc_irq_ack(gt, master_ctl); @@ -2792,15 +2798,11 @@ static void gen8_irq_reset(struct drm_i915_private *dev_priv) ibx_irq_reset(dev_priv); } -static void gen11_irq_reset(struct drm_i915_private *dev_priv) +static void gen11_display_irq_reset(struct drm_i915_private *dev_priv) { struct intel_uncore *uncore = &dev_priv->uncore; enum pipe pipe; - gen11_master_intr_disable(dev_priv->uncore.regs); - - gen11_gt_irq_reset(&dev_priv->gt); - intel_uncore_write(uncore, GEN11_DISPLAY_INT_CTL, 0); if (INTEL_GEN(dev_priv) >= 12) { @@ -2829,13 +2831,24 @@ static void gen11_irq_reset(struct drm_i915_private *dev_priv) GEN3_IRQ_RESET(uncore, GEN8_DE_PORT_); GEN3_IRQ_RESET(uncore, GEN8_DE_MISC_); GEN3_IRQ_RESET(uncore, GEN11_DE_HPD_); - GEN3_IRQ_RESET(uncore, GEN11_GU_MISC_); - GEN3_IRQ_RESET(uncore, GEN8_PCU_); if (INTEL_PCH_TYPE(dev_priv) >= PCH_ICP) GEN3_IRQ_RESET(uncore, SDE); } +static void gen11_irq_reset(struct drm_i915_private *dev_priv) +{ + struct intel_uncore *uncore = &dev_priv->uncore; + + gen11_master_intr_disable(dev_priv->uncore.regs); + + gen11_gt_irq_reset(&dev_priv->gt); + gen11_display_irq_reset(dev_priv); + + GEN3_IRQ_RESET(uncore, GEN11_GU_MISC_); + GEN3_IRQ_RESET(uncore, GEN8_PCU_); +} + void gen8_irq_power_well_post_enable(struct drm_i915_private *dev_priv, u8 pipe_mask) {
Let's move handling and reset for gen11 display IRQs to their own functions, similar to how we deal with GT interrupts. This will make the top-level functions a bit easier to read and potentially make things easier to deal with in the future if new platforms wind up needing different display handling logic. Cc: Lucas De Marchi <lucas.demarchi@intel.com> Signed-off-by: Matt Roper <matthew.d.roper@intel.com> --- drivers/gpu/drm/i915/i915_irq.c | 57 ++++++++++++++++++++------------- 1 file changed, 35 insertions(+), 22 deletions(-)