* [Intel-gfx] [RFC] drm/i915/dp: PPS registers doesn't require AUX power
@ 2020-11-24 9:58 Anshuman Gupta
2020-11-24 12:09 ` [Intel-gfx] ✓ Fi.CI.BAT: success for " Patchwork
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: Anshuman Gupta @ 2020-11-24 9:58 UTC (permalink / raw)
To: intel-gfx; +Cc: stable
Platforms with South Display Engine on PCH, doesn't
require to get/put the AUX power domain in order to
access PPS register because PPS registers are always on
with South display on PCH.
Cc: Imre Deak <imre.deak@intel.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com>
---
drivers/gpu/drm/i915/display/intel_dp.c | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index 3896d08c4177..84a2c49e154c 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -872,8 +872,9 @@ pps_lock(struct intel_dp *intel_dp)
* See intel_power_sequencer_reset() why we need
* a power domain reference here.
*/
- wakeref = intel_display_power_get(dev_priv,
- intel_aux_power_domain(dp_to_dig_port(intel_dp)));
+ if (!HAS_PCH_SPLIT(dev_priv))
+ wakeref = intel_display_power_get(dev_priv,
+ intel_aux_power_domain(dp_to_dig_port(intel_dp)));
mutex_lock(&dev_priv->pps_mutex);
@@ -886,9 +887,11 @@ pps_unlock(struct intel_dp *intel_dp, intel_wakeref_t wakeref)
struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
mutex_unlock(&dev_priv->pps_mutex);
- intel_display_power_put(dev_priv,
- intel_aux_power_domain(dp_to_dig_port(intel_dp)),
- wakeref);
+
+ if (!HAS_PCH_SPLIT(dev_priv))
+ intel_display_power_put(dev_priv,
+ intel_aux_power_domain(dp_to_dig_port(intel_dp)),
+ wakeref);
return 0;
}
--
2.26.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 8+ messages in thread* [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/dp: PPS registers doesn't require AUX power 2020-11-24 9:58 [Intel-gfx] [RFC] drm/i915/dp: PPS registers doesn't require AUX power Anshuman Gupta @ 2020-11-24 12:09 ` Patchwork 2020-11-24 15:00 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork 2020-11-24 16:44 ` [Intel-gfx] [RFC] " Imre Deak 2 siblings, 0 replies; 8+ messages in thread From: Patchwork @ 2020-11-24 12:09 UTC (permalink / raw) To: Anshuman Gupta; +Cc: intel-gfx [-- Attachment #1.1: Type: text/plain, Size: 4070 bytes --] == Series Details == Series: drm/i915/dp: PPS registers doesn't require AUX power URL : https://patchwork.freedesktop.org/series/84201/ State : success == Summary == CI Bug Log - changes from CI_DRM_9382 -> Patchwork_18962 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/index.html New tests --------- New tests have been introduced between CI_DRM_9382 and Patchwork_18962: ### New CI tests (1) ### * boot: - Statuses : 39 pass(s) - Exec time: [0.0] s Known issues ------------ Here are the changes found in Patchwork_18962 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_mmap_gtt@basic: - fi-tgl-y: [PASS][1] -> [DMESG-WARN][2] ([i915#402]) +1 similar issue [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/fi-tgl-y/igt@gem_mmap_gtt@basic.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/fi-tgl-y/igt@gem_mmap_gtt@basic.html * igt@kms_busy@basic@flip: - fi-tgl-y: [PASS][3] -> [DMESG-WARN][4] ([i915#1982]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/fi-tgl-y/igt@kms_busy@basic@flip.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/fi-tgl-y/igt@kms_busy@basic@flip.html * igt@kms_chamelium@dp-crc-fast: - fi-cml-u2: [PASS][5] -> [DMESG-WARN][6] ([i915#1982]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/fi-cml-u2/igt@kms_chamelium@dp-crc-fast.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/fi-cml-u2/igt@kms_chamelium@dp-crc-fast.html #### Possible fixes #### * igt@gem_exec_create@basic: - fi-icl-u2: [INCOMPLETE][7] -> [PASS][8] [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/fi-icl-u2/igt@gem_exec_create@basic.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/fi-icl-u2/igt@gem_exec_create@basic.html * igt@i915_pm_rpm@module-reload: - fi-byt-j1900: [DMESG-WARN][9] ([i915#1982]) -> [PASS][10] [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/fi-byt-j1900/igt@i915_pm_rpm@module-reload.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/fi-byt-j1900/igt@i915_pm_rpm@module-reload.html * igt@kms_busy@basic@flip: - fi-kbl-soraka: [DMESG-WARN][11] ([i915#1982]) -> [PASS][12] [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/fi-kbl-soraka/igt@kms_busy@basic@flip.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/fi-kbl-soraka/igt@kms_busy@basic@flip.html * igt@prime_vgem@basic-fence-flip: - fi-tgl-y: [DMESG-WARN][13] ([i915#402]) -> [PASS][14] +1 similar issue [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/fi-tgl-y/igt@prime_vgem@basic-fence-flip.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/fi-tgl-y/igt@prime_vgem@basic-fence-flip.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982 [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402 Participating hosts (42 -> 39) ------------------------------ Additional (1): fi-blb-e6850 Missing (4): fi-ilk-m540 fi-bsw-cyan fi-bdw-samus fi-hsw-4200u Build changes ------------- * Linux: CI_DRM_9382 -> Patchwork_18962 CI-20190529: 20190529 CI_DRM_9382: ac60f3f3090115d21f028bffa2dcfb67f695c4f2 @ git://anongit.freedesktop.org/gfx-ci/linux IGT_5869: 5236e5d4be3ab5e2fedacc32152120b7fb77bf9f @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_18962: 0fc838333ce0e97b2f0e1beb26546b3dba32eb57 @ git://anongit.freedesktop.org/gfx-ci/linux == Linux commits == 0fc838333ce0 drm/i915/dp: PPS registers doesn't require AUX power == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/index.html [-- Attachment #1.2: Type: text/html, Size: 5166 bytes --] [-- Attachment #2: Type: text/plain, Size: 160 bytes --] _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915/dp: PPS registers doesn't require AUX power 2020-11-24 9:58 [Intel-gfx] [RFC] drm/i915/dp: PPS registers doesn't require AUX power Anshuman Gupta 2020-11-24 12:09 ` [Intel-gfx] ✓ Fi.CI.BAT: success for " Patchwork @ 2020-11-24 15:00 ` Patchwork 2020-11-24 16:44 ` [Intel-gfx] [RFC] " Imre Deak 2 siblings, 0 replies; 8+ messages in thread From: Patchwork @ 2020-11-24 15:00 UTC (permalink / raw) To: Anshuman Gupta; +Cc: intel-gfx [-- Attachment #1.1: Type: text/plain, Size: 18800 bytes --] == Series Details == Series: drm/i915/dp: PPS registers doesn't require AUX power URL : https://patchwork.freedesktop.org/series/84201/ State : failure == Summary == CI Bug Log - changes from CI_DRM_9382_full -> Patchwork_18962_full ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with Patchwork_18962_full absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in Patchwork_18962_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_18962_full: ### IGT changes ### #### Possible regressions #### * igt@gem_eio@in-flight-1us: - shard-skl: NOTRUN -> [FAIL][1] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-skl2/igt@gem_eio@in-flight-1us.html * igt@gem_eio@in-flight-internal-immediate: - shard-glk: NOTRUN -> [FAIL][2] [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-glk8/igt@gem_eio@in-flight-internal-immediate.html * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-indfb-plflip-blt: - shard-glk: [PASS][3] -> [FAIL][4] [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-glk2/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-indfb-plflip-blt.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-glk9/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-indfb-plflip-blt.html #### Warnings #### * igt@i915_pm_rc6_residency@rc6-idle: - shard-iclb: [WARN][5] ([i915#2681]) -> [WARN][6] [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-iclb1/igt@i915_pm_rc6_residency@rc6-idle.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-iclb2/igt@i915_pm_rc6_residency@rc6-idle.html New tests --------- New tests have been introduced between CI_DRM_9382_full and Patchwork_18962_full: ### New CI tests (1) ### * boot: - Statuses : 175 pass(s) - Exec time: [0.0] s Known issues ------------ Here are the changes found in Patchwork_18962_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_exec_whisper@basic-normal-all: - shard-glk: [PASS][7] -> [DMESG-WARN][8] ([i915#118] / [i915#95]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-glk8/igt@gem_exec_whisper@basic-normal-all.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-glk6/igt@gem_exec_whisper@basic-normal-all.html * igt@i915_pm_rc6_residency@rc6-fence: - shard-tglb: [PASS][9] -> [WARN][10] ([i915#2681]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-tglb7/igt@i915_pm_rc6_residency@rc6-fence.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-tglb3/igt@i915_pm_rc6_residency@rc6-fence.html * igt@kms_cursor_crc@pipe-c-cursor-128x42-sliding: - shard-skl: [PASS][11] -> [FAIL][12] ([i915#54]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-skl9/igt@kms_cursor_crc@pipe-c-cursor-128x42-sliding.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-skl3/igt@kms_cursor_crc@pipe-c-cursor-128x42-sliding.html * igt@kms_cursor_edge_walk@pipe-c-256x256-bottom-edge: - shard-skl: [PASS][13] -> [DMESG-WARN][14] ([i915#1982]) +8 similar issues [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-skl1/igt@kms_cursor_edge_walk@pipe-c-256x256-bottom-edge.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-skl5/igt@kms_cursor_edge_walk@pipe-c-256x256-bottom-edge.html * igt@kms_cursor_edge_walk@pipe-c-64x64-top-edge: - shard-apl: [PASS][15] -> [DMESG-WARN][16] ([i915#1635] / [i915#1982]) +2 similar issues [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-apl6/igt@kms_cursor_edge_walk@pipe-c-64x64-top-edge.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-apl4/igt@kms_cursor_edge_walk@pipe-c-64x64-top-edge.html * igt@kms_flip@flip-vs-expired-vblank-interruptible@c-hdmi-a1: - shard-glk: [PASS][17] -> [FAIL][18] ([i915#79]) [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-glk9/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-hdmi-a1.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-glk4/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-hdmi-a1.html * igt@kms_flip@flip-vs-expired-vblank@a-edp1: - shard-skl: [PASS][19] -> [FAIL][20] ([i915#79]) +1 similar issue [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-skl6/igt@kms_flip@flip-vs-expired-vblank@a-edp1.html [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-skl2/igt@kms_flip@flip-vs-expired-vblank@a-edp1.html * igt@kms_flip@flip-vs-expired-vblank@b-edp1: - shard-skl: [PASS][21] -> [FAIL][22] ([i915#2122]) [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-skl6/igt@kms_flip@flip-vs-expired-vblank@b-edp1.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-skl2/igt@kms_flip@flip-vs-expired-vblank@b-edp1.html * igt@kms_frontbuffer_tracking@psr-rgb101010-draw-pwrite: - shard-tglb: [PASS][23] -> [DMESG-WARN][24] ([i915#1982]) [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-tglb3/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-pwrite.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-tglb1/igt@kms_frontbuffer_tracking@psr-rgb101010-draw-pwrite.html * igt@kms_hdr@bpc-switch-dpms: - shard-skl: [PASS][25] -> [FAIL][26] ([i915#1188]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-skl9/igt@kms_hdr@bpc-switch-dpms.html [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-skl3/igt@kms_hdr@bpc-switch-dpms.html * igt@kms_psr2_su@frontbuffer: - shard-iclb: [PASS][27] -> [SKIP][28] ([fdo#109642] / [fdo#111068]) [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-iclb2/igt@kms_psr2_su@frontbuffer.html [28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-iclb4/igt@kms_psr2_su@frontbuffer.html * igt@kms_psr@psr2_basic: - shard-iclb: [PASS][29] -> [SKIP][30] ([fdo#109441]) +2 similar issues [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-iclb2/igt@kms_psr@psr2_basic.html [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-iclb4/igt@kms_psr@psr2_basic.html * igt@kms_vblank@pipe-c-wait-busy: - shard-kbl: [PASS][31] -> [DMESG-WARN][32] ([i915#1982]) [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-kbl4/igt@kms_vblank@pipe-c-wait-busy.html [32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-kbl1/igt@kms_vblank@pipe-c-wait-busy.html * igt@sysfs_preempt_timeout@timeout@rcs0: - shard-skl: [PASS][33] -> [FAIL][34] ([i915#2060]) +2 similar issues [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-skl3/igt@sysfs_preempt_timeout@timeout@rcs0.html [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-skl6/igt@sysfs_preempt_timeout@timeout@rcs0.html * igt@sysfs_timeslice_duration@timeout@bcs0: - shard-skl: [PASS][35] -> [FAIL][36] ([i915#1732]) [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-skl2/igt@sysfs_timeslice_duration@timeout@bcs0.html [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-skl10/igt@sysfs_timeslice_duration@timeout@bcs0.html #### Possible fixes #### * igt@gem_ctx_isolation@preservation-s3@vecs0: - shard-kbl: [DMESG-WARN][37] ([i915#180]) -> [PASS][38] [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-kbl1/igt@gem_ctx_isolation@preservation-s3@vecs0.html [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-kbl2/igt@gem_ctx_isolation@preservation-s3@vecs0.html * igt@i915_pm_dc@dc6-psr: - shard-iclb: [FAIL][39] ([i915#454]) -> [PASS][40] [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-iclb6/igt@i915_pm_dc@dc6-psr.html [40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-iclb2/igt@i915_pm_dc@dc6-psr.html * igt@i915_selftest@live@execlists: - shard-skl: [INCOMPLETE][41] ([CI#80]) -> [PASS][42] [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-skl2/igt@i915_selftest@live@execlists.html [42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-skl4/igt@i915_selftest@live@execlists.html * igt@kms_big_fb@x-tiled-16bpp-rotate-180: - shard-kbl: [DMESG-WARN][43] ([i915#1982]) -> [PASS][44] [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-kbl4/igt@kms_big_fb@x-tiled-16bpp-rotate-180.html [44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-kbl6/igt@kms_big_fb@x-tiled-16bpp-rotate-180.html * igt@kms_busy@basic-flip-pipe-c: - shard-skl: [DMESG-WARN][45] ([i915#1982]) -> [PASS][46] +2 similar issues [45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-skl2/igt@kms_busy@basic-flip-pipe-c.html [46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-skl10/igt@kms_busy@basic-flip-pipe-c.html * igt@kms_cursor_crc@pipe-b-cursor-suspend: - shard-skl: [FAIL][47] ([i915#54]) -> [PASS][48] +1 similar issue [47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-skl3/igt@kms_cursor_crc@pipe-b-cursor-suspend.html [48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-skl8/igt@kms_cursor_crc@pipe-b-cursor-suspend.html * igt@kms_cursor_edge_walk@pipe-b-64x64-right-edge: - shard-glk: [DMESG-WARN][49] ([i915#1982]) -> [PASS][50] +3 similar issues [49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-glk2/igt@kms_cursor_edge_walk@pipe-b-64x64-right-edge.html [50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-glk9/igt@kms_cursor_edge_walk@pipe-b-64x64-right-edge.html * igt@kms_frontbuffer_tracking@fbc-stridechange: - shard-tglb: [DMESG-WARN][51] ([i915#1982]) -> [PASS][52] +1 similar issue [51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-tglb1/igt@kms_frontbuffer_tracking@fbc-stridechange.html [52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-tglb7/igt@kms_frontbuffer_tracking@fbc-stridechange.html * igt@kms_hdr@bpc-switch-suspend: - shard-skl: [FAIL][53] ([i915#1188]) -> [PASS][54] [53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-skl3/igt@kms_hdr@bpc-switch-suspend.html [54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-skl8/igt@kms_hdr@bpc-switch-suspend.html * igt@kms_pipe_crc_basic@read-crc-pipe-b-frame-sequence: - shard-apl: [DMESG-WARN][55] ([i915#1635] / [i915#1982]) -> [PASS][56] +1 similar issue [55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-apl1/igt@kms_pipe_crc_basic@read-crc-pipe-b-frame-sequence.html [56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-apl7/igt@kms_pipe_crc_basic@read-crc-pipe-b-frame-sequence.html * igt@kms_plane_alpha_blend@pipe-b-coverage-7efc: - shard-skl: [DMESG-FAIL][57] ([fdo#108145] / [i915#1982]) -> [PASS][58] [57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-skl3/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html [58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-skl8/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html * igt@kms_psr@psr2_primary_mmap_cpu: - shard-iclb: [SKIP][59] ([fdo#109441]) -> [PASS][60] +2 similar issues [59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-iclb6/igt@kms_psr@psr2_primary_mmap_cpu.html [60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-iclb2/igt@kms_psr@psr2_primary_mmap_cpu.html * igt@prime_vgem@coherency-blt: - shard-tglb: [INCOMPLETE][61] -> [PASS][62] [61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-tglb1/igt@prime_vgem@coherency-blt.html [62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-tglb7/igt@prime_vgem@coherency-blt.html #### Warnings #### * igt@i915_pm_rc6_residency@rc6-fence: - shard-iclb: [WARN][63] ([i915#2684]) -> [WARN][64] ([i915#1804] / [i915#2684]) [63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-iclb2/igt@i915_pm_rc6_residency@rc6-fence.html [64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-iclb4/igt@i915_pm_rc6_residency@rc6-fence.html * igt@kms_flip@plain-flip-ts-check-interruptible@a-edp1: - shard-skl: [DMESG-FAIL][65] ([i915#1982]) -> [DMESG-WARN][66] ([i915#1982]) [65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-skl3/igt@kms_flip@plain-flip-ts-check-interruptible@a-edp1.html [66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-skl8/igt@kms_flip@plain-flip-ts-check-interruptible@a-edp1.html * igt@kms_psr@psr2_suspend: - shard-tglb: [INCOMPLETE][67] ([i915#1436] / [i915#1602] / [i915#1887] / [i915#2411] / [i915#456]) -> [DMESG-WARN][68] ([i915#1436] / [i915#1602] / [i915#1887] / [i915#2411]) [67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-tglb5/igt@kms_psr@psr2_suspend.html [68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-tglb8/igt@kms_psr@psr2_suspend.html * igt@runner@aborted: - shard-glk: ([FAIL][69], [FAIL][70]) ([i915#1814] / [i915#2295] / [i915#483] / [k.org#202321]) -> [FAIL][71] ([i915#2295] / [k.org#202321]) [69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-glk7/igt@runner@aborted.html [70]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-glk8/igt@runner@aborted.html [71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-glk1/igt@runner@aborted.html - shard-tglb: ([FAIL][72], [FAIL][73], [FAIL][74], [FAIL][75]) ([i915#1602] / [i915#1814] / [i915#2295] / [i915#2426] / [i915#409]) -> ([FAIL][76], [FAIL][77], [FAIL][78]) ([i915#1602] / [i915#1814] / [i915#2295]) [72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-tglb5/igt@runner@aborted.html [73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-tglb6/igt@runner@aborted.html [74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-tglb1/igt@runner@aborted.html [75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-tglb7/igt@runner@aborted.html [76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-tglb2/igt@runner@aborted.html [77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-tglb5/igt@runner@aborted.html [78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-tglb8/igt@runner@aborted.html - shard-skl: [FAIL][79] ([i915#2295]) -> ([FAIL][80], [FAIL][81], [FAIL][82]) ([i915#1814] / [i915#2029] / [i915#2295]) [79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9382/shard-skl8/igt@runner@aborted.html [80]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-skl8/igt@runner@aborted.html [81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-skl3/igt@runner@aborted.html [82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18962/shard-skl10/igt@runner@aborted.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [CI#80]: https://gitlab.freedesktop.org/gfx-ci/i915-infra/issues/80 [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145 [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441 [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642 [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068 [i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118 [i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188 [i915#1436]: https://gitlab.freedesktop.org/drm/intel/issues/1436 [i915#1602]: https://gitlab.freedesktop.org/drm/intel/issues/1602 [i915#1635]: https://gitlab.freedesktop.org/drm/intel/issues/1635 [i915#1732]: https://gitlab.freedesktop.org/drm/intel/issues/1732 [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180 [i915#1804]: https://gitlab.freedesktop.org/drm/intel/issues/1804 [i915#1814]: https://gitlab.freedesktop.org/drm/intel/issues/1814 [i915#1887]: https://gitlab.freedesktop.org/drm/intel/issues/1887 [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982 [i915#2029]: https://gitlab.freedesktop.org/drm/intel/issues/2029 [i915#2060]: https://gitlab.freedesktop.org/drm/intel/issues/2060 [i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122 [i915#2295]: https://gitlab.freedesktop.org/drm/intel/issues/2295 [i915#2369]: https://gitlab.freedesktop.org/drm/intel/issues/2369 [i915#2411]: https://gitlab.freedesktop.org/drm/intel/issues/2411 [i915#2426]: https://gitlab.freedesktop.org/drm/intel/issues/2426 [i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681 [i915#2684]: https://gitlab.freedesktop.org/drm/intel/issues/2684 [i915#409]: https://gitlab.freedesktop.org/drm/intel/issues/409 [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454 [i915#456]: https://gitlab.freedesktop.org/drm/intel/issues/456 [i915#483]: https://gitlab.freedesktop.org/drm/intel/issues/483 [i915#54]: https://gitlab.freedesktop.org/drm/intel/issues/54 [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79 [i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95 [k.org#202321]: https://bugzilla.kernel.org/show_bug.cgi?id=202321 Participating hosts (10 -> 10) ------------------------------ No changes in participating hosts Build changes ------------- * Linux: CI_DRM_9382 -> Patchwork_18962 CI-20190529: 20190529 CI_DRM_9382: ac60f3f3090115d21f028bffa2dcfb67f695c4f2 @ git://anongit.freedesktop.org/gfx-ci/linux IGT_5869: 5236e5d4be3ab5e2fedacc32152120b7fb77bf9f @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_18962: 0fc838333ce0e97b2f0e1beb26546b3dba32eb57 @ 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_18962/index.html [-- Attachment #1.2: Type: text/html, Size: 22769 bytes --] [-- Attachment #2: Type: text/plain, Size: 160 bytes --] _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Intel-gfx] [RFC] drm/i915/dp: PPS registers doesn't require AUX power 2020-11-24 9:58 [Intel-gfx] [RFC] drm/i915/dp: PPS registers doesn't require AUX power Anshuman Gupta 2020-11-24 12:09 ` [Intel-gfx] ✓ Fi.CI.BAT: success for " Patchwork 2020-11-24 15:00 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork @ 2020-11-24 16:44 ` Imre Deak 2020-11-25 7:46 ` Anshuman Gupta 2 siblings, 1 reply; 8+ messages in thread From: Imre Deak @ 2020-11-24 16:44 UTC (permalink / raw) To: Anshuman Gupta; +Cc: intel-gfx, stable On Tue, Nov 24, 2020 at 03:28:47PM +0530, Anshuman Gupta wrote: > Platforms with South Display Engine on PCH, doesn't > require to get/put the AUX power domain in order to > access PPS register because PPS registers are always on > with South display on PCH. > > Cc: Imre Deak <imre.deak@intel.com> > Cc: <stable@vger.kernel.org> > Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com> Could you describe the issue the patch is fixing? For accessing PPS registers the AUX power well may not be needed, but I'm not sure if this also applies to PPS functionality in general. For instance forcing VDD is required for AUX functionality. In any case we do need a power reference for any register access, so I don't think not getting any power reference for PPS is ok. --Imre > --- > drivers/gpu/drm/i915/display/intel_dp.c | 13 ++++++++----- > 1 file changed, 8 insertions(+), 5 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c > index 3896d08c4177..84a2c49e154c 100644 > --- a/drivers/gpu/drm/i915/display/intel_dp.c > +++ b/drivers/gpu/drm/i915/display/intel_dp.c > @@ -872,8 +872,9 @@ pps_lock(struct intel_dp *intel_dp) > * See intel_power_sequencer_reset() why we need > * a power domain reference here. > */ > - wakeref = intel_display_power_get(dev_priv, > - intel_aux_power_domain(dp_to_dig_port(intel_dp))); > + if (!HAS_PCH_SPLIT(dev_priv)) > + wakeref = intel_display_power_get(dev_priv, > + intel_aux_power_domain(dp_to_dig_port(intel_dp))); > > mutex_lock(&dev_priv->pps_mutex); > > @@ -886,9 +887,11 @@ pps_unlock(struct intel_dp *intel_dp, intel_wakeref_t wakeref) > struct drm_i915_private *dev_priv = dp_to_i915(intel_dp); > > mutex_unlock(&dev_priv->pps_mutex); > - intel_display_power_put(dev_priv, > - intel_aux_power_domain(dp_to_dig_port(intel_dp)), > - wakeref); > + > + if (!HAS_PCH_SPLIT(dev_priv)) > + intel_display_power_put(dev_priv, > + intel_aux_power_domain(dp_to_dig_port(intel_dp)), > + wakeref); > return 0; > } > > -- > 2.26.2 > _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Intel-gfx] [RFC] drm/i915/dp: PPS registers doesn't require AUX power 2020-11-24 16:44 ` [Intel-gfx] [RFC] " Imre Deak @ 2020-11-25 7:46 ` Anshuman Gupta 2020-11-25 16:24 ` Imre Deak 0 siblings, 1 reply; 8+ messages in thread From: Anshuman Gupta @ 2020-11-25 7:46 UTC (permalink / raw) To: Imre Deak; +Cc: intel-gfx, stable On 2020-11-24 at 18:44:06 +0200, Imre Deak wrote: > On Tue, Nov 24, 2020 at 03:28:47PM +0530, Anshuman Gupta wrote: > > Platforms with South Display Engine on PCH, doesn't > > require to get/put the AUX power domain in order to > > access PPS register because PPS registers are always on > > with South display on PCH. > > > > Cc: Imre Deak <imre.deak@intel.com> > > Cc: <stable@vger.kernel.org> > > Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com> > > Could you describe the issue the patch is fixing? This fixes the display glitches causes by race between brightness update thread and flip thread. while brightness is being updated it reads pp_ctrl reg to check whether backlight is enabled and get/put the AUX power domain, this enables and disable DC Off power well(DC3CO) back and forth. IMO there are two work item for above race needed to be addressed. 1. Don't get AUX power for PPS register access (this patch addressed this). 2. skl_program_plane() should wait for DC3CO exit delay to avoid any race with DC3CO disable sequence. (WIP) > > For accessing PPS registers the AUX power well may not be needed, but > I'm not sure if this also applies to PPS functionality in general. For > instance forcing VDD is required for AUX functionality. AFAIU edp_panel_vdd_on explicitly get AUX power in order to force the VDD. > > In any case we do need a power reference for any register access, so I > don't think not getting any power reference for PPS is ok. IMO if PPS register lies in PCH(South Display), it is not correct to take any power domain which are associated with north display power wells. This patch is inspired from the comment in pps_lock, quoting that "See intel_power_sequencer_reset() why we need a power domain reference here." intel_power_sequencer_reset is not being called for platforms with split PCH, stating that PPS registers are always on. https://patchwork.freedesktop.org/patch/259077/ ((v4: (James Ausmus))) Could you please provide your opinion to use intel_runtime_pm_get() before accessing PPS register in order to get a wakeref. Thanks, Anshuman Gupta. > > --Imre > > > --- > > drivers/gpu/drm/i915/display/intel_dp.c | 13 ++++++++----- > > 1 file changed, 8 insertions(+), 5 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c > > index 3896d08c4177..84a2c49e154c 100644 > > --- a/drivers/gpu/drm/i915/display/intel_dp.c > > +++ b/drivers/gpu/drm/i915/display/intel_dp.c > > @@ -872,8 +872,9 @@ pps_lock(struct intel_dp *intel_dp) > > * See intel_power_sequencer_reset() why we need > > * a power domain reference here. > > */ > > - wakeref = intel_display_power_get(dev_priv, > > - intel_aux_power_domain(dp_to_dig_port(intel_dp))); > > + if (!HAS_PCH_SPLIT(dev_priv)) > > + wakeref = intel_display_power_get(dev_priv, > > + intel_aux_power_domain(dp_to_dig_port(intel_dp))); > > > > mutex_lock(&dev_priv->pps_mutex); > > > > @@ -886,9 +887,11 @@ pps_unlock(struct intel_dp *intel_dp, intel_wakeref_t wakeref) > > struct drm_i915_private *dev_priv = dp_to_i915(intel_dp); > > > > mutex_unlock(&dev_priv->pps_mutex); > > - intel_display_power_put(dev_priv, > > - intel_aux_power_domain(dp_to_dig_port(intel_dp)), > > - wakeref); > > + > > + if (!HAS_PCH_SPLIT(dev_priv)) > > + intel_display_power_put(dev_priv, > > + intel_aux_power_domain(dp_to_dig_port(intel_dp)), > > + wakeref); > > return 0; > > } > > > > -- > > 2.26.2 > > _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Intel-gfx] [RFC] drm/i915/dp: PPS registers doesn't require AUX power 2020-11-25 7:46 ` Anshuman Gupta @ 2020-11-25 16:24 ` Imre Deak 2020-11-26 9:39 ` Anshuman Gupta 0 siblings, 1 reply; 8+ messages in thread From: Imre Deak @ 2020-11-25 16:24 UTC (permalink / raw) To: Anshuman Gupta, Ville Syrjälä; +Cc: intel-gfx, stable +Ville. On Wed, Nov 25, 2020 at 01:16:27PM +0530, Anshuman Gupta wrote: > On 2020-11-24 at 18:44:06 +0200, Imre Deak wrote: > > On Tue, Nov 24, 2020 at 03:28:47PM +0530, Anshuman Gupta wrote: > > > Platforms with South Display Engine on PCH, doesn't > > > require to get/put the AUX power domain in order to > > > access PPS register because PPS registers are always on > > > with South display on PCH. > > > > > > Cc: Imre Deak <imre.deak@intel.com> > > > Cc: <stable@vger.kernel.org> > > > Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com> > > > > Could you describe the issue the patch is fixing? > > This fixes the display glitches causes by race between brightness > update thread and flip thread. Flips should work even with asynchronous DC3co (or any DC state) disabling, at least according to the spec the HW handles this. Only modesetting and AUX transfers have restriction wrt. DC state handling (where DC states need to get disabled). I think the exact restriction needs to be clarified with HW people: Is only the DC3co disable -> flip or also the opposite sequence problematic? Is it only DC3co or also DC5/6 affected? > While brightness is being updated it reads pp_ctrl reg to check > whether backlight is enabled and get/put the AUX power domain, this > enables and disable DC Off power well(DC3CO) back and forth. > > IMO there are two work item for above race needed to be addressed. > 1. Don't get AUX power for PPS register access (this patch addressed this). > 2. skl_program_plane() should wait for DC3CO exit delay to avoid any race with > DC3CO disable sequence. (WIP) DC states can be disabled asynchronously with a flip modeset, not only for panel brightness setting, but also AUX transfers for instance. So I think we'd need to add locking against DC state changes to intel_pipe_update_start()/end(). Probably the easiest would be to use the power_domains->lock for this. --Imre _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Intel-gfx] [RFC] drm/i915/dp: PPS registers doesn't require AUX power 2020-11-25 16:24 ` Imre Deak @ 2020-11-26 9:39 ` Anshuman Gupta 2020-11-26 13:52 ` Ville Syrjälä 0 siblings, 1 reply; 8+ messages in thread From: Anshuman Gupta @ 2020-11-26 9:39 UTC (permalink / raw) To: Imre Deak; +Cc: intel-gfx, stable On 2020-11-25 at 18:24:44 +0200, Imre Deak wrote: > +Ville. Hi Ville , Let me provide you some context over the issue which requires your input. TGL on chorome OS has observed some display glitches when brightness is being updated at very fast rate. This has surfaced out two issue. 1. Getting the AUX power when accessing the PPS registers on platform with split PCH. 2. The race between DC3CO disabling delay and flips. (B.Spec says 200us dc3co exit delay) I will send a separate RFC patch to fix this issue. Current patch is addressing issue1, IMHO it is unnecessary to take AUX power for pps register read for checking whether backlight was enabled. This is causing flip to race with DC3CO exit delay. Could you please provide your input to this . Thanks, Anshuman Gupta. > > On Wed, Nov 25, 2020 at 01:16:27PM +0530, Anshuman Gupta wrote: > > On 2020-11-24 at 18:44:06 +0200, Imre Deak wrote: > > > On Tue, Nov 24, 2020 at 03:28:47PM +0530, Anshuman Gupta wrote: > > > > Platforms with South Display Engine on PCH, doesn't > > > > require to get/put the AUX power domain in order to > > > > access PPS register because PPS registers are always on > > > > with South display on PCH. > > > > > > > > Cc: Imre Deak <imre.deak@intel.com> > > > > Cc: <stable@vger.kernel.org> > > > > Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com> > > > > > > Could you describe the issue the patch is fixing? > > > > This fixes the display glitches causes by race between brightness > > update thread and flip thread. > > Flips should work even with asynchronous DC3co (or any DC state) > disabling, at least according to the spec the HW handles this. Only > modesetting and AUX transfers have restriction wrt. DC state handling > (where DC states need to get disabled). > > I think the exact restriction needs to be clarified with HW people: Is > only the DC3co disable -> flip or also the opposite sequence > problematic? Is it only DC3co or also DC5/6 affected? > > > While brightness is being updated it reads pp_ctrl reg to check > > whether backlight is enabled and get/put the AUX power domain, this > > enables and disable DC Off power well(DC3CO) back and forth. > > > > IMO there are two work item for above race needed to be addressed. > > 1. Don't get AUX power for PPS register access (this patch addressed this). > > 2. skl_program_plane() should wait for DC3CO exit delay to avoid any race with > > DC3CO disable sequence. (WIP) > > DC states can be disabled asynchronously with a flip modeset, not only > for panel brightness setting, but also AUX transfers for instance. So I > think we'd need to add locking against DC state changes to > intel_pipe_update_start()/end(). Probably the easiest would be to use > the power_domains->lock for this. > > --Imre _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Intel-gfx] [RFC] drm/i915/dp: PPS registers doesn't require AUX power 2020-11-26 9:39 ` Anshuman Gupta @ 2020-11-26 13:52 ` Ville Syrjälä 0 siblings, 0 replies; 8+ messages in thread From: Ville Syrjälä @ 2020-11-26 13:52 UTC (permalink / raw) To: Anshuman Gupta; +Cc: intel-gfx, stable On Thu, Nov 26, 2020 at 03:09:50PM +0530, Anshuman Gupta wrote: > On 2020-11-25 at 18:24:44 +0200, Imre Deak wrote: > > +Ville. > Hi Ville , > Let me provide you some context over the issue which requires your input. > TGL on chorome OS has observed some display glitches when brightness is being updated > at very fast rate. This has surfaced out two issue. > 1. Getting the AUX power when accessing the PPS registers on platform with split PCH. There can be all kinds of reasons for taking the AUX power domain. If that somehow causes display glitches then someone needs to figure out why and fix it. This looks like just duct tape over one specific case. > 2. The race between DC3CO disabling delay and flips. (B.Spec says 200us dc3co exit delay) > I will send a separate RFC patch to fix this issue. > > Current patch is addressing issue1, > IMHO it is unnecessary to take AUX power for pps register read for checking > whether backlight was enabled. This is causing flip to race with > DC3CO exit delay. > Could you please provide your input to this . > > Thanks, > Anshuman Gupta. > > > > On Wed, Nov 25, 2020 at 01:16:27PM +0530, Anshuman Gupta wrote: > > > On 2020-11-24 at 18:44:06 +0200, Imre Deak wrote: > > > > On Tue, Nov 24, 2020 at 03:28:47PM +0530, Anshuman Gupta wrote: > > > > > Platforms with South Display Engine on PCH, doesn't > > > > > require to get/put the AUX power domain in order to > > > > > access PPS register because PPS registers are always on > > > > > with South display on PCH. > > > > > > > > > > Cc: Imre Deak <imre.deak@intel.com> > > > > > Cc: <stable@vger.kernel.org> > > > > > Signed-off-by: Anshuman Gupta <anshuman.gupta@intel.com> > > > > > > > > Could you describe the issue the patch is fixing? > > > > > > This fixes the display glitches causes by race between brightness > > > update thread and flip thread. > > > > Flips should work even with asynchronous DC3co (or any DC state) > > disabling, at least according to the spec the HW handles this. Only > > modesetting and AUX transfers have restriction wrt. DC state handling > > (where DC states need to get disabled). > > > > I think the exact restriction needs to be clarified with HW people: Is > > only the DC3co disable -> flip or also the opposite sequence > > problematic? Is it only DC3co or also DC5/6 affected? > > > > > While brightness is being updated it reads pp_ctrl reg to check > > > whether backlight is enabled and get/put the AUX power domain, this > > > enables and disable DC Off power well(DC3CO) back and forth. > > > > > > IMO there are two work item for above race needed to be addressed. > > > 1. Don't get AUX power for PPS register access (this patch addressed this). > > > 2. skl_program_plane() should wait for DC3CO exit delay to avoid any race with > > > DC3CO disable sequence. (WIP) > > > > DC states can be disabled asynchronously with a flip modeset, not only > > for panel brightness setting, but also AUX transfers for instance. So I > > think we'd need to add locking against DC state changes to > > intel_pipe_update_start()/end(). Probably the easiest would be to use > > the power_domains->lock for this. > > > > --Imre -- Ville Syrjälä Intel _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2020-11-26 13:52 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2020-11-24 9:58 [Intel-gfx] [RFC] drm/i915/dp: PPS registers doesn't require AUX power Anshuman Gupta 2020-11-24 12:09 ` [Intel-gfx] ✓ Fi.CI.BAT: success for " Patchwork 2020-11-24 15:00 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork 2020-11-24 16:44 ` [Intel-gfx] [RFC] " Imre Deak 2020-11-25 7:46 ` Anshuman Gupta 2020-11-25 16:24 ` Imre Deak 2020-11-26 9:39 ` Anshuman Gupta 2020-11-26 13:52 ` Ville Syrjälä
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox