* [Intel-gfx] [PATCH] drm/i915/display: Add an extra vblank wait before fbc activation
@ 2020-08-17 7:44 Uma Shankar
2020-08-17 7:44 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for " Patchwork
2020-08-24 18:16 ` [Intel-gfx] [PATCH] " Ville Syrjälä
0 siblings, 2 replies; 5+ messages in thread
From: Uma Shankar @ 2020-08-17 7:44 UTC (permalink / raw)
To: intel-gfx
Add an extra vblank before fbc is activated.
WA: 1409689360
Corruption with FBC around plane 1A enabling. In the Frame Buffer
Compression programming sequence "Display Plane Enabling with FBC"
add a wait for vblank between plane enabling step 1 and FBC enabling
step 2.
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
Signed-off-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>
---
drivers/gpu/drm/i915/display/intel_fbc.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_fbc.c b/drivers/gpu/drm/i915/display/intel_fbc.c
index 2ab32e6532ff..0ed252ff2c53 100644
--- a/drivers/gpu/drm/i915/display/intel_fbc.c
+++ b/drivers/gpu/drm/i915/display/intel_fbc.c
@@ -1085,10 +1085,12 @@ static void __intel_fbc_post_update(struct intel_crtc *crtc)
if (!intel_fbc_can_activate(crtc))
return;
- if (!fbc->busy_bits)
+ if (!fbc->busy_bits) {
+ intel_wait_for_vblank(dev_priv, crtc->pipe);
intel_fbc_hw_activate(dev_priv);
- else
+ } else {
intel_fbc_deactivate(dev_priv, "frontbuffer write");
+ }
}
void intel_fbc_post_update(struct intel_atomic_state *state,
--
2.22.0
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915/display: Add an extra vblank wait before fbc activation
2020-08-17 7:44 [Intel-gfx] [PATCH] drm/i915/display: Add an extra vblank wait before fbc activation Uma Shankar
@ 2020-08-17 7:44 ` Patchwork
2020-08-24 18:16 ` [Intel-gfx] [PATCH] " Ville Syrjälä
1 sibling, 0 replies; 5+ messages in thread
From: Patchwork @ 2020-08-17 7:44 UTC (permalink / raw)
To: Uma Shankar; +Cc: intel-gfx
[-- Attachment #1.1: Type: text/plain, Size: 14422 bytes --]
== Series Details ==
Series: drm/i915/display: Add an extra vblank wait before fbc activation
URL : https://patchwork.freedesktop.org/series/80668/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_8887 -> Patchwork_18362
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_18362 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_18362, 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_18362/index.html
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_18362:
### IGT changes ###
#### Possible regressions ####
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- fi-icl-y: [PASS][1] -> [FAIL][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-icl-y/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-icl-y/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
- fi-cml-u2: [PASS][3] -> [FAIL][4] +1 similar issue
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-cml-u2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-cml-u2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
- fi-cfl-8700k: [PASS][5] -> [FAIL][6]
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-cfl-8700k/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-cfl-8700k/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- fi-cfl-8109u: [PASS][7] -> [FAIL][8] +1 similar issue
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-cfl-8109u/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-cfl-8109u/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
- fi-skl-lmem: [PASS][9] -> [FAIL][10] +1 similar issue
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-skl-lmem/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-skl-lmem/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
- fi-kbl-7500u: [PASS][11] -> [FAIL][12] +1 similar issue
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-kbl-7500u/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-kbl-7500u/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- {fi-kbl-7560u}: [PASS][13] -> [FAIL][14]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-kbl-7560u/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-kbl-7560u/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- {fi-ehl-1}: [PASS][15] -> [FAIL][16] +1 similar issue
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-ehl-1/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-ehl-1/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
Known issues
------------
Here are the changes found in Patchwork_18362 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@kms_busy@basic@flip:
- fi-kbl-x1275: [PASS][17] -> [DMESG-WARN][18] ([i915#62] / [i915#92] / [i915#95])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-kbl-x1275/igt@kms_busy@basic@flip.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-kbl-x1275/igt@kms_busy@basic@flip.html
* igt@kms_chamelium@hdmi-edid-read:
- fi-kbl-7500u: [PASS][19] -> [DMESG-FAIL][20] ([i915#165])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-kbl-7500u/igt@kms_chamelium@hdmi-edid-read.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-kbl-7500u/igt@kms_chamelium@hdmi-edid-read.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- fi-bxt-dsi: [PASS][21] -> [FAIL][22] ([i915#1635]) +1 similar issue
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-bxt-dsi/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-bxt-dsi/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_flip@basic-flip-vs-wf_vblank@a-dp1:
- fi-cml-u2: [PASS][23] -> [FAIL][24] ([i915#2122]) +1 similar issue
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-cml-u2/igt@kms_flip@basic-flip-vs-wf_vblank@a-dp1.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-cml-u2/igt@kms_flip@basic-flip-vs-wf_vblank@a-dp1.html
- fi-skl-lmem: [PASS][25] -> [FAIL][26] ([i915#2122])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-skl-lmem/igt@kms_flip@basic-flip-vs-wf_vblank@a-dp1.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-skl-lmem/igt@kms_flip@basic-flip-vs-wf_vblank@a-dp1.html
- fi-kbl-7500u: [PASS][27] -> [FAIL][28] ([i915#2122]) +1 similar issue
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-kbl-7500u/igt@kms_flip@basic-flip-vs-wf_vblank@a-dp1.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-kbl-7500u/igt@kms_flip@basic-flip-vs-wf_vblank@a-dp1.html
* igt@kms_flip@basic-flip-vs-wf_vblank@a-dp2:
- fi-skl-6700k2: [PASS][29] -> [FAIL][30] ([i915#2122]) +2 similar issues
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-skl-6700k2/igt@kms_flip@basic-flip-vs-wf_vblank@a-dp2.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-skl-6700k2/igt@kms_flip@basic-flip-vs-wf_vblank@a-dp2.html
- fi-cfl-8109u: [PASS][31] -> [FAIL][32] ([i915#2122]) +1 similar issue
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-cfl-8109u/igt@kms_flip@basic-flip-vs-wf_vblank@a-dp2.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-cfl-8109u/igt@kms_flip@basic-flip-vs-wf_vblank@a-dp2.html
* igt@kms_flip@basic-flip-vs-wf_vblank@a-dsi1:
- fi-bxt-dsi: [PASS][33] -> [FAIL][34] ([i915#1635] / [i915#2122])
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-bxt-dsi/igt@kms_flip@basic-flip-vs-wf_vblank@a-dsi1.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-bxt-dsi/igt@kms_flip@basic-flip-vs-wf_vblank@a-dsi1.html
* igt@kms_flip@basic-flip-vs-wf_vblank@a-edp1:
- fi-skl-6600u: [PASS][35] -> [FAIL][36] ([i915#2122])
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-skl-6600u/igt@kms_flip@basic-flip-vs-wf_vblank@a-edp1.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-skl-6600u/igt@kms_flip@basic-flip-vs-wf_vblank@a-edp1.html
- fi-kbl-r: [PASS][37] -> [FAIL][38] ([i915#2122])
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-kbl-r/igt@kms_flip@basic-flip-vs-wf_vblank@a-edp1.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-kbl-r/igt@kms_flip@basic-flip-vs-wf_vblank@a-edp1.html
* igt@kms_flip@basic-flip-vs-wf_vblank@a-hdmi-a1:
- fi-cml-s: [PASS][39] -> [FAIL][40] ([i915#2122]) +1 similar issue
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-cml-s/igt@kms_flip@basic-flip-vs-wf_vblank@a-hdmi-a1.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-cml-s/igt@kms_flip@basic-flip-vs-wf_vblank@a-hdmi-a1.html
#### Possible fixes ####
* igt@gem_exec_suspend@basic-s3:
- fi-tgl-u2: [FAIL][41] ([i915#1888]) -> [PASS][42]
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-tgl-u2/igt@gem_exec_suspend@basic-s3.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-tgl-u2/igt@gem_exec_suspend@basic-s3.html
* igt@i915_pm_rpm@basic-pci-d3-state:
- fi-byt-j1900: [DMESG-WARN][43] ([i915#1982]) -> [PASS][44]
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-byt-j1900/igt@i915_pm_rpm@basic-pci-d3-state.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-byt-j1900/igt@i915_pm_rpm@basic-pci-d3-state.html
* igt@kms_chamelium@common-hpd-after-suspend:
- fi-kbl-7500u: [DMESG-WARN][45] ([i915#2203]) -> [PASS][46]
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-kbl-7500u/igt@kms_chamelium@common-hpd-after-suspend.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-kbl-7500u/igt@kms_chamelium@common-hpd-after-suspend.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- fi-bsw-kefka: [DMESG-WARN][47] ([i915#1982]) -> [PASS][48]
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-bsw-kefka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-bsw-kefka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_flip@basic-flip-vs-wf_vblank@c-hdmi-a2:
- fi-skl-guc: [DMESG-WARN][49] ([i915#2203]) -> [PASS][50]
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-skl-guc/igt@kms_flip@basic-flip-vs-wf_vblank@c-hdmi-a2.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-skl-guc/igt@kms_flip@basic-flip-vs-wf_vblank@c-hdmi-a2.html
#### Warnings ####
* igt@i915_pm_rpm@module-reload:
- fi-kbl-x1275: [SKIP][51] ([fdo#109271]) -> [DMESG-FAIL][52] ([i915#62] / [i915#95])
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-kbl-x1275/igt@i915_pm_rpm@module-reload.html
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-kbl-x1275/igt@i915_pm_rpm@module-reload.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- fi-skl-6700k2: [DMESG-WARN][53] ([i915#2203]) -> [DMESG-FAIL][54] ([i915#2203]) +1 similar issue
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-skl-6700k2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-skl-6700k2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
- fi-kbl-x1275: [DMESG-WARN][55] ([i915#62] / [i915#92]) -> [DMESG-FAIL][56] ([i915#62])
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-kbl-x1275/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-kbl-x1275/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- fi-kbl-x1275: [DMESG-WARN][57] ([i915#62] / [i915#92]) -> [DMESG-FAIL][58] ([i915#62] / [i915#95])
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-kbl-x1275/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-kbl-x1275/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
* igt@kms_flip@basic-flip-vs-modeset@a-dp1:
- fi-kbl-x1275: [DMESG-WARN][59] ([i915#62] / [i915#92] / [i915#95]) -> [DMESG-WARN][60] ([i915#62] / [i915#92]) +3 similar issues
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-kbl-x1275/igt@kms_flip@basic-flip-vs-modeset@a-dp1.html
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-kbl-x1275/igt@kms_flip@basic-flip-vs-modeset@a-dp1.html
* igt@prime_vgem@basic-fence-flip:
- fi-kbl-x1275: [DMESG-WARN][61] ([i915#62] / [i915#92]) -> [DMESG-WARN][62] ([i915#62] / [i915#92] / [i915#95]) +2 similar issues
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8887/fi-kbl-x1275/igt@prime_vgem@basic-fence-flip.html
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/fi-kbl-x1275/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).
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[i915#1635]: https://gitlab.freedesktop.org/drm/intel/issues/1635
[i915#165]: https://gitlab.freedesktop.org/drm/intel/issues/165
[i915#1888]: https://gitlab.freedesktop.org/drm/intel/issues/1888
[i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
[i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122
[i915#2203]: https://gitlab.freedesktop.org/drm/intel/issues/2203
[i915#62]: https://gitlab.freedesktop.org/drm/intel/issues/62
[i915#92]: https://gitlab.freedesktop.org/drm/intel/issues/92
[i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95
Participating hosts (41 -> 35)
------------------------------
Missing (6): fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-byt-clapper fi-bdw-samus
Build changes
-------------
* Linux: CI_DRM_8887 -> Patchwork_18362
CI-20190529: 20190529
CI_DRM_8887: 6ec64d5f7a7284135368a9f9bd28a1117587e9b1 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5769: 4e5f76be680b65780204668e302026cf638decc9 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_18362: 9e1c00d12d6484ae7312815fc669d18f620ba038 @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
9e1c00d12d64 drm/i915/display: Add an extra vblank wait before fbc activation
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_18362/index.html
[-- Attachment #1.2: Type: text/html, Size: 17873 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] 5+ messages in thread
* Re: [Intel-gfx] [PATCH] drm/i915/display: Add an extra vblank wait before fbc activation
2020-08-17 7:44 [Intel-gfx] [PATCH] drm/i915/display: Add an extra vblank wait before fbc activation Uma Shankar
2020-08-17 7:44 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for " Patchwork
@ 2020-08-24 18:16 ` Ville Syrjälä
2020-08-24 19:46 ` Shankar, Uma
1 sibling, 1 reply; 5+ messages in thread
From: Ville Syrjälä @ 2020-08-24 18:16 UTC (permalink / raw)
To: Uma Shankar; +Cc: intel-gfx
On Mon, Aug 17, 2020 at 01:14:18PM +0530, Uma Shankar wrote:
> Add an extra vblank before fbc is activated.
> WA: 1409689360
> Corruption with FBC around plane 1A enabling. In the Frame Buffer
> Compression programming sequence "Display Plane Enabling with FBC"
> add a wait for vblank between plane enabling step 1 and FBC enabling
> step 2.
Already there due to drm_atomic_helper_wait_for_flip_done().
>
> Signed-off-by: Uma Shankar <uma.shankar@intel.com>
> Signed-off-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_fbc.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_fbc.c b/drivers/gpu/drm/i915/display/intel_fbc.c
> index 2ab32e6532ff..0ed252ff2c53 100644
> --- a/drivers/gpu/drm/i915/display/intel_fbc.c
> +++ b/drivers/gpu/drm/i915/display/intel_fbc.c
> @@ -1085,10 +1085,12 @@ static void __intel_fbc_post_update(struct intel_crtc *crtc)
> if (!intel_fbc_can_activate(crtc))
> return;
>
> - if (!fbc->busy_bits)
> + if (!fbc->busy_bits) {
> + intel_wait_for_vblank(dev_priv, crtc->pipe);
> intel_fbc_hw_activate(dev_priv);
> - else
> + } else {
> intel_fbc_deactivate(dev_priv, "frontbuffer write");
> + }
> }
>
> void intel_fbc_post_update(struct intel_atomic_state *state,
> --
> 2.22.0
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
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] 5+ messages in thread
* Re: [Intel-gfx] [PATCH] drm/i915/display: Add an extra vblank wait before fbc activation
2020-08-24 18:16 ` [Intel-gfx] [PATCH] " Ville Syrjälä
@ 2020-08-24 19:46 ` Shankar, Uma
2020-08-24 20:00 ` Ville Syrjälä
0 siblings, 1 reply; 5+ messages in thread
From: Shankar, Uma @ 2020-08-24 19:46 UTC (permalink / raw)
To: Ville Syrjälä; +Cc: intel-gfx@lists.freedesktop.org
> -----Original Message-----
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Sent: Monday, August 24, 2020 11:46 PM
> To: Shankar, Uma <uma.shankar@intel.com>
> Cc: intel-gfx@lists.freedesktop.org
> Subject: Re: [Intel-gfx] [PATCH] drm/i915/display: Add an extra vblank wait
> before fbc activation
>
> On Mon, Aug 17, 2020 at 01:14:18PM +0530, Uma Shankar wrote:
> > Add an extra vblank before fbc is activated.
> > WA: 1409689360
> > Corruption with FBC around plane 1A enabling. In the Frame Buffer
> > Compression programming sequence "Display Plane Enabling with FBC"
> > add a wait for vblank between plane enabling step 1 and FBC enabling
> > step 2.
>
> Already there due to drm_atomic_helper_wait_for_flip_done().
Hi Ville,
__intel_fbc_post_update is also called through intel_fbc_flush. The extra wait at that point seem
to be taking care of this case as well.
We can add it in vblank worker as suggested by Maarten or do you feel this should be handled differently.
Regards,
Uma Shankar
> >
> > Signed-off-by: Uma Shankar <uma.shankar@intel.com>
> > Signed-off-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>
> > ---
> > drivers/gpu/drm/i915/display/intel_fbc.c | 6 ++++--
> > 1 file changed, 4 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/display/intel_fbc.c
> > b/drivers/gpu/drm/i915/display/intel_fbc.c
> > index 2ab32e6532ff..0ed252ff2c53 100644
> > --- a/drivers/gpu/drm/i915/display/intel_fbc.c
> > +++ b/drivers/gpu/drm/i915/display/intel_fbc.c
> > @@ -1085,10 +1085,12 @@ static void __intel_fbc_post_update(struct
> intel_crtc *crtc)
> > if (!intel_fbc_can_activate(crtc))
> > return;
> >
> > - if (!fbc->busy_bits)
> > + if (!fbc->busy_bits) {
> > + intel_wait_for_vblank(dev_priv, crtc->pipe);
> > intel_fbc_hw_activate(dev_priv);
> > - else
> > + } else {
> > intel_fbc_deactivate(dev_priv, "frontbuffer write");
> > + }
> > }
> >
> > void intel_fbc_post_update(struct intel_atomic_state *state,
> > --
> > 2.22.0
> >
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/intel-gfx
>
> --
> 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] 5+ messages in thread
* Re: [Intel-gfx] [PATCH] drm/i915/display: Add an extra vblank wait before fbc activation
2020-08-24 19:46 ` Shankar, Uma
@ 2020-08-24 20:00 ` Ville Syrjälä
0 siblings, 0 replies; 5+ messages in thread
From: Ville Syrjälä @ 2020-08-24 20:00 UTC (permalink / raw)
To: Shankar, Uma; +Cc: intel-gfx@lists.freedesktop.org
On Mon, Aug 24, 2020 at 07:46:30PM +0000, Shankar, Uma wrote:
>
> > -----Original Message-----
> > From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > Sent: Monday, August 24, 2020 11:46 PM
> > To: Shankar, Uma <uma.shankar@intel.com>
> > Cc: intel-gfx@lists.freedesktop.org
> > Subject: Re: [Intel-gfx] [PATCH] drm/i915/display: Add an extra vblank wait
> > before fbc activation
> >
> > On Mon, Aug 17, 2020 at 01:14:18PM +0530, Uma Shankar wrote:
> > > Add an extra vblank before fbc is activated.
> > > WA: 1409689360
> > > Corruption with FBC around plane 1A enabling. In the Frame Buffer
> > > Compression programming sequence "Display Plane Enabling with FBC"
> > > add a wait for vblank between plane enabling step 1 and FBC enabling
> > > step 2.
> >
> > Already there due to drm_atomic_helper_wait_for_flip_done().
>
> Hi Ville,
> __intel_fbc_post_update is also called through intel_fbc_flush. The extra wait at that point seem
> to be taking care of this case as well.
>
> We can add it in vblank worker as suggested by Maarten or do you feel this should be handled differently.
There's already supposed to be something that prevents the frontbuffer
stuff from racing with plane updates.
>
> Regards,
> Uma Shankar
>
> > >
> > > Signed-off-by: Uma Shankar <uma.shankar@intel.com>
> > > Signed-off-by: Stanislav Lisovskiy <stanislav.lisovskiy@intel.com>
> > > ---
> > > drivers/gpu/drm/i915/display/intel_fbc.c | 6 ++++--
> > > 1 file changed, 4 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/drivers/gpu/drm/i915/display/intel_fbc.c
> > > b/drivers/gpu/drm/i915/display/intel_fbc.c
> > > index 2ab32e6532ff..0ed252ff2c53 100644
> > > --- a/drivers/gpu/drm/i915/display/intel_fbc.c
> > > +++ b/drivers/gpu/drm/i915/display/intel_fbc.c
> > > @@ -1085,10 +1085,12 @@ static void __intel_fbc_post_update(struct
> > intel_crtc *crtc)
> > > if (!intel_fbc_can_activate(crtc))
> > > return;
> > >
> > > - if (!fbc->busy_bits)
> > > + if (!fbc->busy_bits) {
> > > + intel_wait_for_vblank(dev_priv, crtc->pipe);
> > > intel_fbc_hw_activate(dev_priv);
> > > - else
> > > + } else {
> > > intel_fbc_deactivate(dev_priv, "frontbuffer write");
> > > + }
> > > }
> > >
> > > void intel_fbc_post_update(struct intel_atomic_state *state,
> > > --
> > > 2.22.0
> > >
> > > _______________________________________________
> > > Intel-gfx mailing list
> > > Intel-gfx@lists.freedesktop.org
> > > https://lists.freedesktop.org/mailman/listinfo/intel-gfx
> >
> > --
> > Ville Syrjälä
> > Intel
--
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] 5+ messages in thread
end of thread, other threads:[~2020-08-24 20:00 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-08-17 7:44 [Intel-gfx] [PATCH] drm/i915/display: Add an extra vblank wait before fbc activation Uma Shankar
2020-08-17 7:44 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for " Patchwork
2020-08-24 18:16 ` [Intel-gfx] [PATCH] " Ville Syrjälä
2020-08-24 19:46 ` Shankar, Uma
2020-08-24 20:00 ` Ville Syrjälä
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.