Re: [Intel-gfx] [PATCH v4 5/6] dma-buf: Change locking policy for mmap()

2023-06-20 Thread Christian König

Am 20.06.23 um 17:58 schrieb Dmitry Osipenko:

On 5/31/23 22:58, Dmitry Osipenko wrote:

On 5/30/23 01:39, Dmitry Osipenko wrote:

Change locking policy of mmap() callback, making exporters responsible
for handling dma-buf reservation locking. Previous locking policy stated
that dma-buf is locked for both importers and exporters by the dma-buf
core, which caused a deadlock problem for DRM drivers in a case of
self-imported dma-bufs which required to take the lock from the DRM
exporter side.

Reviewed-by: Emil Velikov 
Signed-off-by: Dmitry Osipenko 
---
  drivers/dma-buf/dma-buf.c | 17 +++--
  1 file changed, 3 insertions(+), 14 deletions(-)

Christian, you acked the drm patch of this series sometime ago, perhaps
it also implies implicit ack to this patch, but I'd prefer to have the
explicit ack. I'll apply this series to drm-misc later this week if
you'll approve this dma-buf change. Thanks in advance!

I'll merge the patches tomorrow. If there are any additional comments,
then please don't hesitate to post them.


Sorry for not responding earlier, I have been moving both my office as 
well as my household and still catching up.


I don't have time for an in-deep review, but my ack stands for the whole 
series.


Regards,
Christian.


[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: Init DDI ports in VBT order (rev4)

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915: Init DDI ports in VBT order (rev4)
URL   : https://patchwork.freedesktop.org/series/114200/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13296_full -> Patchwork_114200v4_full


Summary
---

  **SUCCESS**

  No regressions found.

  

Participating hosts (8 -> 7)
--

  Missing(1): shard-rkl0 

Possible new issues
---

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

### IGT changes ###

 Suppressed 

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * igt@kms_plane_lowres@tiling-x@pipe-d-hdmi-a-3:
- {shard-dg1}:NOTRUN -> [FAIL][1] +2 similar issues
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/shard-dg1-12/igt@kms_plane_lowres@tilin...@pipe-d-hdmi-a-3.html

  
Known issues


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

### IGT changes ###

 Issues hit 

  * igt@gem_ctx_sseu@invalid-sseu:
- shard-rkl:  NOTRUN -> [SKIP][2] ([i915#280])
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/shard-rkl-1/igt@gem_ctx_s...@invalid-sseu.html

  * igt@gem_exec_fair@basic-deadline:
- shard-glk:  [PASS][3] -> [FAIL][4] ([i915#2846])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13296/shard-glk1/igt@gem_exec_f...@basic-deadline.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/shard-glk5/igt@gem_exec_f...@basic-deadline.html

  * igt@gem_exec_fair@basic-pace@bcs0:
- shard-rkl:  [PASS][5] -> [FAIL][6] ([i915#2842])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13296/shard-rkl-6/igt@gem_exec_fair@basic-p...@bcs0.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/shard-rkl-1/igt@gem_exec_fair@basic-p...@bcs0.html

  * igt@gem_exec_params@secure-non-master:
- shard-rkl:  NOTRUN -> [SKIP][7] ([fdo#112283])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/shard-rkl-1/igt@gem_exec_par...@secure-non-master.html

  * igt@gem_exec_suspend@basic-s4-devices@smem:
- shard-rkl:  NOTRUN -> [ABORT][8] ([i915#7975] / [i915#8213]) +1 
similar issue
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/shard-rkl-6/igt@gem_exec_suspend@basic-s4-devi...@smem.html

  * igt@gem_lmem_swapping@heavy-random:
- shard-rkl:  NOTRUN -> [SKIP][9] ([i915#4613])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/shard-rkl-6/igt@gem_lmem_swapp...@heavy-random.html

  * igt@gem_ppgtt@blt-vs-render-ctxn:
- shard-snb:  [PASS][10] -> [FAIL][11] ([i915#4998] / [i915#8295])
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13296/shard-snb6/igt@gem_pp...@blt-vs-render-ctxn.html
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/shard-snb1/igt@gem_pp...@blt-vs-render-ctxn.html

  * igt@gem_pread@self:
- shard-rkl:  NOTRUN -> [SKIP][12] ([i915#3282])
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/shard-rkl-1/igt@gem_pr...@self.html

  * igt@gem_set_tiling_vs_blt@tiled-to-untiled:
- shard-rkl:  NOTRUN -> [SKIP][13] ([i915#8411])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/shard-rkl-6/igt@gem_set_tiling_vs_...@tiled-to-untiled.html

  * igt@gem_userptr_blits@readonly-pwrite-unsync:
- shard-tglu: NOTRUN -> [SKIP][14] ([i915#3297])
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/shard-tglu-7/igt@gem_userptr_bl...@readonly-pwrite-unsync.html

  * igt@gem_userptr_blits@unsync-overlap:
- shard-rkl:  NOTRUN -> [SKIP][15] ([i915#3297])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/shard-rkl-6/igt@gem_userptr_bl...@unsync-overlap.html

  * igt@gem_userptr_blits@vma-merge:
- shard-rkl:  NOTRUN -> [FAIL][16] ([i915#3318])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/shard-rkl-6/igt@gem_userptr_bl...@vma-merge.html

  * igt@gen9_exec_parse@allowed-all:
- shard-rkl:  NOTRUN -> [SKIP][17] ([i915#2527]) +1 similar issue
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/shard-rkl-6/igt@gen9_exec_pa...@allowed-all.html

  * igt@gen9_exec_parse@batch-invalid-length:
- shard-tglu: NOTRUN -> [SKIP][18] ([i915#2527] / [i915#2856])
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/shard-tglu-7/igt@gen9_exec_pa...@batch-invalid-length.html

  * igt@i915_pm_backlight@basic-brightness:
- shard-rkl:  NOTRUN -> [SKIP][19] ([i915#7561])
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/shard-rkl-6/igt@i915_pm_backli...@basic-brightness.html

  * igt@i915_pm_dc@dc5-psr:
- shard-rkl:  NOTRUN -> 

[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/hdcp: Add a debug statment at hcdp2 capability check (rev2)

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/hdcp: Add a debug statment at hcdp2 capability check (rev2)
URL   : https://patchwork.freedesktop.org/series/119641/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13297 -> Patchwork_119641v2


Summary
---

  **SUCCESS**

  No regressions found.

  External URL: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119641v2/index.html

Participating hosts (43 -> 40)
--

  Missing(3): fi-kbl-soraka fi-snb-2520m fi-pnv-d510 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@debugfs_test@basic-hwmon:
- bat-adlp-11:NOTRUN -> [SKIP][1] ([i915#7456])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119641v2/bat-adlp-11/igt@debugfs_t...@basic-hwmon.html

  * igt@gem_exec_suspend@basic-s0@smem:
- fi-rkl-11600:   [PASS][2] -> [FAIL][3] ([fdo#103375] / [i915#8011])
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/fi-rkl-11600/igt@gem_exec_suspend@basic...@smem.html
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119641v2/fi-rkl-11600/igt@gem_exec_suspend@basic...@smem.html

  * igt@gem_tiled_pread_basic:
- bat-adlp-11:NOTRUN -> [SKIP][4] ([i915#3282])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119641v2/bat-adlp-11/igt@gem_tiled_pread_basic.html

  * igt@i915_selftest@live@gt_mocs:
- bat-mtlp-6: [PASS][5] -> [DMESG-FAIL][6] ([i915#7059])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119641v2/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html

  * igt@i915_selftest@live@requests:
- bat-rpls-1: [PASS][7] -> [ABORT][8] ([i915#4983] / [i915#7911] / 
[i915#7920])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-rpls-1/igt@i915_selftest@l...@requests.html
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119641v2/bat-rpls-1/igt@i915_selftest@l...@requests.html

  * igt@i915_selftest@live@slpc:
- bat-mtlp-6: [PASS][9] -> [DMESG-WARN][10] ([i915#6367])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@l...@slpc.html
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119641v2/bat-mtlp-6/igt@i915_selftest@l...@slpc.html
- bat-rpls-2: NOTRUN -> [DMESG-WARN][11] ([i915#6367])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119641v2/bat-rpls-2/igt@i915_selftest@l...@slpc.html

  * igt@i915_suspend@basic-s2idle-without-i915:
- bat-rpls-2: NOTRUN -> [ABORT][12] ([i915#6687] / [i915#8668])
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119641v2/bat-rpls-2/igt@i915_susp...@basic-s2idle-without-i915.html

  * igt@kms_chamelium_frames@hdmi-crc-fast:
- bat-adlp-11:NOTRUN -> [SKIP][13] ([i915#7828]) +7 similar issues
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119641v2/bat-adlp-11/igt@kms_chamelium_fra...@hdmi-crc-fast.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- bat-adlp-11:NOTRUN -> [SKIP][14] ([i915#4103]) +1 similar issue
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119641v2/bat-adlp-11/igt@kms_cursor_leg...@basic-busy-flip-before-cursor-legacy.html

  * igt@kms_flip@basic-plain-flip@b-dp6:
- bat-adlp-11:NOTRUN -> [FAIL][15] ([i915#6121]) +4 similar issues
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119641v2/bat-adlp-11/igt@kms_flip@basic-plain-f...@b-dp6.html

  * igt@kms_flip@basic-plain-flip@c-dp5:
- bat-adlp-11:NOTRUN -> [DMESG-WARN][16] ([i915#6868])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119641v2/bat-adlp-11/igt@kms_flip@basic-plain-f...@c-dp5.html

  * igt@kms_force_connector_basic@prune-stale-modes:
- bat-adlp-11:NOTRUN -> [SKIP][17] ([i915#4093]) +3 similar issues
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119641v2/bat-adlp-11/igt@kms_force_connector_ba...@prune-stale-modes.html

  * igt@kms_frontbuffer_tracking@basic:
- bat-adlp-11:NOTRUN -> [SKIP][18] ([i915#4342])
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119641v2/bat-adlp-11/igt@kms_frontbuffer_track...@basic.html

  * igt@kms_pipe_crc_basic@compare-crc-sanitycheck-nv12:
- bat-adlp-11:NOTRUN -> [SKIP][19] ([i915#3546])
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119641v2/bat-adlp-11/igt@kms_pipe_crc_ba...@compare-crc-sanitycheck-nv12.html

  * igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-d-dp-1:
- bat-dg2-8:  [PASS][20] -> [FAIL][21] ([i915#7932])
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-crc-frame-seque...@pipe-d-dp-1.html
   [21]: 

[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/guc/slpc: Apply min softlimit correctly (rev2)

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/guc/slpc: Apply min softlimit correctly (rev2)
URL   : https://patchwork.freedesktop.org/series/119162/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13297 -> Patchwork_119162v2


Summary
---

  **SUCCESS**

  No regressions found.

  External URL: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119162v2/index.html

Participating hosts (43 -> 41)
--

  Missing(2): fi-kbl-soraka fi-snb-2520m 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@core_auth@basic-auth:
- bat-adlp-11:NOTRUN -> [ABORT][1] ([i915#4423] / [i915#8011])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119162v2/bat-adlp-11/igt@core_a...@basic-auth.html

  * igt@i915_selftest@live@gt_heartbeat:
- fi-apl-guc: [PASS][2] -> [DMESG-FAIL][3] ([i915#5334])
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/fi-apl-guc/igt@i915_selftest@live@gt_heartbeat.html
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119162v2/fi-apl-guc/igt@i915_selftest@live@gt_heartbeat.html

  * igt@i915_selftest@live@gt_mocs:
- bat-mtlp-8: [PASS][4] -> [DMESG-FAIL][5] ([i915#7059])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-8/igt@i915_selftest@live@gt_mocs.html
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119162v2/bat-mtlp-8/igt@i915_selftest@live@gt_mocs.html

  * igt@i915_selftest@live@reset:
- bat-rpls-1: [PASS][6] -> [ABORT][7] ([i915#4983] / [i915#7461] / 
[i915#8347] / [i915#8384])
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-rpls-1/igt@i915_selftest@l...@reset.html
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119162v2/bat-rpls-1/igt@i915_selftest@l...@reset.html

  * igt@i915_selftest@live@slpc:
- bat-mtlp-6: [PASS][8] -> [DMESG-WARN][9] ([i915#6367])
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@l...@slpc.html
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119162v2/bat-mtlp-6/igt@i915_selftest@l...@slpc.html
- bat-rpls-2: NOTRUN -> [DMESG-WARN][10] ([i915#6367])
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119162v2/bat-rpls-2/igt@i915_selftest@l...@slpc.html

  * igt@i915_selftest@live@workarounds:
- bat-dg1-5:  [PASS][11] -> [ABORT][12] ([i915#4983])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-dg1-5/igt@i915_selftest@l...@workarounds.html
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119162v2/bat-dg1-5/igt@i915_selftest@l...@workarounds.html

  * igt@i915_suspend@basic-s2idle-without-i915:
- bat-rpls-2: NOTRUN -> [ABORT][13] ([i915#6687] / [i915#8668])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119162v2/bat-rpls-2/igt@i915_susp...@basic-s2idle-without-i915.html

  * igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-d-dp-1:
- bat-dg2-8:  [PASS][14] -> [FAIL][15] ([i915#7932]) +1 similar 
issue
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-crc-frame-seque...@pipe-d-dp-1.html
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119162v2/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-crc-frame-seque...@pipe-d-dp-1.html

  
 Possible fixes 

  * igt@i915_selftest@live@requests:
- bat-mtlp-8: [DMESG-FAIL][16] ([i915#8497]) -> [PASS][17]
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-8/igt@i915_selftest@l...@requests.html
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119162v2/bat-mtlp-8/igt@i915_selftest@l...@requests.html

  * igt@i915_selftest@live@reset:
- bat-rpls-2: [ABORT][18] ([i915#4983] / [i915#7461] / [i915#7913] 
/ [i915#7981] / [i915#8347]) -> [PASS][19]
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-rpls-2/igt@i915_selftest@l...@reset.html
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119162v2/bat-rpls-2/igt@i915_selftest@l...@reset.html

  * igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-dp-1:
- fi-kbl-7567u:   [ABORT][20] -> [PASS][21]
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/fi-kbl-7567u/igt@kms_pipe_crc_basic@suspend-read-...@pipe-c-dp-1.html
   [21]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119162v2/fi-kbl-7567u/igt@kms_pipe_crc_basic@suspend-read-...@pipe-c-dp-1.html

  
 Warnings 

  * igt@i915_module_load@load:
- bat-adlp-11:[ABORT][22] ([i915#4423]) -> [DMESG-WARN][23] 
([i915#4423])
   [22]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-adlp-11/igt@i915_module_l...@load.html
   [23]: 

[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/huc: Fix missing error code in intel_huc_init() (rev2)

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/huc: Fix missing error code in intel_huc_init() (rev2)
URL   : https://patchwork.freedesktop.org/series/119350/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13297 -> Patchwork_119350v2


Summary
---

  **SUCCESS**

  No regressions found.

  External URL: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119350v2/index.html

Participating hosts (43 -> 42)
--

  Missing(1): fi-snb-2520m 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@i915_selftest@live@hangcheck:
- bat-dg2-11: [PASS][1] -> [ABORT][2] ([i915#7913] / [i915#7979])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-dg2-11/igt@i915_selftest@l...@hangcheck.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119350v2/bat-dg2-11/igt@i915_selftest@l...@hangcheck.html

  * igt@i915_selftest@live@migrate:
- bat-mtlp-6: [PASS][3] -> [DMESG-FAIL][4] ([i915#7699])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@l...@migrate.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119350v2/bat-mtlp-6/igt@i915_selftest@l...@migrate.html

  * igt@i915_selftest@live@requests:
- bat-rpls-1: [PASS][5] -> [ABORT][6] ([i915#7911] / [i915#7920] / 
[i915#7982])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-rpls-1/igt@i915_selftest@l...@requests.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119350v2/bat-rpls-1/igt@i915_selftest@l...@requests.html
- bat-mtlp-6: [PASS][7] -> [DMESG-FAIL][8] ([i915#7269])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@l...@requests.html
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119350v2/bat-mtlp-6/igt@i915_selftest@l...@requests.html

  * igt@i915_selftest@live@slpc:
- bat-mtlp-6: [PASS][9] -> [DMESG-WARN][10] ([i915#6367])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@l...@slpc.html
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119350v2/bat-mtlp-6/igt@i915_selftest@l...@slpc.html
- bat-rpls-2: NOTRUN -> [DMESG-WARN][11] ([i915#6367])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119350v2/bat-rpls-2/igt@i915_selftest@l...@slpc.html

  * igt@i915_suspend@basic-s2idle-without-i915:
- bat-rpls-2: NOTRUN -> [ABORT][12] ([i915#6687] / [i915#8668])
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119350v2/bat-rpls-2/igt@i915_susp...@basic-s2idle-without-i915.html

  * igt@kms_pipe_crc_basic@nonblocking-crc@pipe-d-dp-1:
- bat-dg2-8:  [PASS][13] -> [FAIL][14] ([i915#7932])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-...@pipe-d-dp-1.html
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119350v2/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-...@pipe-d-dp-1.html

  
 Possible fixes 

  * igt@i915_selftest@live@gt_heartbeat:
- fi-kbl-soraka:  [DMESG-FAIL][15] ([i915#5334] / [i915#7872]) -> 
[PASS][16]
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119350v2/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html

  * igt@i915_selftest@live@reset:
- bat-rpls-2: [ABORT][17] ([i915#4983] / [i915#7461] / [i915#7913] 
/ [i915#7981] / [i915#8347]) -> [PASS][18]
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-rpls-2/igt@i915_selftest@l...@reset.html
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119350v2/bat-rpls-2/igt@i915_selftest@l...@reset.html

  * igt@kms_addfb_basic@addfb25-bad-modifier:
- fi-kbl-soraka:  [INCOMPLETE][19] -> [PASS][20]
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/fi-kbl-soraka/igt@kms_addfb_ba...@addfb25-bad-modifier.html
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119350v2/fi-kbl-soraka/igt@kms_addfb_ba...@addfb25-bad-modifier.html

  * igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-dp-1:
- fi-kbl-7567u:   [ABORT][21] -> [PASS][22]
   [21]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/fi-kbl-7567u/igt@kms_pipe_crc_basic@suspend-read-...@pipe-c-dp-1.html
   [22]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119350v2/fi-kbl-7567u/igt@kms_pipe_crc_basic@suspend-read-...@pipe-c-dp-1.html

  
  [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
  [i915#5334]: https://gitlab.freedesktop.org/drm/intel/issues/5334
  [i915#6367]: https://gitlab.freedesktop.org/drm/intel/issues/6367
  [i915#6687]: https://gitlab.freedesktop.org/drm/intel/issues/6687
  [i915#7269]: 

[Intel-gfx] ✗ Fi.CI.BUILD: failure for drm/i915/gt: fix kernel-doc trivial warnings

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/gt: fix kernel-doc trivial warnings
URL   : https://patchwork.freedesktop.org/series/119629/
State : failure

== Summary ==

Error: patch 
https://patchwork.freedesktop.org/api/1.0/series/119629/revisions/1/mbox/ not 
applied
Applying: drm/i915/gt: fix kernel-doc trivial warnings
Using index info to reconstruct a base tree...
M   drivers/gpu/drm/i915/gt/intel_context.h
M   drivers/gpu/drm/i915/gt/intel_engine_types.h
M   drivers/gpu/drm/i915/gt/intel_gtt.h
Falling back to patching base and 3-way merge...
Auto-merging drivers/gpu/drm/i915/gt/intel_gtt.h
CONFLICT (content): Merge conflict in drivers/gpu/drm/i915/gt/intel_gtt.h
Auto-merging drivers/gpu/drm/i915/gt/intel_engine_types.h
CONFLICT (content): Merge conflict in 
drivers/gpu/drm/i915/gt/intel_engine_types.h
Auto-merging drivers/gpu/drm/i915/gt/intel_context.h
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Patch failed at 0001 drm/i915/gt: fix kernel-doc trivial warnings
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
Build failed, no error log produced




[Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915/huc: Fix missing error code in intel_huc_init() (rev2)

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/huc: Fix missing error code in intel_huc_init() (rev2)
URL   : https://patchwork.freedesktop.org/series/119350/
State : warning

== Summary ==

Error: dim sparse failed
Sparse version: v0.6.2




[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: Fix missing check for return value of dev_get_platdata()

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915: Fix missing check for return value of dev_get_platdata()
URL   : https://patchwork.freedesktop.org/series/119626/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13297 -> Patchwork_119626v1


Summary
---

  **WARNING**

  Minor unknown changes coming with Patchwork_119626v1 need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_119626v1, 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_119626v1/index.html

Participating hosts (43 -> 41)
--

  Missing(2): fi-kbl-soraka fi-snb-2520m 

Possible new issues
---

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

### IGT changes ###

 Warnings 

  * igt@kms_psr@primary_mmap_gtt:
- bat-rplp-1: [SKIP][1] ([i915#1072]) -> [ABORT][2]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-rplp-1/igt@kms_psr@primary_mmap_gtt.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119626v1/bat-rplp-1/igt@kms_psr@primary_mmap_gtt.html

  
Known issues


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

### IGT changes ###

 Issues hit 

  * igt@debugfs_test@basic-hwmon:
- bat-adlp-11:NOTRUN -> [SKIP][3] ([i915#7456])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119626v1/bat-adlp-11/igt@debugfs_t...@basic-hwmon.html

  * igt@gem_tiled_pread_basic:
- bat-adlp-11:NOTRUN -> [SKIP][4] ([i915#3282])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119626v1/bat-adlp-11/igt@gem_tiled_pread_basic.html

  * igt@i915_selftest@live@gt_lrc:
- bat-rpls-2: [PASS][5] -> [INCOMPLETE][6] ([i915#4983] / 
[i915#7913])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-rpls-2/igt@i915_selftest@live@gt_lrc.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119626v1/bat-rpls-2/igt@i915_selftest@live@gt_lrc.html

  * igt@i915_selftest@live@gt_mocs:
- bat-mtlp-8: [PASS][7] -> [DMESG-FAIL][8] ([i915#7059])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-8/igt@i915_selftest@live@gt_mocs.html
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119626v1/bat-mtlp-8/igt@i915_selftest@live@gt_mocs.html
- bat-mtlp-6: [PASS][9] -> [DMESG-FAIL][10] ([i915#7059])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119626v1/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html

  * igt@i915_selftest@live@reset:
- bat-rpls-1: [PASS][11] -> [ABORT][12] ([i915#4983] / [i915#7461] 
/ [i915#8347] / [i915#8384])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-rpls-1/igt@i915_selftest@l...@reset.html
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119626v1/bat-rpls-1/igt@i915_selftest@l...@reset.html

  * igt@i915_selftest@live@slpc:
- bat-mtlp-6: [PASS][13] -> [DMESG-WARN][14] ([i915#6367])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@l...@slpc.html
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119626v1/bat-mtlp-6/igt@i915_selftest@l...@slpc.html

  * igt@i915_selftest@live@workarounds:
- bat-mtlp-6: [PASS][15] -> [DMESG-FAIL][16] ([i915#6763])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@l...@workarounds.html
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119626v1/bat-mtlp-6/igt@i915_selftest@l...@workarounds.html

  * igt@kms_busy@basic@modeset:
- bat-adlp-11:NOTRUN -> [DMESG-WARN][17] ([i915#6868])
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119626v1/bat-adlp-11/igt@kms_busy@ba...@modeset.html

  * igt@kms_chamelium_frames@hdmi-crc-fast:
- bat-adlp-11:NOTRUN -> [SKIP][18] ([i915#7828]) +7 similar issues
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119626v1/bat-adlp-11/igt@kms_chamelium_fra...@hdmi-crc-fast.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- bat-adlp-11:NOTRUN -> [SKIP][19] ([i915#4103]) +1 similar issue
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119626v1/bat-adlp-11/igt@kms_cursor_leg...@basic-busy-flip-before-cursor-legacy.html

  * igt@kms_force_connector_basic@prune-stale-modes:
- bat-adlp-11:NOTRUN -> [SKIP][20] ([i915#4093]) +3 similar issues
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119626v1/bat-adlp-11/igt@kms_force_connector_ba...@prune-stale-modes.html

  
 Possible fixes 

  * 

[Intel-gfx] ✗ Fi.CI.BUILD: failure for drm/i915/gt/uc:fix kernel-doc trivial warnings

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/gt/uc:fix kernel-doc trivial warnings
URL   : https://patchwork.freedesktop.org/series/119627/
State : failure

== Summary ==

Error: patch 
https://patchwork.freedesktop.org/api/1.0/series/119627/revisions/1/mbox/ not 
applied
Applying: drm/i915/gt/uc:fix kernel-doc trivial warnings
Using index info to reconstruct a base tree...
M   drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h
M   drivers/gpu/drm/i915/gt/uc/intel_guc.h
M   drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h
Falling back to patching base and 3-way merge...
Auto-merging drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h
Auto-merging drivers/gpu/drm/i915/gt/uc/intel_guc.h
CONFLICT (content): Merge conflict in drivers/gpu/drm/i915/gt/uc/intel_guc.h
Auto-merging drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h
CONFLICT (content): Merge conflict in 
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Patch failed at 0001 drm/i915/gt/uc:fix kernel-doc trivial warnings
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
Build failed, no error log produced




[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: Call page_address() on page acquired with GFP_KERNEL flag

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915: Call page_address() on page acquired with GFP_KERNEL flag
URL   : https://patchwork.freedesktop.org/series/119625/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13297 -> Patchwork_119625v1


Summary
---

  **SUCCESS**

  No regressions found.

  External URL: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119625v1/index.html

Participating hosts (43 -> 41)
--

  Missing(2): bat-kbl-2 fi-snb-2520m 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@i915_selftest@live@gt_mocs:
- bat-mtlp-8: [PASS][1] -> [DMESG-FAIL][2] ([i915#7059])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-8/igt@i915_selftest@live@gt_mocs.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119625v1/bat-mtlp-8/igt@i915_selftest@live@gt_mocs.html
- bat-mtlp-6: [PASS][3] -> [DMESG-FAIL][4] ([i915#7059])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119625v1/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html

  * igt@i915_selftest@live@migrate:
- bat-dg2-11: [PASS][5] -> [DMESG-WARN][6] ([i915#7699])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-dg2-11/igt@i915_selftest@l...@migrate.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119625v1/bat-dg2-11/igt@i915_selftest@l...@migrate.html

  * igt@i915_selftest@live@requests:
- bat-rpls-2: [PASS][7] -> [ABORT][8] ([i915#7913] / [i915#7982])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-rpls-2/igt@i915_selftest@l...@requests.html
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119625v1/bat-rpls-2/igt@i915_selftest@l...@requests.html
- bat-mtlp-6: [PASS][9] -> [DMESG-FAIL][10] ([i915#7269])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@l...@requests.html
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119625v1/bat-mtlp-6/igt@i915_selftest@l...@requests.html

  * igt@i915_selftest@live@reset:
- bat-rpls-1: [PASS][11] -> [ABORT][12] ([i915#4983] / [i915#7461] 
/ [i915#8347] / [i915#8384])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-rpls-1/igt@i915_selftest@l...@reset.html
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119625v1/bat-rpls-1/igt@i915_selftest@l...@reset.html

  * igt@i915_selftest@live@slpc:
- bat-mtlp-6: [PASS][13] -> [DMESG-WARN][14] ([i915#6367])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@l...@slpc.html
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119625v1/bat-mtlp-6/igt@i915_selftest@l...@slpc.html

  
 Possible fixes 

  * igt@i915_selftest@live@requests:
- bat-mtlp-8: [DMESG-FAIL][15] ([i915#8497]) -> [PASS][16]
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-8/igt@i915_selftest@l...@requests.html
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119625v1/bat-mtlp-8/igt@i915_selftest@l...@requests.html

  * igt@kms_addfb_basic@addfb25-bad-modifier:
- fi-kbl-soraka:  [INCOMPLETE][17] -> [PASS][18]
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/fi-kbl-soraka/igt@kms_addfb_ba...@addfb25-bad-modifier.html
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119625v1/fi-kbl-soraka/igt@kms_addfb_ba...@addfb25-bad-modifier.html

  * igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-dp-1:
- fi-kbl-7567u:   [ABORT][19] -> [PASS][20]
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/fi-kbl-7567u/igt@kms_pipe_crc_basic@suspend-read-...@pipe-c-dp-1.html
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119625v1/fi-kbl-7567u/igt@kms_pipe_crc_basic@suspend-read-...@pipe-c-dp-1.html

  
 Warnings 

  * igt@kms_setmode@basic-clone-single-crtc:
- bat-rplp-1: [SKIP][21] ([i915#3555] / [i915#4579]) -> [ABORT][22] 
([i915#4579] / [i915#8260])
   [21]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-rplp-1/igt@kms_setm...@basic-clone-single-crtc.html
   [22]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119625v1/bat-rplp-1/igt@kms_setm...@basic-clone-single-crtc.html

  
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#4579]: https://gitlab.freedesktop.org/drm/intel/issues/4579
  [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
  [i915#6367]: https://gitlab.freedesktop.org/drm/intel/issues/6367
  [i915#7059]: https://gitlab.freedesktop.org/drm/intel/issues/7059
  [i915#7269]: https://gitlab.freedesktop.org/drm/intel/issues/7269
  [i915#7461]: 

[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/dp: fix memory leak of panel->vbt.lfp_lvds_vbt_mode

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/dp: fix memory leak of panel->vbt.lfp_lvds_vbt_mode
URL   : https://patchwork.freedesktop.org/series/119623/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13297 -> Patchwork_119623v1


Summary
---

  **SUCCESS**

  No regressions found.

  External URL: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119623v1/index.html

Participating hosts (43 -> 42)
--

  Missing(1): fi-snb-2520m 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@core_auth@basic-auth:
- bat-adlp-11:NOTRUN -> [ABORT][1] ([i915#8011])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119623v1/bat-adlp-11/igt@core_a...@basic-auth.html

  * igt@i915_selftest@live@requests:
- bat-rpls-2: [PASS][2] -> [ABORT][3] ([i915#7913] / [i915#7982])
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-rpls-2/igt@i915_selftest@l...@requests.html
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119623v1/bat-rpls-2/igt@i915_selftest@l...@requests.html

  * igt@i915_selftest@live@slpc:
- bat-mtlp-6: [PASS][4] -> [DMESG-WARN][5] ([i915#6367])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@l...@slpc.html
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119623v1/bat-mtlp-6/igt@i915_selftest@l...@slpc.html

  
 Possible fixes 

  * igt@i915_selftest@live@gt_heartbeat:
- fi-kbl-soraka:  [DMESG-FAIL][6] ([i915#5334] / [i915#7872]) -> 
[PASS][7]
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119623v1/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html

  * igt@i915_selftest@live@requests:
- bat-mtlp-8: [DMESG-FAIL][8] ([i915#8497]) -> [PASS][9]
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-8/igt@i915_selftest@l...@requests.html
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119623v1/bat-mtlp-8/igt@i915_selftest@l...@requests.html

  * igt@i915_selftest@live@slpc:
- bat-rpls-1: [DMESG-WARN][10] ([i915#6367]) -> [PASS][11]
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-rpls-1/igt@i915_selftest@l...@slpc.html
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119623v1/bat-rpls-1/igt@i915_selftest@l...@slpc.html

  * igt@kms_addfb_basic@addfb25-bad-modifier:
- fi-kbl-soraka:  [INCOMPLETE][12] -> [PASS][13]
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/fi-kbl-soraka/igt@kms_addfb_ba...@addfb25-bad-modifier.html
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119623v1/fi-kbl-soraka/igt@kms_addfb_ba...@addfb25-bad-modifier.html

  * igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-dp-1:
- fi-kbl-7567u:   [ABORT][14] -> [PASS][15]
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/fi-kbl-7567u/igt@kms_pipe_crc_basic@suspend-read-...@pipe-c-dp-1.html
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119623v1/fi-kbl-7567u/igt@kms_pipe_crc_basic@suspend-read-...@pipe-c-dp-1.html

  
 Warnings 

  * igt@i915_module_load@load:
- bat-adlp-11:[ABORT][16] ([i915#4423]) -> [DMESG-WARN][17] 
([i915#4423])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-adlp-11/igt@i915_module_l...@load.html
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119623v1/bat-adlp-11/igt@i915_module_l...@load.html

  
  [i915#4423]: https://gitlab.freedesktop.org/drm/intel/issues/4423
  [i915#5334]: https://gitlab.freedesktop.org/drm/intel/issues/5334
  [i915#6367]: https://gitlab.freedesktop.org/drm/intel/issues/6367
  [i915#7872]: https://gitlab.freedesktop.org/drm/intel/issues/7872
  [i915#7913]: https://gitlab.freedesktop.org/drm/intel/issues/7913
  [i915#7982]: https://gitlab.freedesktop.org/drm/intel/issues/7982
  [i915#8011]: https://gitlab.freedesktop.org/drm/intel/issues/8011
  [i915#8497]: https://gitlab.freedesktop.org/drm/intel/issues/8497


Build changes
-

  * Linux: CI_DRM_13297 -> Patchwork_119623v1

  CI-20190529: 20190529
  CI_DRM_13297: 0e4da468fc093f8c8a1a82e5adabf24c67d46c6f @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_7340: e975155e9167f0fed8f3da9c5b61de71d082b5c7 @ 
https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
  Patchwork_119623v1: 0e4da468fc093f8c8a1a82e5adabf24c67d46c6f @ 
git://anongit.freedesktop.org/gfx-ci/linux


### Linux commits

443e54e6dd23 drm/i915/dp: fix memory leak of panel->vbt.lfp_lvds_vbt_mode

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119623v1/index.html


[Intel-gfx] ✗ Fi.CI.BUILD: failure for drm/i915/pxp:fix kernel-doc trivial warnings

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/pxp:fix kernel-doc trivial warnings
URL   : https://patchwork.freedesktop.org/series/119624/
State : failure

== Summary ==

Error: patch 
https://patchwork.freedesktop.org/api/1.0/series/119624/revisions/1/mbox/ not 
applied
Applying: drm/i915/pxp:fix kernel-doc trivial warnings
Using index info to reconstruct a base tree...
M   drivers/gpu/drm/i915/pxp/intel_pxp_types.h
Falling back to patching base and 3-way merge...
Auto-merging drivers/gpu/drm/i915/pxp/intel_pxp_types.h
CONFLICT (content): Merge conflict in drivers/gpu/drm/i915/pxp/intel_pxp_types.h
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Patch failed at 0001 drm/i915/pxp:fix kernel-doc trivial warnings
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
Build failed, no error log produced




[Intel-gfx] [PATCH v2] drm/i915/hdcp: Add a debug statment at hdcp2 capability check

2023-06-20 Thread Suraj Kandpal
Add a debug statement at hdcp2 capability check which indicates if
GSC CS is causing hdcp2 incapability

--v2
-correcting typo in commit header

Signed-off-by: Suraj Kandpal 
---
 drivers/gpu/drm/i915/display/intel_hdcp.c | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/display/intel_hdcp.c 
b/drivers/gpu/drm/i915/display/intel_hdcp.c
index 5ed450111f77..73fe84fc9bf5 100644
--- a/drivers/gpu/drm/i915/display/intel_hdcp.c
+++ b/drivers/gpu/drm/i915/display/intel_hdcp.c
@@ -177,8 +177,11 @@ bool intel_hdcp2_capable(struct intel_connector *connector)
struct intel_gt *gt = i915->media_gt;
struct intel_gsc_uc *gsc = gt ? >uc.gsc : NULL;
 
-   if (!gsc || !intel_uc_fw_is_running(>fw))
+   if (!gsc || !intel_uc_fw_is_running(>fw)) {
+   drm_dbg_kms(>drm,
+   "GSC components required for HDCP2.2 are 
not ready\n");
return false;
+   }
}
 
/* MEI/GSC interface is solid depending on which is used */
-- 
2.25.1



[Intel-gfx] [PATCH v2] drm/i915/guc/slpc: Apply min softlimit correctly

2023-06-20 Thread Vinay Belgaumkar
The scenario being fixed here is depicted in the following sequence-

modprobe i915
echo 1 > /sys/class/drm/card0/gt/gt0/slpc_ignore_eff_freq
echo 300 > /sys/class/drm/card0/gt_min_freq_mhz (RPn)
cat /sys/class/drm/card0/gt_cur_freq_mhz --> cur == RPn as expected
echo 1 > /sys/kernel/debug/dri/0/gt0/reset --> reset
cat /sys/class/drm/card0/gt_min_freq_mhz --> cached freq is RPn
cat /sys/class/drm/card0/gt_cur_freq_mhz --> it's not RPn, but RPe!!

When SLPC reinitializes, it sets SLPC min freq to efficient frequency.
Even if we disable efficient freq post that, we should restore the cached
min freq (via H2G) for it to take effect.

v2: Clarify commit message (Ashutosh)

Fixes: 95ccf312a1e4 ("drm/i915/guc/slpc: Allow SLPC to use efficient frequency")
Reviewed-by: Ashutosh Dixit 
Signed-off-by: Vinay Belgaumkar 
---
 drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c 
b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
index 01b75529311c..ee9f83af7cf6 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
@@ -606,7 +606,7 @@ static int slpc_set_softlimits(struct intel_guc_slpc *slpc)
if (unlikely(ret))
return ret;
slpc_to_gt(slpc)->defaults.min_freq = slpc->min_freq_softlimit;
-   } else if (slpc->min_freq_softlimit != slpc->min_freq) {
+   } else {
return intel_guc_slpc_set_min_freq(slpc,
   slpc->min_freq_softlimit);
}
-- 
2.38.1



[Intel-gfx] [PATCH] drm/i915/hdcp: Add a debug statment at hcdp2 capability check

2023-06-20 Thread Suraj Kandpal
Add a debug statement at hdcp2 capability check which indicates if
GSC CS is causing hdcp2 incapability

Signed-off-by: Suraj Kandpal 
---
 drivers/gpu/drm/i915/display/intel_hdcp.c | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/display/intel_hdcp.c 
b/drivers/gpu/drm/i915/display/intel_hdcp.c
index 5ed450111f77..73fe84fc9bf5 100644
--- a/drivers/gpu/drm/i915/display/intel_hdcp.c
+++ b/drivers/gpu/drm/i915/display/intel_hdcp.c
@@ -177,8 +177,11 @@ bool intel_hdcp2_capable(struct intel_connector *connector)
struct intel_gt *gt = i915->media_gt;
struct intel_gsc_uc *gsc = gt ? >uc.gsc : NULL;
 
-   if (!gsc || !intel_uc_fw_is_running(>fw))
+   if (!gsc || !intel_uc_fw_is_running(>fw)) {
+   drm_dbg_kms(>drm,
+   "GSC components required for HDCP2.2 are 
not ready\n");
return false;
+   }
}
 
/* MEI/GSC interface is solid depending on which is used */
-- 
2.25.1



[Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915: Replace kmap() with kmap_local_page() (rev6)

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915: Replace kmap() with kmap_local_page() (rev6)
URL   : https://patchwork.freedesktop.org/series/107277/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_13297 -> Patchwork_107277v6


Summary
---

  **FAILURE**

  Serious unknown changes coming with Patchwork_107277v6 absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_107277v6, 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_107277v6/index.html

Participating hosts (43 -> 41)
--

  Missing(2): fi-kbl-soraka fi-snb-2520m 

Possible new issues
---

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

### IGT changes ###

 Possible regressions 

  * igt@i915_pm_rpm@basic-rte:
- bat-mtlp-8: [PASS][1] -> [ABORT][2]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-8/igt@i915_pm_...@basic-rte.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v6/bat-mtlp-8/igt@i915_pm_...@basic-rte.html

  
Known issues


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

### IGT changes ###

 Issues hit 

  * igt@core_auth@basic-auth:
- bat-adlp-11:NOTRUN -> [ABORT][3] ([i915#8011])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v6/bat-adlp-11/igt@core_a...@basic-auth.html

  * igt@i915_selftest@live@gt_mocs:
- bat-mtlp-6: [PASS][4] -> [DMESG-FAIL][5] ([i915#7059])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v6/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html

  * igt@i915_selftest@live@requests:
- bat-mtlp-6: [PASS][6] -> [DMESG-FAIL][7] ([i915#7269])
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@l...@requests.html
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v6/bat-mtlp-6/igt@i915_selftest@l...@requests.html

  * igt@i915_selftest@live@slpc:
- bat-mtlp-6: [PASS][8] -> [DMESG-WARN][9] ([i915#6367])
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@l...@slpc.html
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v6/bat-mtlp-6/igt@i915_selftest@l...@slpc.html

  * igt@i915_selftest@live@workarounds:
- bat-mtlp-6: [PASS][10] -> [DMESG-FAIL][11] ([i915#6763])
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@l...@workarounds.html
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v6/bat-mtlp-6/igt@i915_selftest@l...@workarounds.html

  * igt@kms_pipe_crc_basic@read-crc-frame-sequence:
- bat-dg2-11: NOTRUN -> [SKIP][12] ([i915#1845] / [i915#5354])
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v6/bat-dg2-11/igt@kms_pipe_crc_ba...@read-crc-frame-sequence.html

  
 Possible fixes 

  * igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-dp-1:
- fi-kbl-7567u:   [ABORT][13] -> [PASS][14]
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/fi-kbl-7567u/igt@kms_pipe_crc_basic@suspend-read-...@pipe-c-dp-1.html
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v6/fi-kbl-7567u/igt@kms_pipe_crc_basic@suspend-read-...@pipe-c-dp-1.html

  
 Warnings 

  * igt@i915_module_load@load:
- bat-adlp-11:[ABORT][15] ([i915#4423]) -> [DMESG-WARN][16] 
([i915#4423])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-adlp-11/igt@i915_module_l...@load.html
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v6/bat-adlp-11/igt@i915_module_l...@load.html

  * igt@i915_selftest@live@reset:
- bat-rpls-2: [ABORT][17] ([i915#4983] / [i915#7461] / [i915#7913] 
/ [i915#7981] / [i915#8347]) -> [ABORT][18] ([i915#4983] / [i915#7461] / 
[i915#7913] / [i915#8347])
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-rpls-2/igt@i915_selftest@l...@reset.html
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v6/bat-rpls-2/igt@i915_selftest@l...@reset.html

  
  [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
  [i915#4423]: https://gitlab.freedesktop.org/drm/intel/issues/4423
  [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
  [i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354
  [i915#6367]: https://gitlab.freedesktop.org/drm/intel/issues/6367
  [i915#6763]: https://gitlab.freedesktop.org/drm/intel/issues/6763
  [i915#7059]: https://gitlab.freedesktop.org/drm/intel/issues/7059
  [i915#7269]: 

Re: [Intel-gfx] (no subject)

2023-06-20 Thread philly j
  
  

 Listen, here’s the problem I’m having guys and I need someone to reply back to 
me. Because I wrote to FSF and they wrote me right back and I join their and I 
have no problem with free software and complain but I don’t exactly know what 
you want me to do and I don’t have “git”   on my windows computer. And it seems 
like you guys are making it hard for me to do anything in the first place I 
can’t even connect to the Internet can someone help me out?
  
  
what problem am Iresolving  

  
  
  
  

  
  
>   
> On Jun 20, 2023 at 7:55 PM,   (mailto:patchw...@emeril.freedesktop.org)>  wrote:
>   
>   
>   
>  == Series Details == Series: drm/i915:fix kernel-doc trivial warnings URL : 
> https://patchwork.freedesktop.org/series/119620/ State : failure == Summary 
> == Error: patch 
> https://patchwork.freedesktop.org/api/1.0/series/119620/revisions/1/mbox/ not 
> applied Applying: drm/i915:fix kernel-doc trivial warnings Using index info 
> to reconstruct a base tree... M drivers/gpu/drm/i915/i915_active.h M 
> drivers/gpu/drm/i915/i915_gpu_error.c M drivers/gpu/drm/i915/i915_perf.c M 
> drivers/gpu/drm/i915/i915_scatterlist.h M drivers/gpu/drm/i915/i915_utils.h M 
> drivers/gpu/drm/i915/i915_vma_resource.h Falling back to patching base and 
> 3-way merge... Auto-merging drivers/gpu/drm/i915/i915_vma_resource.h 
> Auto-merging drivers/gpu/drm/i915/i915_utils.h Auto-merging 
> drivers/gpu/drm/i915/i915_scatterlist.h Auto-merging 
> drivers/gpu/drm/i915/i915_perf.c CONFLICT (content): Merge conflict in 
> drivers/gpu/drm/i915/i915_perf.c Auto-merging 
> drivers/gpu/drm/i915/i915_gpu_error.c CONFLICT (content): Merge conflict in 
> drivers/gpu/drm/i915/i915_gpu_error.c error: Failed to merge in the changes. 
> hint: Use 'git am --show-current-patch=diff' to see the failed patch Patch 
> failed at 0001 drm/i915:fix kernel-doc trivial warnings When you have 
> resolved this problem, run "git am --continue". If you prefer to skip this 
> patch, run "git am --skip" instead. To restore the original branch and stop 
> patching, run "git am --abort". Build failed, no error log produced  
>
>   
  
  


[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/dp: fix a memory leak in struct intel_vbt_panel_data (rev2)

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/dp: fix a memory leak in struct intel_vbt_panel_data (rev2)
URL   : https://patchwork.freedesktop.org/series/119046/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13297 -> Patchwork_119046v2


Summary
---

  **SUCCESS**

  No regressions found.

  External URL: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119046v2/index.html

Participating hosts (43 -> 41)
--

  Missing(2): fi-snb-2520m fi-pnv-d510 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@core_auth@basic-auth:
- bat-adlp-11:NOTRUN -> [ABORT][1] ([i915#4423] / [i915#8011])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119046v2/bat-adlp-11/igt@core_a...@basic-auth.html

  * igt@i915_selftest@live@gt_mocs:
- bat-mtlp-8: [PASS][2] -> [DMESG-FAIL][3] ([i915#7059])
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-8/igt@i915_selftest@live@gt_mocs.html
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119046v2/bat-mtlp-8/igt@i915_selftest@live@gt_mocs.html

  * igt@i915_selftest@live@requests:
- bat-rpls-1: [PASS][4] -> [ABORT][5] ([i915#7911] / [i915#7920])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-rpls-1/igt@i915_selftest@l...@requests.html
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119046v2/bat-rpls-1/igt@i915_selftest@l...@requests.html

  * igt@i915_selftest@live@slpc:
- bat-mtlp-8: [PASS][6] -> [DMESG-WARN][7] ([i915#6367])
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-8/igt@i915_selftest@l...@slpc.html
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119046v2/bat-mtlp-8/igt@i915_selftest@l...@slpc.html

  * igt@i915_suspend@basic-s2idle-without-i915:
- bat-rpls-2: NOTRUN -> [ABORT][8] ([i915#6687] / [i915#8668])
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119046v2/bat-rpls-2/igt@i915_susp...@basic-s2idle-without-i915.html

  * igt@kms_pipe_crc_basic@read-crc-frame-sequence:
- bat-dg2-11: NOTRUN -> [SKIP][9] ([i915#1845] / [i915#5354])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119046v2/bat-dg2-11/igt@kms_pipe_crc_ba...@read-crc-frame-sequence.html

  
 Possible fixes 

  * igt@i915_selftest@live@gt_heartbeat:
- fi-kbl-soraka:  [DMESG-FAIL][10] ([i915#5334] / [i915#7872]) -> 
[PASS][11]
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119046v2/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html

  * igt@i915_selftest@live@requests:
- bat-mtlp-8: [DMESG-FAIL][12] ([i915#8497]) -> [PASS][13]
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-8/igt@i915_selftest@l...@requests.html
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119046v2/bat-mtlp-8/igt@i915_selftest@l...@requests.html

  * igt@i915_selftest@live@reset:
- bat-rpls-2: [ABORT][14] ([i915#4983] / [i915#7461] / [i915#7913] 
/ [i915#7981] / [i915#8347]) -> [PASS][15]
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-rpls-2/igt@i915_selftest@l...@reset.html
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119046v2/bat-rpls-2/igt@i915_selftest@l...@reset.html

  * igt@kms_addfb_basic@addfb25-bad-modifier:
- fi-kbl-soraka:  [INCOMPLETE][16] -> [PASS][17]
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/fi-kbl-soraka/igt@kms_addfb_ba...@addfb25-bad-modifier.html
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119046v2/fi-kbl-soraka/igt@kms_addfb_ba...@addfb25-bad-modifier.html

  * igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-dp-1:
- fi-kbl-7567u:   [ABORT][18] -> [PASS][19]
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/fi-kbl-7567u/igt@kms_pipe_crc_basic@suspend-read-...@pipe-c-dp-1.html
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119046v2/fi-kbl-7567u/igt@kms_pipe_crc_basic@suspend-read-...@pipe-c-dp-1.html

  
 Warnings 

  * igt@i915_module_load@load:
- bat-adlp-11:[ABORT][20] ([i915#4423]) -> [DMESG-WARN][21] 
([i915#4423])
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-adlp-11/igt@i915_module_l...@load.html
   [21]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119046v2/bat-adlp-11/igt@i915_module_l...@load.html

  
  [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
  [i915#4423]: https://gitlab.freedesktop.org/drm/intel/issues/4423
  [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
  [i915#5334]: https://gitlab.freedesktop.org/drm/intel/issues/5334
  [i915#5354]: 

[Intel-gfx] ✓ Fi.CI.BAT: success for i915/display/hotplug: use drm_kms_helper_connector_hotplug_event()

2023-06-20 Thread Patchwork
== Series Details ==

Series: i915/display/hotplug: use drm_kms_helper_connector_hotplug_event()
URL   : https://patchwork.freedesktop.org/series/119603/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13297 -> Patchwork_119603v1


Summary
---

  **SUCCESS**

  No regressions found.

  External URL: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119603v1/index.html

Participating hosts (43 -> 42)
--

  Missing(1): fi-snb-2520m 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@debugfs_test@basic-hwmon:
- bat-adlp-11:NOTRUN -> [SKIP][1] ([i915#7456])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119603v1/bat-adlp-11/igt@debugfs_t...@basic-hwmon.html

  * igt@gem_tiled_pread_basic:
- bat-adlp-11:NOTRUN -> [SKIP][2] ([i915#3282])
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119603v1/bat-adlp-11/igt@gem_tiled_pread_basic.html

  * igt@i915_selftest@live@gt_heartbeat:
- fi-skl-guc: [PASS][3] -> [DMESG-FAIL][4] ([i915#5334])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/fi-skl-guc/igt@i915_selftest@live@gt_heartbeat.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119603v1/fi-skl-guc/igt@i915_selftest@live@gt_heartbeat.html

  * igt@i915_selftest@live@hangcheck:
- bat-adlm-1: [PASS][5] -> [ABORT][6] ([i915#7677] / [i915#8423])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-adlm-1/igt@i915_selftest@l...@hangcheck.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119603v1/bat-adlm-1/igt@i915_selftest@l...@hangcheck.html

  * igt@i915_selftest@live@migrate:
- bat-dg2-11: [PASS][7] -> [DMESG-WARN][8] ([i915#7699])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-dg2-11/igt@i915_selftest@l...@migrate.html
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119603v1/bat-dg2-11/igt@i915_selftest@l...@migrate.html

  * igt@i915_selftest@live@requests:
- bat-mtlp-6: [PASS][9] -> [DMESG-FAIL][10] ([i915#7269])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@l...@requests.html
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119603v1/bat-mtlp-6/igt@i915_selftest@l...@requests.html

  * igt@i915_selftest@live@reset:
- bat-rpls-1: [PASS][11] -> [ABORT][12] ([i915#4983] / [i915#7461] 
/ [i915#8347] / [i915#8384])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-rpls-1/igt@i915_selftest@l...@reset.html
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119603v1/bat-rpls-1/igt@i915_selftest@l...@reset.html

  * igt@i915_selftest@live@slpc:
- bat-mtlp-6: [PASS][13] -> [DMESG-WARN][14] ([i915#6367])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-mtlp-6/igt@i915_selftest@l...@slpc.html
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119603v1/bat-mtlp-6/igt@i915_selftest@l...@slpc.html
- bat-rpls-2: NOTRUN -> [DMESG-WARN][15] ([i915#6367])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119603v1/bat-rpls-2/igt@i915_selftest@l...@slpc.html

  * igt@i915_suspend@basic-s2idle-without-i915:
- bat-rpls-2: NOTRUN -> [ABORT][16] ([i915#6687] / [i915#8668])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119603v1/bat-rpls-2/igt@i915_susp...@basic-s2idle-without-i915.html

  * igt@kms_chamelium_frames@hdmi-crc-fast:
- bat-adlp-11:NOTRUN -> [SKIP][17] ([i915#7828]) +7 similar issues
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119603v1/bat-adlp-11/igt@kms_chamelium_fra...@hdmi-crc-fast.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- bat-adlp-11:NOTRUN -> [SKIP][18] ([i915#4103]) +1 similar issue
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119603v1/bat-adlp-11/igt@kms_cursor_leg...@basic-busy-flip-before-cursor-legacy.html

  * igt@kms_force_connector_basic@prune-stale-modes:
- bat-adlp-11:NOTRUN -> [SKIP][19] ([i915#4093]) +3 similar issues
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119603v1/bat-adlp-11/igt@kms_force_connector_ba...@prune-stale-modes.html

  * igt@kms_pipe_crc_basic@nonblocking-crc@pipe-d-dp-1:
- bat-dg2-8:  [PASS][20] -> [FAIL][21] ([i915#7932])
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13297/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-...@pipe-d-dp-1.html
   [21]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119603v1/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-...@pipe-d-dp-1.html

  
 Possible fixes 

  * igt@i915_module_load@load:
- bat-adlp-11:[ABORT][22] ([i915#4423]) -> [PASS][23]
   [22]: 

[Intel-gfx] ✗ Fi.CI.BUILD: failure for drm/i915:fix kernel-doc trivial warnings

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915:fix kernel-doc trivial warnings
URL   : https://patchwork.freedesktop.org/series/119620/
State : failure

== Summary ==

Error: patch 
https://patchwork.freedesktop.org/api/1.0/series/119620/revisions/1/mbox/ not 
applied
Applying: drm/i915:fix kernel-doc trivial warnings
Using index info to reconstruct a base tree...
M   drivers/gpu/drm/i915/i915_active.h
M   drivers/gpu/drm/i915/i915_gpu_error.c
M   drivers/gpu/drm/i915/i915_perf.c
M   drivers/gpu/drm/i915/i915_scatterlist.h
M   drivers/gpu/drm/i915/i915_utils.h
M   drivers/gpu/drm/i915/i915_vma_resource.h
Falling back to patching base and 3-way merge...
Auto-merging drivers/gpu/drm/i915/i915_vma_resource.h
Auto-merging drivers/gpu/drm/i915/i915_utils.h
Auto-merging drivers/gpu/drm/i915/i915_scatterlist.h
Auto-merging drivers/gpu/drm/i915/i915_perf.c
CONFLICT (content): Merge conflict in drivers/gpu/drm/i915/i915_perf.c
Auto-merging drivers/gpu/drm/i915/i915_gpu_error.c
CONFLICT (content): Merge conflict in drivers/gpu/drm/i915/i915_gpu_error.c
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Patch failed at 0001 drm/i915:fix kernel-doc trivial warnings
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
Build failed, no error log produced




[Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915/psr: Use hw.adjusted mode when calculating io/fast wake times

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/psr: Use hw.adjusted mode when calculating io/fast wake times
URL   : https://patchwork.freedesktop.org/series/119580/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_13293_full -> Patchwork_119580v1_full


Summary
---

  **FAILURE**

  Serious unknown changes coming with Patchwork_119580v1_full absolutely need 
to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_119580v1_full, please notify your bug team to allow 
them
  to document this new failure mode, which will reduce false positives in CI.

  

Participating hosts (7 -> 7)
--

  No changes in participating hosts

Possible new issues
---

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

### IGT changes ###

 Possible regressions 

  * igt@kms_plane_lowres@tiling-x@pipe-a-hdmi-a-2:
- shard-rkl:  [PASS][1] -> [ABORT][2]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/shard-rkl-6/igt@kms_plane_lowres@tilin...@pipe-a-hdmi-a-2.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/shard-rkl-2/igt@kms_plane_lowres@tilin...@pipe-a-hdmi-a-2.html

  * igt@kms_plane_lowres@tiling-x@pipe-b-hdmi-a-2:
- shard-rkl:  [PASS][3] -> [DMESG-WARN][4]
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/shard-rkl-6/igt@kms_plane_lowres@tilin...@pipe-b-hdmi-a-2.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/shard-rkl-2/igt@kms_plane_lowres@tilin...@pipe-b-hdmi-a-2.html

  
Known issues


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

### IGT changes ###

 Issues hit 

  * igt@drm_fdinfo@virtual-idle:
- shard-rkl:  [PASS][5] -> [FAIL][6] ([i915#7742])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/shard-rkl-2/igt@drm_fdi...@virtual-idle.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/shard-rkl-1/igt@drm_fdi...@virtual-idle.html

  * igt@gem_exec_fair@basic-deadline:
- shard-glk:  [PASS][7] -> [FAIL][8] ([i915#2846])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/shard-glk9/igt@gem_exec_f...@basic-deadline.html
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/shard-glk2/igt@gem_exec_f...@basic-deadline.html

  * igt@gem_exec_fair@basic-flow@rcs0:
- shard-rkl:  [PASS][9] -> [FAIL][10] ([i915#2842]) +3 similar 
issues
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/shard-rkl-2/igt@gem_exec_fair@basic-f...@rcs0.html
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/shard-rkl-1/igt@gem_exec_fair@basic-f...@rcs0.html

  * igt@gem_exec_fair@basic-none-solo@rcs0:
- shard-apl:  [PASS][11] -> [FAIL][12] ([i915#2842])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/shard-apl7/igt@gem_exec_fair@basic-none-s...@rcs0.html
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/shard-apl1/igt@gem_exec_fair@basic-none-s...@rcs0.html

  * igt@i915_pm_dc@dc9-dpms:
- shard-tglu: [PASS][13] -> [SKIP][14] ([i915#4281])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/shard-tglu-10/igt@i915_pm...@dc9-dpms.html
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/shard-tglu-8/igt@i915_pm...@dc9-dpms.html

  * igt@kms_async_flips@alternate-sync-async-flip@pipe-b-hdmi-a-2:
- shard-rkl:  [PASS][15] -> [FAIL][16] ([i915#2521])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/shard-rkl-4/igt@kms_async_flips@alternate-sync-async-f...@pipe-b-hdmi-a-2.html
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/shard-rkl-6/igt@kms_async_flips@alternate-sync-async-f...@pipe-b-hdmi-a-2.html

  * igt@kms_color@deep-color:
- shard-rkl:  NOTRUN -> [SKIP][17] ([i915#3555] / [i915#4579])
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/shard-rkl-7/igt@kms_co...@deep-color.html

  * igt@kms_cursor_legacy@forked-move@pipe-b:
- shard-rkl:  [PASS][18] -> [INCOMPLETE][19] ([i915#8011])
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/shard-rkl-1/igt@kms_cursor_legacy@forked-m...@pipe-b.html
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/shard-rkl-7/igt@kms_cursor_legacy@forked-m...@pipe-b.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible@b-hdmi-a1:
- shard-glk:  [PASS][20] -> [FAIL][21] ([i915#79])
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/shard-glk3/igt@kms_flip@flip-vs-expired-vblank-interrupti...@b-hdmi-a1.html
   [21]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/shard-glk8/igt@kms_flip@flip-vs-expired-vblank-interrupti...@b-hdmi-a1.html

  * 

[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: Init DDI ports in VBT order (rev4)

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915: Init DDI ports in VBT order (rev4)
URL   : https://patchwork.freedesktop.org/series/114200/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13296 -> Patchwork_114200v4


Summary
---

  **SUCCESS**

  No regressions found.

  External URL: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/index.html

Participating hosts (43 -> 42)
--

  Missing(1): fi-snb-2520m 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@debugfs_test@basic-hwmon:
- bat-adlp-11:NOTRUN -> [SKIP][1] ([i915#7456])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/bat-adlp-11/igt@debugfs_t...@basic-hwmon.html

  * igt@gem_exec_parallel@engines@basic:
- bat-mtlp-8: [PASS][2] -> [FAIL][3] ([i915#8386])
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13296/bat-mtlp-8/igt@gem_exec_parallel@engi...@basic.html
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/bat-mtlp-8/igt@gem_exec_parallel@engi...@basic.html

  * igt@gem_tiled_pread_basic:
- bat-adlp-11:NOTRUN -> [SKIP][4] ([i915#3282])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/bat-adlp-11/igt@gem_tiled_pread_basic.html

  * igt@i915_selftest@live@execlists:
- fi-kbl-soraka:  [PASS][5] -> [INCOMPLETE][6] ([i915#7156] / 
[i915#7913])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13296/fi-kbl-soraka/igt@i915_selftest@l...@execlists.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/fi-kbl-soraka/igt@i915_selftest@l...@execlists.html

  * igt@i915_selftest@live@gt_heartbeat:
- fi-kbl-soraka:  [PASS][7] -> [DMESG-FAIL][8] ([i915#5334] / 
[i915#7872])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13296/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html

  * igt@i915_selftest@live@gt_mocs:
- bat-mtlp-8: [PASS][9] -> [DMESG-FAIL][10] ([i915#7059])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13296/bat-mtlp-8/igt@i915_selftest@live@gt_mocs.html
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/bat-mtlp-8/igt@i915_selftest@live@gt_mocs.html
- bat-mtlp-6: [PASS][11] -> [DMESG-FAIL][12] ([i915#7059])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13296/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html

  * igt@i915_selftest@live@gt_pm:
- bat-rpls-2: [PASS][13] -> [DMESG-FAIL][14] ([i915#4258] / 
[i915#7913])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13296/bat-rpls-2/igt@i915_selftest@live@gt_pm.html
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/bat-rpls-2/igt@i915_selftest@live@gt_pm.html

  * igt@i915_selftest@live@slpc:
- bat-mtlp-6: [PASS][15] -> [DMESG-WARN][16] ([i915#6367])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13296/bat-mtlp-6/igt@i915_selftest@l...@slpc.html
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/bat-mtlp-6/igt@i915_selftest@l...@slpc.html

  * igt@i915_suspend@basic-s3-without-i915:
- bat-dg2-8:  NOTRUN -> [SKIP][17] ([i915#6645])
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/bat-dg2-8/igt@i915_susp...@basic-s3-without-i915.html

  * igt@kms_busy@basic@modeset:
- bat-adlp-11:NOTRUN -> [ABORT][18] ([i915#4423])
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/bat-adlp-11/igt@kms_busy@ba...@modeset.html

  * igt@kms_chamelium_hpd@common-hpd-after-suspend:
- bat-dg2-8:  NOTRUN -> [SKIP][19] ([i915#7828])
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/bat-dg2-8/igt@kms_chamelium_...@common-hpd-after-suspend.html

  * igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-d-dp-1:
- bat-dg2-8:  [PASS][20] -> [FAIL][21] ([i915#7932])
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13296/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-crc-frame-seque...@pipe-d-dp-1.html
   [21]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-crc-frame-seque...@pipe-d-dp-1.html

  
 Possible fixes 

  * igt@core_auth@basic-auth:
- bat-adlp-11:[ABORT][22] ([i915#8011]) -> [PASS][23]
   [22]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13296/bat-adlp-11/igt@core_a...@basic-auth.html
   [23]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_114200v4/bat-adlp-11/igt@core_a...@basic-auth.html

  * igt@dmabuf@all-tests@dma_fence:
- bat-dg2-8:  

Re: [Intel-gfx] [v4] drm/i915/mtl: Add new vswing table for C20 phy to support DP 1.4

2023-06-20 Thread Sripada, Radhakrishna
Merged. Thank you for the patch and review.

--Radhakrishna(RK) Sripada

> -Original Message-
> From: Lee, Shawn C 
> Sent: Thursday, June 8, 2023 5:21 PM
> To: intel-gfx@lists.freedesktop.org
> Cc: Lee, Shawn C ; Kahola, Mika
> ; Taylor, Clinton A ;
> Sripada, Radhakrishna ; Shankar, Uma
> 
> Subject: [v4] drm/i915/mtl: Add new vswing table for C20 phy to support DP 1.4
> 
> Add vswing table to support DP 1.4 for C20 phy.
> 
> v2: rename mtl_c10_trans
> v3: add default_entry for mtl_c20_trans_dp14
> v4: rename mtl_cx0_trans_dp14
> 
> Bspec: 74104
> Signed-off-by: Lee Shawn C 
> Cc: Mika Kahola 
> Cc: Clint Taylor 
> Cc: Radhakrishna Sripada 
> Cc: Uma Shankar 
> Reviewed-by: Mika Kahola 
> Reviewed-by: Radhakrishna Sripada 
> ---
>  .../drm/i915/display/intel_ddi_buf_trans.c| 26 +--
>  1 file changed, 24 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_ddi_buf_trans.c
> b/drivers/gpu/drm/i915/display/intel_ddi_buf_trans.c
> index b7d20485bde5..8d2932d079cf 100644
> --- a/drivers/gpu/drm/i915/display/intel_ddi_buf_trans.c
> +++ b/drivers/gpu/drm/i915/display/intel_ddi_buf_trans.c
> @@ -1049,12 +1049,26 @@ static const union intel_ddi_buf_trans_entry
> _mtl_c10_trans_dp14[] = {
>   { .snps = { 62, 0, 0  } },  /* preset 9 */
>  };
> 
> -static const struct intel_ddi_buf_trans mtl_cx0_trans = {
> +static const struct intel_ddi_buf_trans mtl_c10_trans_dp14 = {
>   .entries = _mtl_c10_trans_dp14,
>   .num_entries = ARRAY_SIZE(_mtl_c10_trans_dp14),
>   .hdmi_default_entry = ARRAY_SIZE(_mtl_c10_trans_dp14) - 1,
>  };
> 
> +/* DP1.4 */
> +static const union intel_ddi_buf_trans_entry _mtl_c20_trans_dp14[] = {
> + { .snps = { 20, 0, 0  } },  /* preset 0 */
> + { .snps = { 24, 0, 4  } },  /* preset 1 */
> + { .snps = { 30, 0, 9  } },  /* preset 2 */
> + { .snps = { 34, 0, 14 } },  /* preset 3 */
> + { .snps = { 29, 0, 0  } },  /* preset 4 */
> + { .snps = { 34, 0, 5  } },  /* preset 5 */
> + { .snps = { 38, 0, 10 } },  /* preset 6 */
> + { .snps = { 36, 0, 0  } },  /* preset 7 */
> + { .snps = { 40, 0, 6  } },  /* preset 8 */
> + { .snps = { 48, 0, 0  } },  /* preset 9 */
> +};
> +
>  /* DP2.0 */
>  static const union intel_ddi_buf_trans_entry _mtl_c20_trans_uhbr[] = {
>   { .snps = { 48, 0, 0 } },   /* preset 0 */
> @@ -1090,6 +1104,12 @@ static const struct intel_ddi_buf_trans
> mtl_c20_trans_hdmi = {
>   .hdmi_default_entry = 0,
>  };
> 
> +static const struct intel_ddi_buf_trans mtl_c20_trans_dp14 = {
> + .entries = _mtl_c20_trans_dp14,
> + .num_entries = ARRAY_SIZE(_mtl_c20_trans_dp14),
> + .hdmi_default_entry = ARRAY_SIZE(_mtl_c20_trans_dp14) - 1,
> +};
> +
>  static const struct intel_ddi_buf_trans mtl_c20_trans_uhbr = {
>   .entries = _mtl_c20_trans_uhbr,
>   .num_entries = ARRAY_SIZE(_mtl_c20_trans_uhbr),
> @@ -1678,8 +1698,10 @@ mtl_get_cx0_buf_trans(struct intel_encoder
> *encoder,
>   return intel_get_buf_trans(_c20_trans_uhbr, n_entries);
>   else if (intel_crtc_has_type(crtc_state, INTEL_OUTPUT_HDMI) &&
> !(intel_is_c10phy(i915, phy)))
>   return intel_get_buf_trans(_c20_trans_hdmi, n_entries);
> + else if (!intel_is_c10phy(i915, phy))
> + return intel_get_buf_trans(_c20_trans_dp14, n_entries);
>   else
> - return intel_get_buf_trans(_cx0_trans, n_entries);
> + return intel_get_buf_trans(_c10_trans_dp14, n_entries);
>  }
> 
>  void intel_ddi_buf_trans_init(struct intel_encoder *encoder)
> --
> 2.17.1



Re: [Intel-gfx] [PATCH] drm/i915/mtl: Fix SSC selection for MPLLA

2023-06-20 Thread Sripada, Radhakrishna
Merged. With slight change to commit message to silence checkpatch warning. 
Thank you for the review.

--Radhakrishna(RK) Sripada

> -Original Message-
> From: Kahola, Mika 
> Sent: Friday, June 16, 2023 12:05 AM
> To: Sripada, Radhakrishna ; intel-
> g...@lists.freedesktop.org
> Cc: Taylor, Clinton A ; Almahallawy, Khaled
> ; Murthy, Arun R 
> Subject: RE: [PATCH] drm/i915/mtl: Fix SSC selection for MPLLA
> 
> > -Original Message-
> > From: Sripada, Radhakrishna 
> > Sent: Friday, June 16, 2023 7:40 AM
> > To: intel-gfx@lists.freedesktop.org
> > Cc: Sripada, Radhakrishna ; Kahola, Mika
> ; Taylor, Clinton A
> > ; Almahallawy, Khaled
> ; Murthy, Arun R
> > 
> > Subject: [PATCH] drm/i915/mtl: Fix SSC selection for MPLLA
> >
> > Driver does not clear the default SSC for MPLLA. This causes link training
> failure when trying to use 10G and 20G rates. Fix the
> > behaviour and enable ssc only when we really want.
> >
> > Fixes: 237e7be0bf57 ("drm/i915/mtl: For DP2.0 10G and 20G rates use
> MPLLA")
> > Cc: Mika Kahola 
> > Cc: Clint Taylor 
> > Cc: Khaled Almahallawy 
> > Cc: Arun R Murthy 
> 
> Reviewed-by: Mika Kahola 
> 
> > Signed-off-by: Radhakrishna Sripada 
> > ---
> >  drivers/gpu/drm/i915/display/intel_cx0_phy.c | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/i915/display/intel_cx0_phy.c
> b/drivers/gpu/drm/i915/display/intel_cx0_phy.c
> > index f235df5646ed..1b00ef2c6185 100644
> > --- a/drivers/gpu/drm/i915/display/intel_cx0_phy.c
> > +++ b/drivers/gpu/drm/i915/display/intel_cx0_phy.c
> > @@ -2434,7 +2434,8 @@ static void intel_program_port_clock_ctl(struct
> intel_encoder *encoder,
> >
> > intel_de_rmw(i915, XELPDP_PORT_CLOCK_CTL(encoder->port),
> >  XELPDP_LANE1_PHY_CLOCK_SELECT |
> XELPDP_FORWARD_CLOCK_UNGATE |
> > -XELPDP_DDI_CLOCK_SELECT_MASK |
> XELPDP_SSC_ENABLE_PLLB, val);
> > +XELPDP_DDI_CLOCK_SELECT_MASK |
> XELPDP_SSC_ENABLE_PLLA |
> > +XELPDP_SSC_ENABLE_PLLB, val);
> >  }
> >
> >  static u32 intel_cx0_get_powerdown_update(u8 lane_mask)
> > --
> > 2.34.1



Re: [Intel-gfx] [PATCH] drm/i915/mtl: Skip using vbt hdmi_level_shifter selection on MTL

2023-06-20 Thread Sripada, Radhakrishna
Merged. Thank you for the review.

--Radhakrishna(RK) Sripada

> -Original Message-
> From: Taylor, Clinton A 
> Sent: Tuesday, June 20, 2023 2:10 PM
> To: Sripada, Radhakrishna ; intel-
> g...@lists.freedesktop.org
> Cc: Lee, Shawn C ; Almahallawy, Khaled
> 
> Subject: Re: [PATCH] drm/i915/mtl: Skip using vbt hdmi_level_shifter selection
> on MTL
> 
> On Fri, 2023-06-16 at 14:00 -0700, Radhakrishna Sripada wrote:
> > The hdmi_level_shifter part of General Bytes definition in VBT, which was
> > used for choosing different levels on earlier platforms is now a hidden
> > optin and shows the default value of 0. The level shifter is now to be
> > deduced from hdmi_default_entry in  intel_ddi_buf_trans for each phy.
> >
> > Skip providing the default hw provided value to force driver to choose hdmi
> > default entry.
> >
> > Bspec: 20124
> > Cc: Khaled Almahallawy 
> > Cc: Lee Shawn C 
> > Cc: Clint Taylor 
> > Signed-off-by: Radhakrishna Sripada 
> > ---
> >  drivers/gpu/drm/i915/display/intel_bios.c | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/i915/display/intel_bios.c
> > b/drivers/gpu/drm/i915/display/intel_bios.c
> > index 34a397adbd6b..4b9bf76e137d 100644
> > --- a/drivers/gpu/drm/i915/display/intel_bios.c
> > +++ b/drivers/gpu/drm/i915/display/intel_bios.c
> > @@ -2615,7 +2615,8 @@ intel_bios_encoder_is_lspcon(const struct
> intel_bios_encoder_data
> > *devdata)
> >  /* This is an index in the HDMI/DVI DDI buffer translation table, or -1 */
> >  int intel_bios_hdmi_level_shift(const struct intel_bios_encoder_data
> *devdata)
> >  {
> > -   if (!devdata || devdata->i915->display.vbt.version < 158)
> > +   if (!devdata || devdata->i915->display.vbt.version < 158 ||
> > +   DISPLAY_VER(devdata->i915) >= 14)
> > return -1;
> >
> Reviewed-by: Clint Taylor 
> 
> -Clint
> 
> > return devdata->child.hdmi_level_shifter_value;


[Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915: Init DDI ports in VBT order (rev4)

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915: Init DDI ports in VBT order (rev4)
URL   : https://patchwork.freedesktop.org/series/114200/
State : warning

== Summary ==

Error: dim sparse failed
Sparse version: v0.6.2
Fast mode used, each commit won't be checked separately.




[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Init DDI ports in VBT order (rev4)

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915: Init DDI ports in VBT order (rev4)
URL   : https://patchwork.freedesktop.org/series/114200/
State : warning

== Summary ==

Error: dim checkpatch failed
1cfecb74803d drm/i915: Initialize dig_port->aux_ch to NONE to be sure
2a35c4073b30 drm/i915: Only populate aux_ch is really needed
bbada56642e0 drm/i915: Remove DDC pin sanitation
e5c2e8d5ad51 drm/i915: Remove AUX CH sanitation
-:15: WARNING:TYPO_SPELLING: 'succesfully' may be misspelled - perhaps 
'successfully'?
#15: 
favoring the first encoder to succesfully initialize. The reason
  ^^^

total: 0 errors, 1 warnings, 0 checks, 154 lines checked
c3eb8b0537b2 drm/i915: Try to initialize DDI/ICL+ DSI ports for every VBT child 
device
-:180: ERROR:OPEN_BRACE: that open brace { should be on the previous line
#180: FILE: drivers/gpu/drm/i915/display/intel_bios.c:3598:
+void intel_bios_for_each_encoder(struct drm_i915_private *i915,
+void (*func)(struct drm_i915_private *i915,
+ const struct 
intel_bios_encoder_data *devdata,
+ enum port port))
+{

total: 1 errors, 0 warnings, 0 checks, 303 lines checked




Re: [Intel-gfx] [PATCH] drm/i915/mtl: Skip using vbt hdmi_level_shifter selection on MTL

2023-06-20 Thread Taylor, Clinton A
On Fri, 2023-06-16 at 14:00 -0700, Radhakrishna Sripada wrote:
> The hdmi_level_shifter part of General Bytes definition in VBT, which was
> used for choosing different levels on earlier platforms is now a hidden
> optin and shows the default value of 0. The level shifter is now to be
> deduced from hdmi_default_entry in  intel_ddi_buf_trans for each phy.
> 
> Skip providing the default hw provided value to force driver to choose hdmi
> default entry.
> 
> Bspec: 20124
> Cc: Khaled Almahallawy 
> Cc: Lee Shawn C 
> Cc: Clint Taylor 
> Signed-off-by: Radhakrishna Sripada 
> ---
>  drivers/gpu/drm/i915/display/intel_bios.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_bios.c
> b/drivers/gpu/drm/i915/display/intel_bios.c
> index 34a397adbd6b..4b9bf76e137d 100644
> --- a/drivers/gpu/drm/i915/display/intel_bios.c
> +++ b/drivers/gpu/drm/i915/display/intel_bios.c
> @@ -2615,7 +2615,8 @@ intel_bios_encoder_is_lspcon(const struct 
> intel_bios_encoder_data
> *devdata)
>  /* This is an index in the HDMI/DVI DDI buffer translation table, or -1 */
>  int intel_bios_hdmi_level_shift(const struct intel_bios_encoder_data 
> *devdata)
>  {
> - if (!devdata || devdata->i915->display.vbt.version < 158)
> + if (!devdata || devdata->i915->display.vbt.version < 158 ||
> + DISPLAY_VER(devdata->i915) >= 14)
>   return -1;
>  
Reviewed-by: Clint Taylor 

-Clint

>   return devdata->child.hdmi_level_shifter_value;


Re: [Intel-gfx] [v4, 01/14] drm/i915: Fix PIPEDMC disabling for a bigjoiner configuration

2023-06-20 Thread Rudi Heitbaum
Hi Imre,

Raised the ticket and was able to capture the logs for you.

https://gitlab.freedesktop.org/drm/intel/-/issues/8559

Thanks
Rudi

On Wed, 31 May 2023 at 18:47, Imre Deak  wrote:
>
> On Tue, May 30, 2023 at 01:49:07PM +, Rudi Heitbaum wrote:
> Hi Rudi,
>
> Could you open a ticket at
> https://gitlab.freedesktop.org/drm/intel/-/issues/new
>
> attaching a dmesg log after booting with drm.debug=0xe, with the
> messages from boot-up until the issue happens?
>
> Thanks,
> Imre
>
> > Hi Imre/Dave,
> >
> > Ref: [v4,01/14] drm/i915: Fix PIPEDMC disabling for a bigjoiner 
> > configuration
> >  [git pull] drm fixes for 6.4-rc4
> >  drm-fixes-2023-05-26:
> >  drm fixes for 6.4-rc4
> >
> > This patch has caused a regression between 6.4-rc3 and 6.4-rc4. Other
> > tested kernels include 6.3.4 work fine. Dropping the patch allows the decode
> > playback of media via Kodi. Without dropping the patch - the media
> > starts and stutters then ceases to play.
> >
> > There is an additional issue that 6.4-rc4 audio playback is also failing
> > (where 6.4-rc3 was fine), I have not yet tracked this down.
> >
> > This is all on:
> > DMI: Intel(R) Client Systems NUC12WSKi7/NUC12WSBi7, BIOS 
> > WSADL357.0087.2023.0306.1931 03/06/2023
> > 12th Gen Intel(R) Core(TM) i7-1260P (family: 0x6, model: 0x9a, stepping: 
> > 0x3)
> > microcode: updated early: 0x429 -> 0x42a, date = 2023-02-14
> >
> > Regards
> >
> > Rudi
> >
> > On Wed, May 10, 2023 at 01:31:18PM +0300, Imre Deak wrote:
> > > For a bigjoiner configuration display->crtc_disable() will be called
> > > first for the slave CRTCs and then for the master CRTC. However slave
> > > CRTCs will be actually disabled only after the master CRTC is disabled
> > > (from the encoder disable hooks called with the master CRTC state).
> > > Hence the slave PIPEDMCs can be disabled only after the master CRTC is
> > > disabled, make this so.
> > >
> > > intel_encoders_post_pll_disable() must be called only for the master
> > > CRTC, as for the other two encoder disable hooks. While at it fix this
> > > up as well. This didn't cause a problem, since
> > > intel_encoders_post_pll_disable() will call the corresponding hook only
> > > for an encoder/connector connected to the given CRTC, however slave
> > > CRTCs will have no associated encoder/connector.
> > >
> > > Fixes: 3af2ff0840be ("drm/i915: Enable a PIPEDMC whenever its 
> > > corresponding pipe is enabled")
> > > Cc: Rodrigo Vivi 
> > > Cc: Ville Syrjälä 
> > > Reviewed-by: Ville Syrjälä 
> > > Signed-off-by: Imre Deak 
> > > ---
> > >  drivers/gpu/drm/i915/display/intel_display.c | 12 ++--
> > >  1 file changed, 10 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/drivers/gpu/drm/i915/display/intel_display.c 
> > > b/drivers/gpu/drm/i915/display/intel_display.c
> > > index 1d5d42a408035..116fa52290b84 100644
> > > --- a/drivers/gpu/drm/i915/display/intel_display.c
> > > +++ b/drivers/gpu/drm/i915/display/intel_display.c
> > > @@ -1702,9 +1702,17 @@ static void hsw_crtc_disable(struct 
> > > intel_atomic_state *state,
> > >
> > > intel_disable_shared_dpll(old_crtc_state);
> > >
> > > -   intel_encoders_post_pll_disable(state, crtc);
> > > +   if (!intel_crtc_is_bigjoiner_slave(old_crtc_state)) {
> > > +   struct intel_crtc *slave_crtc;
> > > +
> > > +   intel_encoders_post_pll_disable(state, crtc);
> > >
> > > -   intel_dmc_disable_pipe(i915, crtc->pipe);
> > > +   intel_dmc_disable_pipe(i915, crtc->pipe);
> > > +
> > > +   for_each_intel_crtc_in_pipe_mask(>drm, slave_crtc,
> > > +
> > > intel_crtc_bigjoiner_slave_pipes(old_crtc_state))
> > > +   intel_dmc_disable_pipe(i915, slave_crtc->pipe);
> > > +   }
> > >  }
> > >
> > >  static void i9xx_pfit_enable(const struct intel_crtc_state *crtc_state)


Re: [Intel-gfx] [PATCH v2] drm/i915: Replace kmap() with kmap_local_page()

2023-06-20 Thread Sumitra Sharma


On Tue, Jun 20, 2023 at 06:23:38AM -0700, Ira Weiny wrote:
> Sumitra Sharma wrote:
> > On Sun, Jun 18, 2023 at 11:11:08AM -0700, Ira Weiny wrote:
> > > Sumitra Sharma wrote:
> > > > kmap() has been deprecated in favor of the kmap_local_page()
> > > > due to high cost, restricted mapping space, the overhead of a
> > > > global lock for synchronization, and making the process sleep
> > > > in the absence of free slots.
> > > > 
> > > > kmap_local_page() is faster than kmap() and offers thread-local
> > > > and CPU-local mappings, take pagefaults in a local kmap region
> > > > and preserves preemption by saving the mappings of outgoing tasks
> > > > and restoring those of the incoming one during a context switch.
> > > > 
> > > > The mapping is kept thread local in the function
> > > > “i915_vma_coredump_create” in i915_gpu_error.c
> > > > 
> > > > Therefore, replace kmap() with kmap_local_page().
> > > > 
> > > > Suggested-by: Ira Weiny 
> > > > 
> > > 
> > > NIT: No need for the line break between Suggested-by and your signed off 
> > > line.
> > > 
> > 
> > Hi Ira,
> > 
> > What does NIT stand for? 
> 
> Shorthand for 'nitpicking'.
> 
> "giving too much attention to details that are not important, especially
> as a way of criticizing: "
> 
>   - https://dictionary.cambridge.org/dictionary/english/nitpicking
> 
> Via email this is a way for authors of an email to indicate something is
> technically wrong but while nicely acknowledging that it is not very
> significant and could be seen as overly critical.
> 
> For this particular comment I'm showing something to pay attention to next
> time but that was not a big deal this time around.
>

Hi Ira,

Thank for your explanation on NIT. 


> > 
> > Thank you. I will take care about the line breaks.
> > 
> > > > Signed-off-by: Sumitra Sharma 
> > > > ---
> > > > 
> > > > Changes in v2:
> > > > - Replace kmap() with kmap_local_page().
> > > 
> > > Generally it is customary to attribute a change like this to those who
> > > suggested it in a V1 review.
> > > 
> > > For example:
> > > 
> > >   - Tvrtko/Thomas: Use kmap_local_page() instead of page_address()
> > > 
> > > Also I don't see Thomas on the new email list.  Since he took the time to
> > > review V1 he might want to check this version out.  I've added him to the
> > > 'To:' list.
> > > 
> > > Also a link to V1 is nice.  B4 formats it like this:
> > > 
> > > - Link to v1: 
> > > https://lore.kernel.org/all/20230614123556.ga381...@sumitra.com/
> > > 
> > > All that said the code looks good to me.  So with the above changes.
> > > 
> > > Reviewed-by: Ira Weiny 
> > > 
> > 
> > I have noted down the points mentioned above. Thank you again.
> > 
> > I am not supposed to create another version of this patch for 
> > adding the above mentions, as you and Thomas both gave this patch 
> > a reviewed-by tag. Right?
> > 
> 
> Based on this response[*] from Tvrtko I think this version can move
> through without a v3.

Okay!


Thanks & regards
Sumitra

> 
> Thanks!
> Ira
> 
> [*] 
> https://lore.kernel.org/all/bcb0a1d2-cd4d-a56f-1ee6-7ccfdd2f7...@linux.intel.com/
> 
> 
> Thanks all! I'll just re-send the patch for our CI, since it didn't get
> picked up automatically (stuck in moderation perhaps), with all r-b tags
> added and extra line space removed and merge it if results will be green.
> 
> Regards,
> 
> Tvrtko
> 
> 
> 
> > 
> > Thanks & regards
> > Sumitra
> > 
> > PS: I am new to the open source vocabulary terms.
> > 
> > > > - Change commit subject and message.
> > > > 
> > > >  drivers/gpu/drm/i915/i915_gpu_error.c | 4 ++--
> > > >  1 file changed, 2 insertions(+), 2 deletions(-)
> > > > 
> > > > diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c 
> > > > b/drivers/gpu/drm/i915/i915_gpu_error.c
> > > > index f020c0086fbc..bc41500eedf5 100644
> > > > --- a/drivers/gpu/drm/i915/i915_gpu_error.c
> > > > +++ b/drivers/gpu/drm/i915/i915_gpu_error.c
> > > > @@ -1164,9 +1164,9 @@ i915_vma_coredump_create(const struct intel_gt 
> > > > *gt,
> > > >  
> > > > drm_clflush_pages(, 1);
> > > >  
> > > > -   s = kmap(page);
> > > > +   s = kmap_local_page(page);
> > > > ret = compress_page(compress, s, dst, false);
> > > > -   kunmap(page);
> > > > +   kunmap_local(s);
> > > >  
> > > > drm_clflush_pages(, 1);
> > > >  
> > > > -- 
> > > > 2.25.1
> > > > 
> > > 
> > > 
> 
> 


[Intel-gfx] [PATCH] drm/i915/gt: fix kernel-doc trivial warnings

2023-06-20 Thread pengfuyuan
The test robot reports some make warnings.

Fix those warnings:
drivers/gpu/drm/i915/gt/intel_gtt.h:499: warning: Function parameter or 
member 'vm' not described in 'i915_vm_resv_put'
drivers/gpu/drm/i915/gt/intel_context.h:108: warning: Function parameter or 
member 'ce' not described in 'intel_context_lock_pinned'
drivers/gpu/drm/i915/gt/intel_context.h:123: warning: Function parameter or 
member 'ce' not described in 'intel_context_is_pinned'
drivers/gpu/drm/i915/gt/intel_context.h:142: warning: Function parameter or 
member 'ce' not described in 'intel_context_unlock_pinned
drivers/gpu/drm/i915/gt/intel_engine_types.h:293: warning: Function 
parameter or member 'preempt_hang' not described in 'intel_engine_execlists'

Reported-by: k2ci 
Signed-off-by: pengfuyuan 
---
 drivers/gpu/drm/i915/gt/intel_context.h  | 6 +++---
 drivers/gpu/drm/i915/gt/intel_engine_types.h | 3 +++
 drivers/gpu/drm/i915/gt/intel_gtt.h  | 2 +-
 3 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/i915/gt/intel_context.h 
b/drivers/gpu/drm/i915/gt/intel_context.h
index 48f888c3da08..6b5eae7b88bc 100644
--- a/drivers/gpu/drm/i915/gt/intel_context.h
+++ b/drivers/gpu/drm/i915/gt/intel_context.h
@@ -97,7 +97,7 @@ void intel_context_bind_parent_child(struct intel_context 
*parent,
 
 /**
  * intel_context_lock_pinned - Stablises the 'pinned' status of the HW context
- * @ce - the context
+ * @ce: the context
  *
  * Acquire a lock on the pinned status of the HW context, such that the context
  * can neither be bound to the GPU or unbound whilst the lock is held, i.e.
@@ -111,7 +111,7 @@ static inline int intel_context_lock_pinned(struct 
intel_context *ce)
 
 /**
  * intel_context_is_pinned - Reports the 'pinned' status
- * @ce - the context
+ * @ce: the context
  *
  * While in use by the GPU, the context, along with its ring and page
  * tables is pinned into memory and the GTT.
@@ -133,7 +133,7 @@ static inline void intel_context_cancel_request(struct 
intel_context *ce,
 
 /**
  * intel_context_unlock_pinned - Releases the earlier locking of 'pinned' 
status
- * @ce - the context
+ * @ce: the context
  *
  * Releases the lock earlier acquired by intel_context_unlock_pinned().
  */
diff --git a/drivers/gpu/drm/i915/gt/intel_engine_types.h 
b/drivers/gpu/drm/i915/gt/intel_engine_types.h
index 960291f88fd6..1fc1fc882097 100644
--- a/drivers/gpu/drm/i915/gt/intel_engine_types.h
+++ b/drivers/gpu/drm/i915/gt/intel_engine_types.h
@@ -289,6 +289,9 @@ struct intel_engine_execlists {
 */
u8 csb_head;
 
+   /**
+* @preempt_hang: preempt hang state for self-tests.
+*/
I915_SELFTEST_DECLARE(struct st_preempt_hang preempt_hang;)
 };
 
diff --git a/drivers/gpu/drm/i915/gt/intel_gtt.h 
b/drivers/gpu/drm/i915/gt/intel_gtt.h
index 69ce55f517f5..a9aa72a8c59c 100644
--- a/drivers/gpu/drm/i915/gt/intel_gtt.h
+++ b/drivers/gpu/drm/i915/gt/intel_gtt.h
@@ -493,7 +493,7 @@ static inline void i915_vm_put(struct i915_address_space 
*vm)
 
 /**
  * i915_vm_resv_put - Release a reference on the vm's reservation lock
- * @resv: Pointer to a reservation lock obtained from i915_vm_resv_get()
+ * @vm: Pointer to a reservation lock obtained from i915_vm_resv_release()
  */
 static inline void i915_vm_resv_put(struct i915_address_space *vm)
 {
-- 
2.25.1


No virus found
Checked by Hillstone Network AntiVirus


Re: [Intel-gfx] [PATCH v12 21/24] vfio: Determine noiommu device in __vfio_register_dev()

2023-06-20 Thread Alex Williamson
On Tue, 13 Jun 2023 15:01:35 +
"Liu, Yi L"  wrote:

> > From: Alex Williamson 
> > Sent: Tuesday, June 13, 2023 10:48 PM
> > 
> > On Tue, 13 Jun 2023 14:33:01 +
> > "Liu, Yi L"  wrote:
> >   
> > > > From: Alex Williamson 
> > > > Sent: Tuesday, June 13, 2023 10:19 PM
> > > >
> > > > On Tue, 13 Jun 2023 05:53:42 +
> > > > "Liu, Yi L"  wrote:
> > > >  
> > > > > > From: Alex Williamson 
> > > > > > Sent: Tuesday, June 13, 2023 6:42 AM
> > > > > >
> > > > > > On Fri,  2 Jun 2023 05:16:50 -0700
> > > > > > Yi Liu  wrote:
> > > > > >  
> > > > > > > This moves the noiommu device determination and noiommu taint out 
> > > > > > > of
> > > > > > > vfio_group_find_or_alloc(). noiommu device is determined in
> > > > > > > __vfio_register_dev() and result is stored in flag 
> > > > > > > vfio_device->noiommu,
> > > > > > > the noiommu taint is added in the end of __vfio_register_dev().
> > > > > > >
> > > > > > > This is also a preparation for compiling out vfio_group 
> > > > > > > infrastructure
> > > > > > > as it makes the noiommu detection and taint common between the 
> > > > > > > cdev path
> > > > > > > and group path though cdev path does not support noiommu.  
> > > > > >
> > > > > > Does this really still make sense?  The motivation for the change is
> > > > > > really not clear without cdev support for noiommu.  Thanks,  
> > > > >
> > > > > I think it still makes sense. When CONFIG_VFIO_GROUP==n, the kernel
> > > > > only supports cdev interface. If there is noiommu device, vfio should
> > > > > fail the registration. So, the noiommu determination is still needed. 
> > > > > But
> > > > > I'd admit the taint might still be in the group code.  
> > > >
> > > > How is there going to be a noiommu device when VFIO_GROUP is unset?  
> > >
> > > How about booting a kernel with iommu disabled, then all the devices
> > > are not protected by iommu. I suppose they are noiommu devices. If
> > > user wants to bound them to vfio, the kernel should have VFIO_GROUP.
> > > Otherwise, needs to fail.  
> > 
> > "noiommu" is a vfio designation of a device, it must be created by
> > vfio.
> 
> Sure.
> 
> > There can certainly be devices which are not IOMMU backed, but
> > without vfio designating them as noiommu devices, which is only done
> > via the legacy and compat paths, there's no such thing as a noiommu
> > device.   
> 
> Yes.
> 
> > Devices without an IOMMU are simply out of scope for cdev,
> > there should never be a vfio cdev entry created for them.  Thanks,  
> 
> Actually, this is what I want to solve. I need to check if a device is
> IOMMU backed or not, and based on this info to prevent creating
> cdev entry for them in the coming cdev support or may need to
> fail registration if VFIO_GROUP is unset.
> 
> If this patch is not good. I can use the vfio_device_is_noiommu()
> written like below when VFIO_GROUP is unset. What about your
> opinion?
> 
> static inline bool vfio_device_is_noiommu(struct vfio_device *vdev)
> {
>   struct iommu_group *iommu_group;
> 
>   iommu_group = iommu_group_get(vdev->dev);
>   iommu_group_put(iommu_group); /* Accepts NULL */
>   return !iommu_group;
> }


No, please do not confuse the issue.  As we agreed above "noiommu"
means a specific thing, it's a device without IOMMU backing that vfio
has artificially included in the environment.  If we don't have
VFIO_NOIOMMU then there's no such thing as a "noiommu" device.

You can certainly use an iommu_group test to decide if a device should
be represented, but there absolutely should never be a vfio_device
created without IOMMU backing and without VFIO_NOIOMMU.  Thanks,

Alex



[Intel-gfx] [PATCH next] drm/i915/huc: Fix missing error code in intel_huc_init()

2023-06-20 Thread Harshit Mogalapalli
Smatch warns:
drivers/gpu/drm/i915/gt/uc/intel_huc.c:388
intel_huc_init() warn: missing error code 'err'

When the allocation of VMAs fail: The value of err is zero at this
point and it is passed to PTR_ERR and also finally returning zero which
is success instead of failure.

Fix this by adding the missing error code when VMA allocation fails.

Fixes: 08872cb13a71 ("drm/i915/mtl/huc: auth HuC via GSC")
Signed-off-by: Harshit Mogalapalli 
---
Found using Static analysis with Smatch, only compile tested.
---
 drivers/gpu/drm/i915/gt/uc/intel_huc.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/i915/gt/uc/intel_huc.c 
b/drivers/gpu/drm/i915/gt/uc/intel_huc.c
index e0afd8f89502..ddd146265beb 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_huc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_huc.c
@@ -384,6 +384,7 @@ int intel_huc_init(struct intel_huc *huc)
 
vma = intel_guc_allocate_vma(>uc.guc, 
PXP43_HUC_AUTH_INOUT_SIZE * 2);
if (IS_ERR(vma)) {
+   err = PTR_ERR(vma);
huc_info(huc, "Failed to allocate heci pkt\n");
goto out;
}
-- 
2.41.0



[Intel-gfx] [PATCH] drm/i915: Fix missing check for return value of dev_get_platdata()

2023-06-20 Thread Chenyuan Mi
The dev_get_platdata() function may return NULL, which may
cause null pointer deference, and most other callsites of
dev_get_platdata() do Null check. Add Null check for return
value of dev_get_platdata().

Found by our static analysis tool.

Signed-off-by: Chenyuan Mi 
---
 drivers/gpu/drm/i915/display/intel_lpe_audio.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/i915/display/intel_lpe_audio.c 
b/drivers/gpu/drm/i915/display/intel_lpe_audio.c
index 5863763de530..a1655ddbe910 100644
--- a/drivers/gpu/drm/i915/display/intel_lpe_audio.c
+++ b/drivers/gpu/drm/i915/display/intel_lpe_audio.c
@@ -336,6 +336,9 @@ void intel_lpe_audio_notify(struct drm_i915_private 
*dev_priv,
return;
 
pdata = dev_get_platdata(_priv->display.audio.lpe.platdev->dev);
+   if (!pdata)
+   return;
+
ppdata = >port[port - PORT_B];
 
spin_lock_irqsave(>lpe_audio_slock, irqflags);
-- 
2.17.1



[Intel-gfx] [PATCH] drm/i915/gt/uc:fix kernel-doc trivial warnings

2023-06-20 Thread pengfuyuan
The test robot reports some make warnings.

Fix those warnings:
drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function 
parameter or member 'marker' not described in 'guc_log_buffer_state'
drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function 
parameter or member 'read_ptr' not described in 'guc_log_buffer_state'
drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function 
parameter or member 'write_ptr' not described in 'guc_log_buffer_state'
drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function 
parameter or member 'size' not described in 'guc_log_buffer_state'
drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function 
parameter or member 'sampled_write_ptr' not described in 'guc_log_buffer_state'
drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function 
parameter or member 'wrap_offset' not described in 'guc_log_buffer_state'
drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function 
parameter or member 'flush_to_file' not described in 'guc_log_buffer_state'
drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function 
parameter or member 'buffer_full_cnt' not described in 'guc_log_buffer_state'
drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function 
parameter or member 'reserved' not described in 'guc_log_buffer_state'
drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function 
parameter or member 'flags' not described in 'guc_log_buffer_state'
drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function 
parameter or member 'version' not described in 'guc_log_buffer_state'
drivers/gpu/drm/i915/gt/uc/intel_guc.h:274: warning: Function parameter or 
member 'dbgfs_node' not described in 'intel_guc'
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:27: warning: Function 
parameter or member 'size' not described in '__guc_capture_bufstate'
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:27: warning: Function 
parameter or member 'data' not described in '__guc_capture_bufstate'
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:27: warning: Function 
parameter or member 'rd' not described in '__guc_capture_bufstate'
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:27: warning: Function 
parameter or member 'wr' not described in '__guc_capture_bufstate'
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:59: warning: Function 
parameter or member 'link' not described in '__guc_capture_parsed_output'
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:59: warning: Function 
parameter or member 'is_partial' not described in '__guc_capture_parsed_output'
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:59: warning: Function 
parameter or member 'eng_class' not described in '__guc_capture_parsed_output'
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:59: warning: Function 
parameter or member 'eng_inst' not described in '__guc_capture_parsed_output'
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:59: warning: Function 
parameter or member 'guc_id' not described in '__guc_capture_parsed_output'
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:59: warning: Function 
parameter or member 'lrca' not described in '__guc_capture_parsed_output'
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:59: warning: Function 
parameter or member 'reginfo' not described in '__guc_capture_parsed_output'
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:163: warning: Function 
parameter or member 'is_valid' not described in '__guc_capture_ads_cache'
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:163: warning: Function 
parameter or member 'ptr' not described in '__guc_capture_ads_cache'
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:163: warning: Function 
parameter or member 'size' not described in '__guc_capture_ads_cache'
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:163: warning: Function 
parameter or member 'status' not described in '__guc_capture_ads_cache'
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:216: warning: Function 
parameter or member 'ads_null_cache' not described in 'intel_guc_state_capture'
drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:216: warning: Function 
parameter or member 'max_mmio_per_node' not described in 
'intel_guc_state_capture'

Reported-by: k2ci 
Signed-off-by: pengfuyuan 
---
 drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h | 27 +++
 drivers/gpu/drm/i915/gt/uc/intel_guc.h|  1 +
 drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h   | 18 +
 3 files changed, 46 insertions(+)

diff --git a/drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h 
b/drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h
index 9d589c28f40f..84c74244a6a8 100644
--- a/drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h
+++ b/drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h
@@ -18,6 +18,11 @@ struct file;
  * Book-keeping structure used to track read and write pointers
  * as we extract error capture data from the GuC-log-buffer's
  * error-capture 

Re: [Intel-gfx] [PATCH] drm/i915: Call page_address() on page acquired with GFP_KERNEL flag

2023-06-20 Thread Sumitra Sharma


On Wed, Jun 14, 2023 at 05:30:25PM +0200, Thomas Hellström (Intel) wrote:
> 
> On 6/14/23 15:22, Tvrtko Ursulin wrote:
> > 
> > On 14/06/2023 13:35, Sumitra Sharma wrote:
> > > Pages allocated with GFP_KERNEL cannot come from Highmem.
> > > That is why there is no need to call kmap() on them.
> > 
> > Are you sure it is GFP_KERNEL backed and not tmpfs? I am not sure myself
> > so let me copy Matt and Thomas if they happen to know off hand.
>

Hello,

Yes it is true that the pages have not been acquired using the GFP_KERNEL.

I confused the allocation of the struct 'i915_vma_resource' tracking the 
pages with the allocation of the pages themselves.

This was noted by my mentor Ira Weiny .

> It looks to me these are shmem pages or TTM pages. Both could be highmem. So
> I think kmap is the correct choice here.
> 

However, the kmap() will not be the correct choice here and kmap_local_page()
must be used instead. I have created a v2 patch for the same
https://lore.kernel.org/lkml/20230617180420.ga410...@sumitra.com/

Thank you for helping me.

Regards
Sumitra

> /Thomas
>
> 
> 
> 
> > 
> > Regards,
> > 
> > Tvrtko
> > 
> > > Therefore, don't call kmap() on the page coming from
> > > vma_res->bi.pages using for_each_sgt_page() in
> > > i915_vma_coredump_create().
> > > 
> > > Use a plain page_address() to get the kernel address instead.
> > > 
> > > Signed-off-by: Sumitra Sharma 
> > > ---
> > >   drivers/gpu/drm/i915/i915_gpu_error.c | 3 +--
> > >   1 file changed, 1 insertion(+), 2 deletions(-)
> > > 
> > > diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c
> > > b/drivers/gpu/drm/i915/i915_gpu_error.c
> > > index f020c0086fbc..6f51cb4fc55c 100644
> > > --- a/drivers/gpu/drm/i915/i915_gpu_error.c
> > > +++ b/drivers/gpu/drm/i915/i915_gpu_error.c
> > > @@ -1164,9 +1164,8 @@ i915_vma_coredump_create(const struct intel_gt
> > > *gt,
> > >     drm_clflush_pages(, 1);
> > >   -    s = kmap(page);
> > > +    s = page_address(page);
> > >   ret = compress_page(compress, s, dst, false);
> > > -    kunmap(page);
> > >     drm_clflush_pages(, 1);


[Intel-gfx] next: clang: x86_64: /intel_display.c:6012:3: error: unannotated fall-through between switch labels [-Werror, -Wimplicit-fallthrough]

2023-06-20 Thread Naresh Kamboju
Linux next-20230523 and next-20230524 the x86_64 and i386 builds failed
with clang.

Reported-by: Linux Kernel Functional Testing 

make --silent --keep-going \
  --jobs=8 O=/home/tuxbuild/.cache/tuxmake/builds/1/build ARCH=x86_64 \
  SRCARCH=x86 CROSS_COMPILE=x86_64-linux-gnu- \
  'HOSTCC=sccache clang' 'CC=sccache clang' \
   LLVM=1 LLVM_IAS=1

drivers/gpu/drm/i915/display/intel_display.c:6012:3: error:
unannotated fall-through between switch labels
[-Werror,-Wimplicit-fallthrough]
case I915_FORMAT_MOD_X_TILED:
^
drivers/gpu/drm/i915/display/intel_display.c:6012:3: note: insert
'break;' to avoid fall-through
case I915_FORMAT_MOD_X_TILED:
^
break;
1 error generated.

log:
 - 
https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20230524/testrun/17171777/suite/build/test/clang-lkftconfig/log
 - 
https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20230524/testrun/17171777/suite/build/test/clang-lkftconfig/history/



--
Linaro LKFT
https://lkft.linaro.org


Re: [Intel-gfx] [PATCH v9 2/4] lib/ref_tracker: improve printing stats

2023-06-20 Thread Simon Horman
On Fri, Jun 02, 2023 at 12:21:34PM +0200, Andrzej Hajda wrote:
> In case the library is tracking busy subsystem, simply
> printing stack for every active reference will spam log
> with long, hard to read, redundant stack traces. To improve
> readabilty following changes have been made:

Hi Andrzej,

in case you have to respin for some other reason, you may want to consider:

  readabilty -> readability

...


Re: [Intel-gfx] [PATCH v9 0/4] drm/i915: use ref_tracker library for tracking wakerefs

2023-06-20 Thread patchwork-bot+netdevbpf
Hello:

This series was applied to netdev/net-next.git (main)
by Jakub Kicinski :

On Fri, 02 Jun 2023 12:21:32 +0200 you wrote:
> Hi Jakub,
> 
> This is reviewed series of ref_tracker patches, ready to merge
> via network tree, rebased on net-next/main.
> i915 patches will be merged later via intel-gfx tree.
> 
> Signed-off-by: Andrzej Hajda 
> 
> [...]

Here is the summary with links:
  - [v9,1/4] lib/ref_tracker: add unlocked leak print helper
https://git.kernel.org/netdev/net-next/c/7a113ff63559
  - [v9,2/4] lib/ref_tracker: improve printing stats
https://git.kernel.org/netdev/net-next/c/b6d7c0eb2dcb
  - [v9,3/4] lib/ref_tracker: add printing to memory buffer
https://git.kernel.org/netdev/net-next/c/227c6c832303
  - [v9,4/4] lib/ref_tracker: remove warnings in case of allocation failure
https://git.kernel.org/netdev/net-next/c/acd8f0e5d727

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html




[Intel-gfx] [PATCH] drm/i915: Call page_address() on page acquired with GFP_KERNEL flag

2023-06-20 Thread Sumitra Sharma
Pages allocated with GFP_KERNEL cannot come from Highmem.
That is why there is no need to call kmap() on them.

Therefore, don't call kmap() on the page coming from
vma_res->bi.pages using for_each_sgt_page() in
i915_vma_coredump_create().

Use a plain page_address() to get the kernel address instead.

Signed-off-by: Sumitra Sharma 
---
 drivers/gpu/drm/i915/i915_gpu_error.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c 
b/drivers/gpu/drm/i915/i915_gpu_error.c
index f020c0086fbc..6f51cb4fc55c 100644
--- a/drivers/gpu/drm/i915/i915_gpu_error.c
+++ b/drivers/gpu/drm/i915/i915_gpu_error.c
@@ -1164,9 +1164,8 @@ i915_vma_coredump_create(const struct intel_gt *gt,
 
drm_clflush_pages(, 1);
 
-   s = kmap(page);
+   s = page_address(page);
ret = compress_page(compress, s, dst, false);
-   kunmap(page);
 
drm_clflush_pages(, 1);
 
-- 
2.25.1



Re: [Intel-gfx] next: clang: x86_64: /intel_display.c:6012:3: error: unannotated fall-through between switch labels [-Werror, -Wimplicit-fallthrough]

2023-06-20 Thread Daniel Díaz
Hello!

On Wed, 24 May 2023 at 09:39, Nathan Chancellor  wrote:
> Hi Naresh,
>
> On Wed, May 24, 2023 at 12:32:24PM +0530, Naresh Kamboju wrote:
> > Linux next-20230523 and next-20230524 the x86_64 and i386 builds failed
> > with clang.
> >
> > Reported-by: Linux Kernel Functional Testing 
> >
> > make --silent --keep-going \
> >   --jobs=8 O=/home/tuxbuild/.cache/tuxmake/builds/1/build ARCH=x86_64 \
> >   SRCARCH=x86 CROSS_COMPILE=x86_64-linux-gnu- \
> >   'HOSTCC=sccache clang' 'CC=sccache clang' \
> >LLVM=1 LLVM_IAS=1
> >
> > drivers/gpu/drm/i915/display/intel_display.c:6012:3: error:
> > unannotated fall-through between switch labels
> > [-Werror,-Wimplicit-fallthrough]
> > case I915_FORMAT_MOD_X_TILED:
> > ^
> > drivers/gpu/drm/i915/display/intel_display.c:6012:3: note: insert
> > 'break;' to avoid fall-through
> > case I915_FORMAT_MOD_X_TILED:
> > ^
> > break;
> > 1 error generated.
>
> Thanks for the report, I have sent
> https://lore.kernel.org/20230524-intel_async_flip_check_hw-implicit-fallthrough-v1-1-83de89e37...@kernel.org/
> for this.

Better link: 
https://lore.kernel.org/dri-devel/20230524-intel_async_flip_check_hw-implicit-fallthrough-v1-1-83de89e37...@kernel.org/

Greetings!

Daniel Díaz
daniel.d...@linaro.org


[Intel-gfx] [PATCH] drm/i915/dp: fix memory leak of panel->vbt.lfp_lvds_vbt_mode

2023-06-20 Thread Yongxin Liu
In commit 3f9ffce5765d ("drm/i915: Do panel VBT init early if the VBT
declares an explicit panel type"), intel_bios_init_panel_early() was
added to intel_edp_init_connector(), and it may call parse_lfp_panel_dtd()
to alloc memory for panel->vbt.lfp_lvds_vbt_mode.

If intel_edp_init_connector() returns false from lable out_vdd_off, the
memory pointed by panel->vbt.lfp_lvds_vbt_mode will be eventually lost by
kfree(connector) in intel_ddi_init_dp_connector().

Fix the following memory leak.

unreferenced object 0x9e076562f100 (size 128):
  comm "modprobe", pid 365, jiffies 4294749388 (age 73.473s)
  hex dump (first 32 bytes):
14 44 02 00 80 07 d8 07 05 08 98 08 00 00 38 04  .D8.
3b 04 41 04 65 04 00 00 0a 00 00 00 00 00 00 00  ;.A.e...
  backtrace:
[] __kmem_cache_alloc_node+0x1e6/0x3d0
[] kmalloc_trace+0x2a/0xf0
[] parse_lfp_data+0x1a9/0x300 [i915]
[] intel_bios_init_panel+0x131/0x3d0 [i915]
[] intel_bios_init_panel_early+0x13/0x20 [i915]
[] intel_edp_init_connector+0xb2/0x620 [i915]
[] intel_dp_init_connector+0x277/0x490 [i915]
[] intel_ddi_init+0x877/0xd70 [i915]
[] intel_setup_outputs+0x79d/0xbc0 [i915]
[] intel_modeset_init_nogem+0x1a1/0x300 [i915]
[] i915_driver_probe+0x2cd/0x580 [i915]
[] i915_pci_probe+0xcd/0x150 [i915]
[] local_pci_probe+0x44/0xa0
[] pci_call_probe+0x54/0x160
[] pci_device_probe+0x7e/0x100
[] really_probe+0x197/0x3c0

Fixes: 3f9ffce5765d ("drm/i915: Do panel VBT init early if the VBT declares an 
explicit panel type")
Signed-off-by: Yongxin Liu 
---
 drivers/gpu/drm/i915/display/intel_dp.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/i915/display/intel_dp.c 
b/drivers/gpu/drm/i915/display/intel_dp.c
index 529ee22be872..b83d14c0f1ff 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -5439,6 +5439,7 @@ static bool intel_edp_init_connector(struct intel_dp 
*intel_dp,
 
 out_vdd_off:
intel_pps_vdd_off_sync(intel_dp);
+   intel_bios_fini_panel(_connector->panel);
 
return false;
 }
-- 
2.39.2



Re: [Intel-gfx] [PATCH] drm/i915: Fix clang -Wimplicit-fallthrough in intel_async_flip_check_hw()

2023-06-20 Thread Matthieu Baerts
Hi Nick,

On 24/05/2023 20:56, Nick Desaulniers wrote:
> On Wed, May 24, 2023 at 11:41 AM Nathan Chancellor  wrote:
>>
>> On Wed, May 24, 2023 at 11:32:32AM -0700, Nick Desaulniers wrote:
>>> On Wed, May 24, 2023 at 8:38 AM Nathan Chancellor  wrote:

 Clang warns:

   drivers/gpu/drm/i915/display/intel_display.c:6012:3: error: unannotated 
 fall-through between switch labels [-Werror,-Wimplicit-fallthrough]
   case I915_FORMAT_MOD_X_TILED:
   ^
   drivers/gpu/drm/i915/display/intel_display.c:6012:3: note: insert 
 'break;' to avoid fall-through
   case I915_FORMAT_MOD_X_TILED:
   ^
   break;
   1 error generated.

 Clang is a little more pedantic than GCC, which does not warn when
 falling through to a case that is just break or return. Clang's version
 is more in line with the kernel's own stance in deprecated.rst, which
 states that all switch/case blocks must end in either break,
 fallthrough, continue, goto, or return. Add the missing break to silence
 the warning.

 Fixes: 937859485aef ("drm/i915: Support Async Flip on Linear buffers")
 Reported-by: kernel test robot 
 Closes: https://lore.kernel.org/202305241902.uvhtmoxa-...@intel.com/
 Reported-by: Naresh Kamboju 
 Closes: 
 https://lore.kernel.org/CA+G9fYv68V3ewK0Qj-syQj7qX-hQr0H1MFL=qfnudoe_j2z...@mail.gmail.com/
 Signed-off-by: Nathan Chancellor 
>>>
>>> Thanks for the patch! I've never seen the closes tag before, that's
>>> new to me. Can you tell me more about it?
>>
>> It is new to me (at least in the context of the kernel) as well. I only
>> used it over Link: because checkpatch.pl told me to:
>>
>> WARNING: Reported-by: should be immediately followed by Closes: with a URL 
>> to the report
>> #26:
>> Reported-by: kernel test robot 
>> Reported-by: Naresh Kamboju 
>>
>> WARNING: Reported-by: should be immediately followed by Closes: with a URL 
>> to the report
>> #27:
>> Reported-by: Naresh Kamboju 
>> Signed-off-by: Nathan Chancellor 
>>
>> It was Link: for a bit but commit 44c31888098a ("checkpatch: allow
>> Closes tags with links") changed it to Closes:. Looks odd to me but
>> whatever the linter says I suppose.
>>
>> Thanks for the review!
>>
>> Cheers,
>> Nathan
>>
>>> A few more tags
>>>
>>> Reported-by: Tom Rix 
>>> Link: https://lore.kernel.org/all/20230523125116.1669057-1-t...@redhat.com/
>>> Reviewed-by: Nick Desaulniers 
> 
> Ah then I guess my link tag should have been
> 
> Closes: https://lore.kernel.org/all/20230523125116.1669057-1-t...@redhat.com/
> 
> I hope the author of
> commit 44c31888098a ("checkpatch: allow Closes tags with links")
> has coordinated with the maintainer of b4, so that b4 recognizes Closes tags.
> b4 v0.12.2 does not pick up Closes tags.

I'm sorry for the troubles caused by this series, that was not the
intension.

When looking at modifying b4 to support the Closes tag, I realised the
Link tag from your previous message [1] was not taken as well. Was it
just me?

If no, I just sent patches for b4, see [2]. I hope it will help!

Cheers,
Matt

[1]
https://lore.kernel.org/all/CAKwvOd=jzjouunmd3rvc--goa0exphcf6chxua6w1kxjg2a...@mail.gmail.com/
[2]
https://lore.kernel.org/tools/20230525-closes-tags-v1-0-ed41b1773...@tessares.net/T/
-- 
Tessares | Belgium | Hybrid Access Solutions
www.tessares.net


[Intel-gfx] [PATCH] drm/i915/pxp:fix kernel-doc trivial warnings

2023-06-20 Thread pengfuyuan
The test robot reports some make warnings.

Fix those warnings:
drivers/gpu/drm/i915/pxp/intel_pxp_types.h:96: warning: Function parameter 
or member 'dev_link' not described in 'intel_pxp'

Reported-by: k2ci 
Signed-off-by: pengfuyuan 
---
 drivers/gpu/drm/i915/pxp/intel_pxp_types.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/pxp/intel_pxp_types.h 
b/drivers/gpu/drm/i915/pxp/intel_pxp_types.h
index 007de49e1ea4..41994a3294a0 100644
--- a/drivers/gpu/drm/i915/pxp/intel_pxp_types.h
+++ b/drivers/gpu/drm/i915/pxp/intel_pxp_types.h
@@ -33,7 +33,7 @@ struct intel_pxp {
 */
struct i915_pxp_component *pxp_component;
 
-   /* @dev_link: Enforce module relationship for power management 
ordering. */
+   /** @dev_link: Enforce module relationship for power management 
ordering. */
struct device_link *dev_link;
/**
 * @pxp_component_added: track if the pxp component has been added.
-- 
2.25.1


No virus found
Checked by Hillstone Network AntiVirus


Re: [Intel-gfx] [v4, 01/14] drm/i915: Fix PIPEDMC disabling for a bigjoiner configuration

2023-06-20 Thread Rudi Heitbaum
Hi Imre/Dave,

Ref: [v4,01/14] drm/i915: Fix PIPEDMC disabling for a bigjoiner configuration
 [git pull] drm fixes for 6.4-rc4
 drm-fixes-2023-05-26:
 drm fixes for 6.4-rc4

This patch has caused a regression between 6.4-rc3 and 6.4-rc4. Other
tested kernels include 6.3.4 work fine. Dropping the patch allows the decode
playback of media via Kodi. Without dropping the patch - the media
starts and stutters then ceases to play.

There is an additional issue that 6.4-rc4 audio playback is also failing
(where 6.4-rc3 was fine), I have not yet tracked this down.

This is all on:
DMI: Intel(R) Client Systems NUC12WSKi7/NUC12WSBi7, BIOS 
WSADL357.0087.2023.0306.1931 03/06/2023
12th Gen Intel(R) Core(TM) i7-1260P (family: 0x6, model: 0x9a, stepping: 0x3)
microcode: updated early: 0x429 -> 0x42a, date = 2023-02-14

Regards

Rudi

On Wed, May 10, 2023 at 01:31:18PM +0300, Imre Deak wrote:
> For a bigjoiner configuration display->crtc_disable() will be called
> first for the slave CRTCs and then for the master CRTC. However slave
> CRTCs will be actually disabled only after the master CRTC is disabled
> (from the encoder disable hooks called with the master CRTC state).
> Hence the slave PIPEDMCs can be disabled only after the master CRTC is
> disabled, make this so.
> 
> intel_encoders_post_pll_disable() must be called only for the master
> CRTC, as for the other two encoder disable hooks. While at it fix this
> up as well. This didn't cause a problem, since
> intel_encoders_post_pll_disable() will call the corresponding hook only
> for an encoder/connector connected to the given CRTC, however slave
> CRTCs will have no associated encoder/connector.
> 
> Fixes: 3af2ff0840be ("drm/i915: Enable a PIPEDMC whenever its corresponding 
> pipe is enabled")
> Cc: Rodrigo Vivi 
> Cc: Ville Syrjälä 
> Reviewed-by: Ville Syrjälä 
> Signed-off-by: Imre Deak 
> ---
>  drivers/gpu/drm/i915/display/intel_display.c | 12 ++--
>  1 file changed, 10 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c 
> b/drivers/gpu/drm/i915/display/intel_display.c
> index 1d5d42a408035..116fa52290b84 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -1702,9 +1702,17 @@ static void hsw_crtc_disable(struct intel_atomic_state 
> *state,
>  
>   intel_disable_shared_dpll(old_crtc_state);
>  
> - intel_encoders_post_pll_disable(state, crtc);
> + if (!intel_crtc_is_bigjoiner_slave(old_crtc_state)) {
> + struct intel_crtc *slave_crtc;
> +
> + intel_encoders_post_pll_disable(state, crtc);
>  
> - intel_dmc_disable_pipe(i915, crtc->pipe);
> + intel_dmc_disable_pipe(i915, crtc->pipe);
> +
> + for_each_intel_crtc_in_pipe_mask(>drm, slave_crtc,
> +  
> intel_crtc_bigjoiner_slave_pipes(old_crtc_state))
> + intel_dmc_disable_pipe(i915, slave_crtc->pipe);
> + }
>  }
>  
>  static void i9xx_pfit_enable(const struct intel_crtc_state *crtc_state)


[Intel-gfx] [PATCH v2] drm/i915: Replace kmap() with kmap_local_page()

2023-06-20 Thread Sumitra Sharma
kmap() has been deprecated in favor of the kmap_local_page()
due to high cost, restricted mapping space, the overhead of a
global lock for synchronization, and making the process sleep
in the absence of free slots.

kmap_local_page() is faster than kmap() and offers thread-local
and CPU-local mappings, take pagefaults in a local kmap region
and preserves preemption by saving the mappings of outgoing tasks
and restoring those of the incoming one during a context switch.

The mapping is kept thread local in the function
“i915_vma_coredump_create” in i915_gpu_error.c

Therefore, replace kmap() with kmap_local_page().

Suggested-by: Ira Weiny 

Signed-off-by: Sumitra Sharma 
---

Changes in v2:
- Replace kmap() with kmap_local_page().
- Change commit subject and message.

 drivers/gpu/drm/i915/i915_gpu_error.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c 
b/drivers/gpu/drm/i915/i915_gpu_error.c
index f020c0086fbc..bc41500eedf5 100644
--- a/drivers/gpu/drm/i915/i915_gpu_error.c
+++ b/drivers/gpu/drm/i915/i915_gpu_error.c
@@ -1164,9 +1164,9 @@ i915_vma_coredump_create(const struct intel_gt *gt,
 
drm_clflush_pages(, 1);
 
-   s = kmap(page);
+   s = kmap_local_page(page);
ret = compress_page(compress, s, dst, false);
-   kunmap(page);
+   kunmap_local(s);
 
drm_clflush_pages(, 1);
 
-- 
2.25.1



Re: [Intel-gfx] [PATCH v7 2/8] PCI/VGA: Deal only with VGA class devices

2023-06-20 Thread Maciej W. Rozycki
On Tue, 13 Jun 2023, Sui Jingfeng wrote:

> Deal only with the VGA devcie(pdev->class == 0x0300), so replace the

 Typo here: s/devcie/device/.

> pci_get_subsys() function with pci_get_class(). Filter the non-PCI display
> device(pdev->class != 0x0300) out. There no need to process the non-display
> PCI device.

 I've only come across this patch series now.  Without diving into what 
this code actually does I have just one question as a matter of interest.

> diff --git a/drivers/pci/vgaarb.c b/drivers/pci/vgaarb.c
> index c1bc6c983932..22a505e877dc 100644
> --- a/drivers/pci/vgaarb.c
> +++ b/drivers/pci/vgaarb.c
> @@ -1500,7 +1496,9 @@ static int pci_notify(struct notifier_block *nb, 
> unsigned long action,
>   struct pci_dev *pdev = to_pci_dev(dev);
>   bool notify = false;
>  
> - vgaarb_dbg(dev, "%s\n", __func__);
> + /* Only deal with VGA class devices */
> + if (pdev->class != PCI_CLASS_DISPLAY_VGA << 8)
> + return 0;

 Hmm, shouldn't this also handle PCI_CLASS_NOT_DEFINED_VGA?  As far as I 
know it is the equivalent of PCI_CLASS_DISPLAY_VGA for PCI <= 2.0 devices 
that were implemented before the idea of PCI device classes has developed 
into its current form.  I may have such a VGA device somewhere.

  Maciej


[Intel-gfx] [PATCH] drm/i915/dp: fix a memory leak in struct intel_vbt_panel_data

2023-06-20 Thread Yongxin Liu
In commit 3f9ffce5765d ("drm/i915: Do panel VBT init early if the VBT
declares an explicit panel type"), intel_bios_init_panel_early() was
added to intel_edp_init_connector(), and it may call parse_lfp_panel_dtd()
to alloc memory for panel->vbt.lfp_lvds_vbt_mode.

If intel_edp_init_connector() returns false from lable out_vdd_off, the
memory pointed by panel->vbt.lfp_lvds_vbt_mode will be eventually lost by
kfree(connector) in intel_ddi_init_dp_connector().

Fix the following memory leak.

unreferenced object 0x9e076562f100 (size 128):
  comm "modprobe", pid 365, jiffies 4294749388 (age 73.473s)
  hex dump (first 32 bytes):
14 44 02 00 80 07 d8 07 05 08 98 08 00 00 38 04  .D8.
3b 04 41 04 65 04 00 00 0a 00 00 00 00 00 00 00  ;.A.e...
  backtrace:
[] __kmem_cache_alloc_node+0x1e6/0x3d0
[] kmalloc_trace+0x2a/0xf0
[] parse_lfp_data+0x1a9/0x300 [i915]
[] intel_bios_init_panel+0x131/0x3d0 [i915]
[] intel_bios_init_panel_early+0x13/0x20 [i915]
[] intel_edp_init_connector+0xb2/0x620 [i915]
[] intel_dp_init_connector+0x277/0x490 [i915]
[] intel_ddi_init+0x877/0xd70 [i915]
[] intel_setup_outputs+0x79d/0xbc0 [i915]
[] intel_modeset_init_nogem+0x1a1/0x300 [i915]
[] i915_driver_probe+0x2cd/0x580 [i915]
[] i915_pci_probe+0xcd/0x150 [i915]
[] local_pci_probe+0x44/0xa0
[] pci_call_probe+0x54/0x160
[] pci_device_probe+0x7e/0x100
[] really_probe+0x197/0x3c0

Fixes: 3f9ffce5765d ("drm/i915: Do panel VBT init early if the VBT declares an 
explicit panel type")
Signed-off-by: Yongxin Liu 
---
 drivers/gpu/drm/i915/display/intel_dp.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/i915/display/intel_dp.c 
b/drivers/gpu/drm/i915/display/intel_dp.c
index 529ee22be872..b83d14c0f1ff 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -5439,6 +5439,7 @@ static bool intel_edp_init_connector(struct intel_dp 
*intel_dp,
 
 out_vdd_off:
intel_pps_vdd_off_sync(intel_dp);
+   intel_bios_fini_panel(_connector->panel);
 
return false;
 }
-- 
2.39.2



Re: [Intel-gfx] [PATCH v2] drm/i915: Replace kmap() with kmap_local_page()

2023-06-20 Thread Sumitra Sharma
On Sun, Jun 18, 2023 at 11:11:08AM -0700, Ira Weiny wrote:
> Sumitra Sharma wrote:
> > kmap() has been deprecated in favor of the kmap_local_page()
> > due to high cost, restricted mapping space, the overhead of a
> > global lock for synchronization, and making the process sleep
> > in the absence of free slots.
> > 
> > kmap_local_page() is faster than kmap() and offers thread-local
> > and CPU-local mappings, take pagefaults in a local kmap region
> > and preserves preemption by saving the mappings of outgoing tasks
> > and restoring those of the incoming one during a context switch.
> > 
> > The mapping is kept thread local in the function
> > “i915_vma_coredump_create” in i915_gpu_error.c
> > 
> > Therefore, replace kmap() with kmap_local_page().
> > 
> > Suggested-by: Ira Weiny 
> > 
> 
> NIT: No need for the line break between Suggested-by and your signed off line.
> 

Hi Ira,

What does NIT stand for? 

Thank you. I will take care about the line breaks.

> > Signed-off-by: Sumitra Sharma 
> > ---
> > 
> > Changes in v2:
> > - Replace kmap() with kmap_local_page().
> 
> Generally it is customary to attribute a change like this to those who
> suggested it in a V1 review.
> 
> For example:
> 
>   - Tvrtko/Thomas: Use kmap_local_page() instead of page_address()
> 
> Also I don't see Thomas on the new email list.  Since he took the time to
> review V1 he might want to check this version out.  I've added him to the
> 'To:' list.
> 
> Also a link to V1 is nice.  B4 formats it like this:
> 
> - Link to v1: https://lore.kernel.org/all/20230614123556.ga381...@sumitra.com/
> 
> All that said the code looks good to me.  So with the above changes.
> 
> Reviewed-by: Ira Weiny 
> 

I have noted down the points mentioned above. Thank you again.

I am not supposed to create another version of this patch for 
adding the above mentions, as you and Thomas both gave this patch 
a reviewed-by tag. Right?


Thanks & regards
Sumitra

PS: I am new to the open source vocabulary terms.

> > - Change commit subject and message.
> > 
> >  drivers/gpu/drm/i915/i915_gpu_error.c | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c 
> > b/drivers/gpu/drm/i915/i915_gpu_error.c
> > index f020c0086fbc..bc41500eedf5 100644
> > --- a/drivers/gpu/drm/i915/i915_gpu_error.c
> > +++ b/drivers/gpu/drm/i915/i915_gpu_error.c
> > @@ -1164,9 +1164,9 @@ i915_vma_coredump_create(const struct intel_gt *gt,
> >  
> > drm_clflush_pages(, 1);
> >  
> > -   s = kmap(page);
> > +   s = kmap_local_page(page);
> > ret = compress_page(compress, s, dst, false);
> > -   kunmap(page);
> > +   kunmap_local(s);
> >  
> > drm_clflush_pages(, 1);
> >  
> > -- 
> > 2.25.1
> > 
> 
> 


[Intel-gfx] [PULL] drm-misc-fixes, try 2.

2023-06-20 Thread Maarten Lankhorst
Hi Dave, Daniel,

Same pull request, just verifying tooling works as intended now. :-)

drm-misc-fixes for v6.4-rc6.

Seems to be mostly small fixes, just a few more for ivpu.

~Maarten

drm-misc-fixes-2023-06-08:
drm-misc-fixes for v6.4-rc6:
- resume and modeset fixes for ast.
- Fill in fb-helper vars more correctly.
- Assorted ivpu fixes.
- lima context destroy fix.
The following changes since commit e997c218ad736fd6f524d73a987bad9d94128d3d:

  accel/qaic: Fix NNC message corruption (2023-05-23 09:51:38 -0600)

are available in the Git repository at:

  git://anongit.freedesktop.org/drm/drm-misc tags/drm-misc-fixes-2023-06-08

for you to fetch changes up to a3efabee5878b8d7b1863debb78cb7129d07a346:

  accel/ivpu: Fix sporadic VPU boot failure (2023-06-08 08:17:27 +0200)


drm-misc-fixes for v6.4-rc6:
- resume and modeset fixes for ast.
- Fill in fb-helper vars more correctly.
- Assorted ivpu fixes.
- lima context destroy fix.


Andrzej Kacprowski (2):
  accel/ivpu: Do not trigger extra VPU reset if the VPU is idle
  accel/ivpu: Fix sporadic VPU boot failure

Erico Nunes (1):
  drm/lima: fix sched context destroy

Geert Uytterhoeven (1):
  drm/fb-helper: Fix height, width, and accel_flags in fb_var

Jammy Huang (2):
  drm/ast: Fix long time waiting on s3/s4 resume
  drm/ast: Fix modeset failed on DisplayPort

Randy Dunlap (1):
  accel/ivpu: ivpu_ipc needs GENERIC_ALLOCATOR

Stanislaw Gruszka (2):
  accel/ivpu: Reserve all non-command bo's using DMA_RESV_USAGE_BOOKKEEP
  accel/ivpu: Do not use mutex_lock_interruptible

 drivers/accel/ivpu/Kconfig   |  1 +
 drivers/accel/ivpu/ivpu_hw_mtl.c | 22 +++
 drivers/accel/ivpu/ivpu_hw_mtl_reg.h |  1 +
 drivers/accel/ivpu/ivpu_ipc.c|  4 +--
 drivers/accel/ivpu/ivpu_job.c| 21 +-
 drivers/accel/ivpu/ivpu_mmu.c| 22 ---
 drivers/gpu/drm/ast/ast_dp.c | 55 +++-
 drivers/gpu/drm/ast/ast_drv.h|  5 +---
 drivers/gpu/drm/ast/ast_main.c   | 11 ++--
 drivers/gpu/drm/ast/ast_mode.c   | 15 --
 drivers/gpu/drm/ast/ast_post.c   |  3 +-
 drivers/gpu/drm/drm_fb_helper.c  | 12 
 drivers/gpu/drm/lima/lima_sched.c|  2 +-
 13 files changed, 90 insertions(+), 84 deletions(-)


[Intel-gfx] [PATCH] drm/i915:fix kernel-doc trivial warnings

2023-06-20 Thread pengfuyuan
The test robot reports some make warnings.

Fix those warnings:
drivers/gpu/drm/i915/i915_gpu_error.c:2174: warning: Function parameter or 
member 'dump_flags' not described in 'i915_capture_error_state'
drivers/gpu/drm/i915/i915_perf.c:5307: warning: Function parameter or 
member 'i915' not described in 'i915_perf_ioctl_version'
drivers/gpu/drm/i915/i915_active.h:66: warning: Function parameter or 
member 'active' not described in '__i915_active_fence_init'
drivers/gpu/drm/i915/i915_active.h:66: warning: Function parameter or 
member 'fence' not described in '__i915_active_fence_init'
drivers/gpu/drm/i915/i915_active.h:66: warning: Function parameter or 
member 'fn' not described in '__i915_active_fence_init'
drivers/gpu/drm/i915/i915_active.h:89: warning: Function parameter or 
member 'active' not described in 'i915_active_fence_set'
drivers/gpu/drm/i915/i915_active.h:89: warning: Function parameter or 
member 'rq' not described in 'i915_active_fence_set'
drivers/gpu/drm/i915/i915_active.h:102: warning: Function parameter or 
member 'active' not described in 'i915_active_fence_get'
drivers/gpu/drm/i915/i915_active.h:122: warning: Function parameter or 
member 'active' not described in 'i915_active_fence_isset'
drivers/gpu/drm/i915/i915_utils.h:284: warning: Function parameter or 
member 'OP' not described in '__wait_for'
drivers/gpu/drm/i915/i915_utils.h:284: warning: Function parameter or 
member 'COND' not described in '__wait_for'
drivers/gpu/drm/i915/i915_utils.h:284: warning: Function parameter or 
member 'US' not described in '__wait_for'
drivers/gpu/drm/i915/i915_utils.h:284: warning: Function parameter or 
member 'Wmin' not described in '__wait_for'
drivers/gpu/drm/i915/i915_utils.h:284: warning: Function parameter or 
member 'Wmax' not described in '__wait_for'
drivers/gpu/drm/i915/i915_scatterlist.h:164: warning: Function parameter or 
member 'release' not described in 'i915_refct_sgt_ops'
drivers/gpu/drm/i915/i915_scatterlist.h:187: warning: Function parameter or 
member 'rsgt' not described in 'i915_refct_sgt_put'
drivers/gpu/drm/i915/i915_scatterlist.h:198: warning: Function parameter or 
member 'rsgt' not described in 'i915_refct_sgt_get'
drivers/gpu/drm/i915/i915_scatterlist.h:214: warning: Function parameter or 
member 'rsgt' not described in '__i915_refct_sgt_init'
drivers/gpu/drm/i915/i915_vma_resource.h:129: warning: Function parameter 
or member 'wakeref' not described in 'i915_vma_resource'

Reported-by: k2ci 
Signed-off-by: pengfuyuan 
---
 drivers/gpu/drm/i915/i915_active.h   | 14 +++---
 drivers/gpu/drm/i915/i915_gpu_error.c|  1 +
 drivers/gpu/drm/i915/i915_perf.c |  1 +
 drivers/gpu/drm/i915/i915_scatterlist.h  |  9 +
 drivers/gpu/drm/i915/i915_utils.h|  6 ++
 drivers/gpu/drm/i915/i915_vma_resource.h |  1 +
 6 files changed, 21 insertions(+), 11 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_active.h 
b/drivers/gpu/drm/i915/i915_active.h
index 7eb44132183a..77c676ecc263 100644
--- a/drivers/gpu/drm/i915/i915_active.h
+++ b/drivers/gpu/drm/i915/i915_active.h
@@ -49,9 +49,9 @@ void i915_active_noop(struct dma_fence *fence, struct 
dma_fence_cb *cb);
 
 /**
  * __i915_active_fence_init - prepares the activity tracker for use
- * @active - the active tracker
- * @fence - initial fence to track, can be NULL
- * @func - a callback when then the tracker is retired (becomes idle),
+ * @active: the active tracker
+ * @fence: initial fence to track, can be NULL
+ * @fn: a callback when then the tracker is retired (becomes idle),
  * can be NULL
  *
  * i915_active_fence_init() prepares the embedded @active struct for use as
@@ -77,8 +77,8 @@ __i915_active_fence_set(struct i915_active_fence *active,
 
 /**
  * i915_active_fence_set - updates the tracker to watch the current fence
- * @active - the active tracker
- * @rq - the request to watch
+ * @active: the active tracker
+ * @rq: the request to watch
  *
  * i915_active_fence_set() watches the given @rq for completion. While
  * that @rq is busy, the @active reports busy. When that @rq is signaled
@@ -89,7 +89,7 @@ i915_active_fence_set(struct i915_active_fence *active,
  struct i915_request *rq);
 /**
  * i915_active_fence_get - return a reference to the active fence
- * @active - the active tracker
+ * @active: the active tracker
  *
  * i915_active_fence_get() returns a reference to the active fence,
  * or NULL if the active tracker is idle. The reference is obtained under RCU,
@@ -111,7 +111,7 @@ i915_active_fence_get(struct i915_active_fence *active)
 
 /**
  * i915_active_fence_isset - report whether the active tracker is assigned
- * @active - the active tracker
+ * @active: the active tracker
  *
  * i915_active_fence_isset() returns true if the active tracker is currently
  * assigned to a fence. Due to the lazy retiring, that fence may be idle
diff --git 

Re: [Intel-gfx] [PATCH v5 08/13] drm/omapdrm: Use regular fbdev I/O helpers

2023-06-20 Thread Tomi Valkeinen

On 30/05/2023 18:02, Thomas Zimmermann wrote:

Use the regular fbdev helpers for framebuffer I/O instead of DRM's
helpers. Omapdrm does not use damage handling, so DRM's fbdev helpers
are mere wrappers around the fbdev code.

By using fbdev helpers directly within each DRM fbdev emulation,
we can eventually remove DRM's wrapper functions entirely.

v4:
* use initializer macros for struct fb_ops
v2:
* use FB_SYS_HELPERS option

Signed-off-by: Thomas Zimmermann 
Acked-by: Sam Ravnborg 
Cc: Tomi Valkeinen 
---
  drivers/gpu/drm/omapdrm/Kconfig  |  1 +
  drivers/gpu/drm/omapdrm/omap_fbdev.c | 11 +++
  2 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/drivers/gpu/drm/omapdrm/Kconfig b/drivers/gpu/drm/omapdrm/Kconfig
index 76ded1568bd0..b4ac76c9f31b 100644
--- a/drivers/gpu/drm/omapdrm/Kconfig
+++ b/drivers/gpu/drm/omapdrm/Kconfig
@@ -4,6 +4,7 @@ config DRM_OMAP
depends on DRM && OF
depends on ARCH_OMAP2PLUS
select DRM_KMS_HELPER
+   select FB_SYS_HELPERS if DRM_FBDEV_EMULATION
select VIDEOMODE_HELPERS
select HDMI
default n
diff --git a/drivers/gpu/drm/omapdrm/omap_fbdev.c 
b/drivers/gpu/drm/omapdrm/omap_fbdev.c
index b950e93b3846..b7ccce0704a3 100644
--- a/drivers/gpu/drm/omapdrm/omap_fbdev.c
+++ b/drivers/gpu/drm/omapdrm/omap_fbdev.c
@@ -4,6 +4,8 @@
   * Author: Rob Clark 
   */
  
+#include 

+
  #include 
  #include 
  #include 
@@ -95,20 +97,13 @@ static void omap_fbdev_fb_destroy(struct fb_info *info)
  
  static const struct fb_ops omap_fb_ops = {

.owner = THIS_MODULE,
-
+   FB_DEFAULT_SYS_OPS,
.fb_check_var   = drm_fb_helper_check_var,
.fb_set_par = drm_fb_helper_set_par,
.fb_setcmap = drm_fb_helper_setcmap,
.fb_blank   = drm_fb_helper_blank,
.fb_pan_display = omap_fbdev_pan_display,
.fb_ioctl   = drm_fb_helper_ioctl,
-
-   .fb_read = drm_fb_helper_sys_read,
-   .fb_write = drm_fb_helper_sys_write,
-   .fb_fillrect = drm_fb_helper_sys_fillrect,
-   .fb_copyarea = drm_fb_helper_sys_copyarea,
-   .fb_imageblit = drm_fb_helper_sys_imageblit,
-
.fb_destroy = omap_fbdev_fb_destroy,
  };
  


Reviewed-by: Tomi Valkeinen 

 Tomi



Re: [Intel-gfx] [PATCH v12 21/24] vfio: Determine noiommu device in __vfio_register_dev()

2023-06-20 Thread Alex Williamson
[Sorry for breaking threading, replying to my own message id with reply
 content from Yi since the Cc list got broken]

On Tue, 13 Jun 2023 15:28:06 +
"Liu, Yi L"  wrote:

> > From: Alex Williamson 
> > Sent: Tuesday, June 13, 2023 11:13 PM
> > 
> > On Tue, 13 Jun 2023 15:01:35 +
> > "Liu, Yi L"  wrote:
> >   
> > > > From: Alex Williamson 
> > > > Sent: Tuesday, June 13, 2023 10:48 PM
> > > >
> > > > On Tue, 13 Jun 2023 14:33:01 +
> > > > "Liu, Yi L"  wrote:
> > > >  
> > > > > > From: Alex Williamson 
> > > > > > Sent: Tuesday, June 13, 2023 10:19 PM
> > > > > >
> > > > > > On Tue, 13 Jun 2023 05:53:42 +
> > > > > > "Liu, Yi L"  wrote:
> > > > > >  
> > > > > > > > From: Alex Williamson 
> > > > > > > > Sent: Tuesday, June 13, 2023 6:42 AM
> > > > > > > >
> > > > > > > > On Fri,  2 Jun 2023 05:16:50 -0700
> > > > > > > > Yi Liu  wrote:
> > > > > > > >  
> > > > > > > > > This moves the noiommu device determination and noiommu taint 
> > > > > > > > > out of
> > > > > > > > > vfio_group_find_or_alloc(). noiommu device is determined in
> > > > > > > > > __vfio_register_dev() and result is stored in flag 
> > > > > > > > > vfio_device->noiommu,
> > > > > > > > > the noiommu taint is added in the end of 
> > > > > > > > > __vfio_register_dev().
> > > > > > > > >
> > > > > > > > > This is also a preparation for compiling out vfio_group 
> > > > > > > > > infrastructure
> > > > > > > > > as it makes the noiommu detection and taint common between 
> > > > > > > > > the cdev  
> > path  
> > > > > > > > > and group path though cdev path does not support noiommu.  
> > > > > > > >
> > > > > > > > Does this really still make sense?  The motivation for the 
> > > > > > > > change is
> > > > > > > > really not clear without cdev support for noiommu.  Thanks,  
> > > > > > >
> > > > > > > I think it still makes sense. When CONFIG_VFIO_GROUP==n, the 
> > > > > > > kernel
> > > > > > > only supports cdev interface. If there is noiommu device, vfio 
> > > > > > > should
> > > > > > > fail the registration. So, the noiommu determination is still 
> > > > > > > needed. But
> > > > > > > I'd admit the taint might still be in the group code.  
> > > > > >
> > > > > > How is there going to be a noiommu device when VFIO_GROUP is unset? 
> > > > > >  
> > > > >
> > > > > How about booting a kernel with iommu disabled, then all the devices
> > > > > are not protected by iommu. I suppose they are noiommu devices. If
> > > > > user wants to bound them to vfio, the kernel should have VFIO_GROUP.
> > > > > Otherwise, needs to fail.  
> > > >
> > > > "noiommu" is a vfio designation of a device, it must be created by
> > > > vfio.  
> > >
> > > Sure.
> > >  
> > > > There can certainly be devices which are not IOMMU backed, but
> > > > without vfio designating them as noiommu devices, which is only done
> > > > via the legacy and compat paths, there's no such thing as a noiommu
> > > > device.  
> > >
> > > Yes.
> > >  
> > > > Devices without an IOMMU are simply out of scope for cdev,
> > > > there should never be a vfio cdev entry created for them.  Thanks,  
> > >
> > > Actually, this is what I want to solve. I need to check if a device is
> > > IOMMU backed or not, and based on this info to prevent creating
> > > cdev entry for them in the coming cdev support or may need to
> > > fail registration if VFIO_GROUP is unset.
> > >
> > > If this patch is not good. I can use the vfio_device_is_noiommu()
> > > written like below when VFIO_GROUP is unset. What about your
> > > opinion?
> > >
> > > static inline bool vfio_device_is_noiommu(struct vfio_device *vdev)
> > > {
> > >   struct iommu_group *iommu_group;
> > >
> > >   iommu_group = iommu_group_get(vdev->dev);
> > >   iommu_group_put(iommu_group); /* Accepts NULL */
> > >   return !iommu_group;
> > > }  
> > 
> > 
> > No, please do not confuse the issue.  As we agreed above "noiommu"
> > means a specific thing, it's a device without IOMMU backing that vfio
> > has artificially included in the environment.  If we don't have
> > VFIO_NOIOMMU then there's no such thing as a "noiommu" device.
> > 
> > You can certainly use an iommu_group test to decide if a device should
> > be represented, but there absolutely should never be a vfio_device
> > created without IOMMU backing and without VFIO_NOIOMMU.  Thanks,  
> 
> Hmmm. So your suggestion is to fail the vfio_alloc_device() if the input
> device is not IOMMU backed. right? But at this point, we don't know if
> the caller is trying to allocate vfio_device for a physical device or an
> emulated device. For emulated devices, cdev entry can always be created.
> Is it? I think the iommu_group test should be done for only physical devices
> in the register time.
> 
> Can I have an iommu_backed flag to store the iommu_group test result
> and check it when trying to create/remove cdev entry?

Ok, let me rephrase, the probe function needs to fail for a physical
(VFIO_IOMMU) device when VFIO_NO_IOIMMU is not configured and

Re: [Intel-gfx] [Intel-xe] [PATCH 2/3] linux/bits.h: Add fixed-width GENMASK and BIT macros

2023-06-20 Thread Jani Nikula
On Tue, 20 Jun 2023, Andy Shevchenko  wrote:
> So, what does prevent you from using GENMASK_ULL()?
>
> Another point, you may teach GENMASK() to issue a warning if hi and/or lo
> bigger than BITS_PER_LONG.

What good does that do if you want the warning for a fixed size
different from unsigned long or long long? Worse, sizeof(long) depends
on arch, while the GENMASK you want depends on the use case.

> I still don't see the usefulness of that churn.

This thread is turning into a prime example of why drivers and
subsystems reinvent their own wheels instead of trying to get generally
useful stuff merged in kernel headers. :p


BR,
Jani.


-- 
Jani Nikula, Intel Open Source Graphics Center


[Intel-gfx] [PATCH] i915/display/hotplug: use drm_kms_helper_connector_hotplug_event()

2023-06-20 Thread Simon Ser
This adds more information to the hotplug uevent and lets user-space
know that it's about a particular connector only.

Signed-off-by: Simon Ser 
Cc: Jani Nikula 
Cc: Ville Syrjälä 
Cc: Rodrigo Vivi 
Cc: Gustavo Sousa 
Cc: Imre Deak 
Cc: Lucas De Marchi 
---
 drivers/gpu/drm/i915/display/intel_hotplug.c | 12 +++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/display/intel_hotplug.c 
b/drivers/gpu/drm/i915/display/intel_hotplug.c
index 1160fa20433b..605c6e05a169 100644
--- a/drivers/gpu/drm/i915/display/intel_hotplug.c
+++ b/drivers/gpu/drm/i915/display/intel_hotplug.c
@@ -376,6 +376,7 @@ static void i915_hotplug_work_func(struct work_struct *work)
u32 changed = 0, retry = 0;
u32 hpd_event_bits;
u32 hpd_retry_bits;
+   struct drm_connector *first_changed_connector = NULL;
 
mutex_lock(_priv->drm.mode_config.mutex);
drm_dbg_kms(_priv->drm, "running encoder hotplug functions\n");
@@ -428,6 +429,10 @@ static void i915_hotplug_work_func(struct work_struct 
*work)
break;
case INTEL_HOTPLUG_CHANGED:
changed |= hpd_bit;
+   if (!first_changed_connector) {
+   drm_connector_get(>base);
+   first_changed_connector = 
>base;
+   }
break;
case INTEL_HOTPLUG_RETRY:
retry |= hpd_bit;
@@ -438,9 +443,14 @@ static void i915_hotplug_work_func(struct work_struct 
*work)
drm_connector_list_iter_end(_iter);
mutex_unlock(_priv->drm.mode_config.mutex);
 
-   if (changed)
+   if (hweight32(changed) == 1)
+   drm_kms_helper_connector_hotplug_event(first_changed_connector);
+   else if (changed)
drm_kms_helper_hotplug_event(_priv->drm);
 
+   if (first_changed_connector)
+   drm_connector_put(first_changed_connector);
+
/* Remove shared HPD pins that have changed */
retry &= ~changed;
if (retry) {
-- 
2.41.0




Re: [Intel-gfx] [PATCH v1] drm/i915/gsc: Fix intel_gsc_uc_fw_proxy_init_done with directed wakerefs

2023-06-20 Thread Ceraolo Spurio, Daniele




On 6/16/2023 8:54 AM, Ceraolo Spurio, Daniele wrote:



On 6/15/2023 2:19 PM, Alan Previn wrote:

intel_gsc_uc_fw_proxy_init_done is used by a few code paths
and usages. However, certain paths need a wakeref while others
can't take a wakeref such as from the runtime_pm_resume callstack.

Add a param into this helper to allow callers to direct whether
to take the wakeref or not. This resolves the following bug:

    INFO: task sh:2607 blocked for more than 61 seconds.
    Not tainted 6.3.0-pxp-gsc-final-jun14+ #297
    "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this 
message.
    task:sh  state:D stack:13016 pid:2607 ppid:2602   
flags:0x4000

    Call Trace:
   
   __schedule+0x47b/0xe10
   schedule+0x58/0xd0
   rpm_resume+0x1cc/0x800
   ? __pfx_autoremove_wake_function+0x10/0x10
   __pm_runtime_resume+0x42/0x80
   __intel_runtime_pm_get+0x19/0x80 [i915]
   gsc_uc_get_fw_status+0x10/0x50 [i915]
   intel_gsc_uc_fw_init_done+0x9/0x20 [i915]
   intel_gsc_uc_load_start+0x5b/0x130 [i915]
   __uc_resume+0xa5/0x280 [i915]
   intel_runtime_resume+0xd4/0x250 [i915]
   ? __pfx_pci_pm_runtime_resume+0x10/0x10
    __rpm_callback+0x3c/0x160

Fixes: 8c33c3755b75 ("drm/i915/gsc: take a wakeref for the 
proxy-init-completion check")

Signed-off-by: Alan Previn 


Reviewed-by: Daniele Ceraolo Spurio 

I'm going to send a trybot of this patch with the FW definition patch, 
just to make sure there aren't any other issues that kick in once the 
FW is defined and the code starts being executed, and merge if the 
results are ok.


Trybot came back green 
(https://patchwork.freedesktop.org/series/119471/), so pushed.


Daniele



Daniele


---
  drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.c  | 17 +++--
  drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.h  |  2 +-
  drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c  |  2 +-
  drivers/gpu/drm/i915/pxp/intel_pxp_gsccs.c |  2 +-
  4 files changed, 14 insertions(+), 9 deletions(-)

diff --git a/drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.c 
b/drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.c

index 856de9af1e3a..ab1a456f833d 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.c
@@ -22,27 +22,32 @@ static bool gsc_is_in_reset(struct intel_uncore 
*uncore)

  HECI1_FWSTS1_CURRENT_STATE_RESET;
  }
  -static u32 gsc_uc_get_fw_status(struct intel_uncore *uncore)
+static u32 gsc_uc_get_fw_status(struct intel_uncore *uncore, bool 
needs_wakeref)

  {
  intel_wakeref_t wakeref;
  u32 fw_status = 0;
  -    with_intel_runtime_pm(uncore->rpm, wakeref)
-    fw_status = intel_uncore_read(uncore, 
HECI_FWSTS(MTL_GSC_HECI1_BASE, 1));

+    if (needs_wakeref)
+    wakeref = intel_runtime_pm_get(uncore->rpm);
  +    fw_status = intel_uncore_read(uncore, 
HECI_FWSTS(MTL_GSC_HECI1_BASE, 1));

+
+    if (needs_wakeref)
+    intel_runtime_pm_put(uncore->rpm, wakeref);
  return fw_status;
  }
  -bool intel_gsc_uc_fw_proxy_init_done(struct intel_gsc_uc *gsc)
+bool intel_gsc_uc_fw_proxy_init_done(struct intel_gsc_uc *gsc, bool 
needs_wakeref)

  {
  return REG_FIELD_GET(HECI1_FWSTS1_CURRENT_STATE,
- gsc_uc_get_fw_status(gsc_uc_to_gt(gsc)->uncore)) ==
+ gsc_uc_get_fw_status(gsc_uc_to_gt(gsc)->uncore,
+  needs_wakeref)) ==
 HECI1_FWSTS1_PROXY_STATE_NORMAL;
  }
    bool intel_gsc_uc_fw_init_done(struct intel_gsc_uc *gsc)
  {
-    return gsc_uc_get_fw_status(gsc_uc_to_gt(gsc)->uncore) &
+    return gsc_uc_get_fw_status(gsc_uc_to_gt(gsc)->uncore, false) &
 HECI1_FWSTS1_INIT_COMPLETE;
  }
  diff --git a/drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.h 
b/drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.h

index 8d7b9e4f1ffc..ad2167ce9137 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.h
+++ b/drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.h
@@ -15,6 +15,6 @@ struct intel_uncore;
  int intel_gsc_fw_get_binary_info(struct intel_uc_fw *gsc_fw, const 
void *data, size_t size);

  int intel_gsc_uc_fw_upload(struct intel_gsc_uc *gsc);
  bool intel_gsc_uc_fw_init_done(struct intel_gsc_uc *gsc);
-bool intel_gsc_uc_fw_proxy_init_done(struct intel_gsc_uc *gsc);
+bool intel_gsc_uc_fw_proxy_init_done(struct intel_gsc_uc *gsc, bool 
needs_wakeref);

    #endif
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c 
b/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c

index 85d90f0a15e3..75a3a0790ef3 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c
@@ -72,7 +72,7 @@ static void gsc_work(struct work_struct *work)
   * complete the request handling cleanly, so we need to 
check the
   * status register to check if the proxy init was 
actually successful

   */
-    if (intel_gsc_uc_fw_proxy_init_done(gsc)) {
+    if (intel_gsc_uc_fw_proxy_init_done(gsc, false)) {
  drm_dbg(>i915->drm, "GSC Proxy initialized\n");
  

Re: [Intel-gfx] [Intel-xe] [PATCH 2/3] linux/bits.h: Add fixed-width GENMASK and BIT macros

2023-06-20 Thread Lucas De Marchi

On Tue, Jun 20, 2023 at 08:41:10PM +0300, Andy Shevchenko wrote:

On Tue, Jun 20, 2023 at 10:25:21AM -0700, Lucas De Marchi wrote:

On Tue, Jun 20, 2023 at 05:55:19PM +0300, Andy Shevchenko wrote:
> On Tue, Jun 20, 2023 at 05:47:34PM +0300, Jani Nikula wrote:
> > On Thu, 15 Jun 2023, Andy Shevchenko  
wrote:
> > > On Fri, May 12, 2023 at 02:45:19PM +0300, Jani Nikula wrote:
> > >> On Fri, 12 May 2023, Andy Shevchenko  
wrote:
> > >> > On Fri, May 12, 2023 at 02:25:18PM +0300, Jani Nikula wrote:
> > >> >> On Fri, 12 May 2023, Andy Shevchenko 
 wrote:
> > >> >> > On Mon, May 08, 2023 at 10:14:02PM -0700, Lucas De Marchi wrote:
> > >> >> >> Add GENMASK_U32(), GENMASK_U16() and GENMASK_U8()  macros to create
> > >> >> >> masks for fixed-width types and also the corresponding BIT_U32(),
> > >> >> >> BIT_U16() and BIT_U8().



> > >> >> > Why?
> > >> >>
> > >> >> The main reason is that GENMASK() and BIT() size varies for 32/64 bit
> > >> >> builds.
> > >> >
> > >> > When needed GENMASK_ULL() can be used (with respective castings 
perhaps)
> > >> > and BIT_ULL(), no?
> > >>
> > >> How does that help with making them the same 32-bit size on both 32 and
> > >> 64 bit builds?
> > >
> > >  u32 x = GENMASK();
> > >  u64 y = GENMASK_ULL();
> > >
> > > No? Then use in your code either x or y. Note that I assume that the 
parameters
> > > to GENMASK*() are built-time constants. Is it the case for you?
> >
> > What's wrong with wanting to define macros with specific size, depending
> > on e.g. hardware registers instead of build size?
>
> Nothing, but I think the problem is smaller than it's presented.

not sure about big/small problem you are talking about. It's a problem
for when the *device* register is a 32b fixed width, which is
independent from the CPU you are running on. We also have registers that
are u16 and u64. Having fixed-width GENMASK and BIT helps avoiding
mistakes like below. Just to use one example, the diff below builds
fine on my 64b machine, yet it's obviously wrong:

$ git diff  diff --git a/drivers/gpu/drm/i915/gt/intel_gt_mcr.c
b/drivers/gpu/drm/i915/gt/intel_gt_mcr.c
index 0b414eae1683..692a0ad9a768 100644
--- a/drivers/gpu/drm/i915/gt/intel_gt_mcr.c
+++ b/drivers/gpu/drm/i915/gt/intel_gt_mcr.c
@@ -261,8 +261,8 @@ static u32 rw_with_mcr_steering_fw(struct intel_gt 
*gt,
 * No need to save old steering reg value.
 */
intel_uncore_write_fw(uncore, MTL_MCR_SELECTOR,
- REG_FIELD_PREP(MTL_MCR_GROUPID, 
group) |
- 
REG_FIELD_PREP(MTL_MCR_INSTANCEID, instance) |
+ FIELD_PREP(MTL_MCR_GROUPID, 
group) |
+ FIELD_PREP(MTL_MCR_INSTANCEID, 
instance) |
  (rw_flag == FW_REG_READ ? 
GEN11_MCR_MULTICAST : 0));
} else if (GRAPHICS_VER(uncore->i915) >= 11) {
mcr_mask = GEN11_MCR_SLICE_MASK | 
GEN11_MCR_SUBSLICE_MASK;
diff --git a/drivers/gpu/drm/i915/gt/intel_gt_regs.h 
b/drivers/gpu/drm/i915/gt/intel_gt_regs.h
index 718cb2c80f79..c42bc2900c6a 100644
--- a/drivers/gpu/drm/i915/gt/intel_gt_regs.h
+++ b/drivers/gpu/drm/i915/gt/intel_gt_regs.h
@@ -80,8 +80,8 @@
 #define   GEN11_MCR_SLICE_MASK GEN11_MCR_SLICE(0xf)
 #define   GEN11_MCR_SUBSLICE(subslice) (((subslice) & 0x7) << 
24)
 #define   GEN11_MCR_SUBSLICE_MASK  GEN11_MCR_SUBSLICE(0x7)
-#define   MTL_MCR_GROUPID  REG_GENMASK(11, 8)
-#define   MTL_MCR_INSTANCEID   REG_GENMASK(3, 0)
+#define   MTL_MCR_GROUPID  GENMASK(32, 8)
+#define   MTL_MCR_INSTANCEID   GENMASK(3, 0)
 #define IPEIR_I965 _MMIO(0x2064)
 #define IPEHR_I965 _MMIO(0x2068)

If the driver didn't support 32b CPUs, this would even go unnoticed.


So, what does prevent you from using GENMASK_ULL()?


nothing is preventing me to write the wrong code, which is what we are
trying to solve. GENMASK_ULL() would generate the wrong code as that
particular register is 32b, not 64b, on the GPU.



Another point, you may teach GENMASK() to issue a warning if hi and/or lo
bigger than BITS_PER_LONG.


Which varies depending on the CPU you are building for, so it misses the
point.  GENMASK_U32/GENMASK_U16/GENMASK_U8 and BIT counterparts would
emit a warning if hi is bigger than _exactly_ 32, 16 or 8, regardless
of the CPU you built the code for.

Lucas De Marchi



I still don't see the usefulness of that churn.


Lucas De Marchi

> And there are already header for bitfields with a lot of helpers
> for (similar) cases if not yours.
>
> > What would you use for printk 

Re: [Intel-gfx] [Intel-xe] [PATCH 2/3] linux/bits.h: Add fixed-width GENMASK and BIT macros

2023-06-20 Thread Andy Shevchenko
On Tue, Jun 20, 2023 at 10:25:21AM -0700, Lucas De Marchi wrote:
> On Tue, Jun 20, 2023 at 05:55:19PM +0300, Andy Shevchenko wrote:
> > On Tue, Jun 20, 2023 at 05:47:34PM +0300, Jani Nikula wrote:
> > > On Thu, 15 Jun 2023, Andy Shevchenko  
> > > wrote:
> > > > On Fri, May 12, 2023 at 02:45:19PM +0300, Jani Nikula wrote:
> > > >> On Fri, 12 May 2023, Andy Shevchenko 
> > > >>  wrote:
> > > >> > On Fri, May 12, 2023 at 02:25:18PM +0300, Jani Nikula wrote:
> > > >> >> On Fri, 12 May 2023, Andy Shevchenko 
> > > >> >>  wrote:
> > > >> >> > On Mon, May 08, 2023 at 10:14:02PM -0700, Lucas De Marchi wrote:
> > > >> >> >> Add GENMASK_U32(), GENMASK_U16() and GENMASK_U8()  macros to 
> > > >> >> >> create
> > > >> >> >> masks for fixed-width types and also the corresponding BIT_U32(),
> > > >> >> >> BIT_U16() and BIT_U8().

> > > >> >> > Why?
> > > >> >>
> > > >> >> The main reason is that GENMASK() and BIT() size varies for 32/64 
> > > >> >> bit
> > > >> >> builds.
> > > >> >
> > > >> > When needed GENMASK_ULL() can be used (with respective castings 
> > > >> > perhaps)
> > > >> > and BIT_ULL(), no?
> > > >>
> > > >> How does that help with making them the same 32-bit size on both 32 and
> > > >> 64 bit builds?
> > > >
> > > > u32 x = GENMASK();
> > > > u64 y = GENMASK_ULL();
> > > >
> > > > No? Then use in your code either x or y. Note that I assume that the 
> > > > parameters
> > > > to GENMASK*() are built-time constants. Is it the case for you?
> > > 
> > > What's wrong with wanting to define macros with specific size, depending
> > > on e.g. hardware registers instead of build size?
> > 
> > Nothing, but I think the problem is smaller than it's presented.
> 
> not sure about big/small problem you are talking about. It's a problem
> for when the *device* register is a 32b fixed width, which is
> independent from the CPU you are running on. We also have registers that
> are u16 and u64. Having fixed-width GENMASK and BIT helps avoiding
> mistakes like below. Just to use one example, the diff below builds
> fine on my 64b machine, yet it's obviously wrong:
> 
>   $ git diff  diff --git a/drivers/gpu/drm/i915/gt/intel_gt_mcr.c
> b/drivers/gpu/drm/i915/gt/intel_gt_mcr.c
>   index 0b414eae1683..692a0ad9a768 100644
>   --- a/drivers/gpu/drm/i915/gt/intel_gt_mcr.c
>   +++ b/drivers/gpu/drm/i915/gt/intel_gt_mcr.c
>   @@ -261,8 +261,8 @@ static u32 rw_with_mcr_steering_fw(struct intel_gt 
> *gt,
>* No need to save old steering reg value.
>*/
>   intel_uncore_write_fw(uncore, MTL_MCR_SELECTOR,
>   - REG_FIELD_PREP(MTL_MCR_GROUPID, 
> group) |
>   - 
> REG_FIELD_PREP(MTL_MCR_INSTANCEID, instance) |
>   + FIELD_PREP(MTL_MCR_GROUPID, 
> group) |
>   + FIELD_PREP(MTL_MCR_INSTANCEID, 
> instance) |
> (rw_flag == FW_REG_READ ? 
> GEN11_MCR_MULTICAST : 0));
>   } else if (GRAPHICS_VER(uncore->i915) >= 11) {
>   mcr_mask = GEN11_MCR_SLICE_MASK | 
> GEN11_MCR_SUBSLICE_MASK;
>   diff --git a/drivers/gpu/drm/i915/gt/intel_gt_regs.h 
> b/drivers/gpu/drm/i915/gt/intel_gt_regs.h
>   index 718cb2c80f79..c42bc2900c6a 100644
>   --- a/drivers/gpu/drm/i915/gt/intel_gt_regs.h
>   +++ b/drivers/gpu/drm/i915/gt/intel_gt_regs.h
>   @@ -80,8 +80,8 @@
>#define   GEN11_MCR_SLICE_MASK GEN11_MCR_SLICE(0xf)
>#define   GEN11_MCR_SUBSLICE(subslice) (((subslice) & 0x7) << 
> 24)
>#define   GEN11_MCR_SUBSLICE_MASK  GEN11_MCR_SUBSLICE(0x7)
>   -#define   MTL_MCR_GROUPID  REG_GENMASK(11, 8)
>   -#define   MTL_MCR_INSTANCEID   REG_GENMASK(3, 0)
>   +#define   MTL_MCR_GROUPID  GENMASK(32, 8)
>   +#define   MTL_MCR_INSTANCEID   GENMASK(3, 0)
>#define IPEIR_I965 _MMIO(0x2064)
>#define IPEHR_I965 _MMIO(0x2068)
> 
> If the driver didn't support 32b CPUs, this would even go unnoticed.

So, what does prevent you from using GENMASK_ULL()?

Another point, you may teach GENMASK() to issue a warning if hi and/or lo
bigger than BITS_PER_LONG.

I still don't see the usefulness of that churn.

> Lucas De Marchi
> 
> > And there are already header for bitfields with a lot of helpers
> > for (similar) cases if not yours.
> > 
> > > What would you use for printk format if you wanted to to print
> > > GENMASK()?
> > 
> > %lu, no?

-- 
With Best Regards,
Andy Shevchenko




[Intel-gfx] [PATCH v2 5/5] drm/i915: Try to initialize DDI/ICL+ DSI ports for every VBT child device

2023-06-20 Thread Ville Syrjala
From: Ville Syrjälä 

Try to deal with duplicate child devices for the same DDI port
by attempting to initialize them in VBT defined order The first
on to succeed for a specific DDI port will be the one we use.

We'll also get rid of i915->display.vbt.ports[] here as any conflicts
will now be handled at encoder registration time rather than during
VBT parsing. Note that intel_bios_encoder_data_lookup() still remaims
for pre-DDI DP/HDMI ports as those don't (at least yet) use VBT
driven initialization.

TODO: DSI dual link handling is sketchy at best

Signed-off-by: Ville Syrjälä 
---
 drivers/gpu/drm/i915/display/icl_dsi.c| 11 ++--
 drivers/gpu/drm/i915/display/icl_dsi.h|  6 +-
 drivers/gpu/drm/i915/display/intel_bios.c | 65 ++-
 drivers/gpu/drm/i915/display/intel_bios.h |  6 ++
 drivers/gpu/drm/i915/display/intel_ddi.c  | 49 +++---
 drivers/gpu/drm/i915/display/intel_ddi.h  |  5 +-
 drivers/gpu/drm/i915/display/intel_display.c  | 11 +---
 .../gpu/drm/i915/display/intel_display_core.h |  2 -
 8 files changed, 107 insertions(+), 48 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/icl_dsi.c 
b/drivers/gpu/drm/i915/display/icl_dsi.c
index 59a2a289d9be..475f4f587c79 100644
--- a/drivers/gpu/drm/i915/display/icl_dsi.c
+++ b/drivers/gpu/drm/i915/display/icl_dsi.c
@@ -1933,16 +1933,14 @@ static void icl_dsi_add_properties(struct 
intel_connector *connector)
   fixed_mode->vdisplay);
 }
 
-void icl_dsi_init(struct drm_i915_private *dev_priv)
+void icl_dsi_init(struct drm_i915_private *dev_priv,
+ const struct intel_bios_encoder_data *devdata,
+ enum port port)
 {
struct intel_dsi *intel_dsi;
struct intel_encoder *encoder;
struct intel_connector *intel_connector;
struct drm_connector *connector;
-   enum port port;
-
-   if (!intel_bios_is_dsi_present(dev_priv, ))
-   return;
 
intel_dsi = kzalloc(sizeof(*intel_dsi), GFP_KERNEL);
if (!intel_dsi)
@@ -1958,6 +1956,8 @@ void icl_dsi_init(struct drm_i915_private *dev_priv)
intel_dsi->attached_connector = intel_connector;
connector = _connector->base;
 
+   encoder->devdata = devdata;
+
/* register DSI encoder with DRM subsystem */
drm_encoder_init(_priv->drm, >base, 
_dsi_encoder_funcs,
 DRM_MODE_ENCODER_DSI, "DSI %c", port_name(port));
@@ -1995,7 +1995,6 @@ void icl_dsi_init(struct drm_i915_private *dev_priv)
 
intel_dsi->panel_power_off_time = ktime_get_boottime();
 
-   encoder->devdata = intel_bios_encoder_data_lookup(dev_priv, port);
intel_bios_init_panel_late(dev_priv, _connector->panel, 
encoder->devdata, NULL);
 
mutex_lock(_priv->drm.mode_config.mutex);
diff --git a/drivers/gpu/drm/i915/display/icl_dsi.h 
b/drivers/gpu/drm/i915/display/icl_dsi.h
index b4861b56b5b2..ac42f2dc21ec 100644
--- a/drivers/gpu/drm/i915/display/icl_dsi.h
+++ b/drivers/gpu/drm/i915/display/icl_dsi.h
@@ -6,10 +6,14 @@
 #ifndef __ICL_DSI_H__
 #define __ICL_DSI_H__
 
+enum port;
 struct drm_i915_private;
+struct intel_bios_encoder_data;
 struct intel_crtc_state;
 
-void icl_dsi_init(struct drm_i915_private *i915);
+void icl_dsi_init(struct drm_i915_private *i915,
+ const struct intel_bios_encoder_data *devdata,
+ enum port port);
 void icl_dsi_frame_update(struct intel_crtc_state *crtc_state);
 
 #endif /* __ICL_DSI_H__ */
diff --git a/drivers/gpu/drm/i915/display/intel_bios.c 
b/drivers/gpu/drm/i915/display/intel_bios.c
index d1bf725ee9b3..7d2e843681f3 100644
--- a/drivers/gpu/drm/i915/display/intel_bios.c
+++ b/drivers/gpu/drm/i915/display/intel_bios.c
@@ -2484,7 +2484,7 @@ intel_bios_encoder_supports_edp(const struct 
intel_bios_encoder_data *devdata)
devdata->child.device_type & DEVICE_TYPE_INTERNAL_CONNECTOR;
 }
 
-static bool
+bool
 intel_bios_encoder_supports_dsi(const struct intel_bios_encoder_data *devdata)
 {
return devdata->child.device_type & DEVICE_TYPE_MIPI_OUTPUT;
@@ -2542,13 +2542,19 @@ static bool is_port_valid(struct drm_i915_private 
*i915, enum port port)
return true;
 }
 
-static void print_ddi_port(const struct intel_bios_encoder_data *devdata,
-  enum port port)
+static void print_ddi_port(const struct intel_bios_encoder_data *devdata)
 {
struct drm_i915_private *i915 = devdata->i915;
const struct child_device_config *child = >child;
bool is_dvi, is_hdmi, is_dp, is_edp, is_dsi, is_crt, 
supports_typec_usb, supports_tbt;
int dp_boost_level, dp_max_link_rate, hdmi_boost_level, 
hdmi_level_shift, max_tmds_clock;
+   enum port port;
+
+   port = dvo_port_to_port(i915, child->dvo_port);
+   if (port == PORT_NONE && DISPLAY_VER(i915) >= 11)
+   port = dsi_dvo_port_to_port(i915, child->dvo_port);
+   if (port == PORT_NONE)
+   

[Intel-gfx] [PATCH v2 4/5] drm/i915: Remove AUX CH sanitation

2023-06-20 Thread Ville Syrjala
From: Ville Syrjälä 

Stop with the VBT AUX CH sanitation, and instead just check
that the appropriate AUX CH is still available when initializing
a DP/TC port.

Note that the old way of sanitizing gave priority to the last
port declared in the VBT, but now we sort of do the opposite by
favoring the first encoder to succesfully initialize. The reason
for the old "last port wins" preference was eg. Asrock B250M-HDV
where port A (eDP) and port E (DP->VGA) have an AUX CH conflict
and we need to prefer port E. However with the new way port A (eDP)
will be probed first, but will fail to probe due to HPD and thus
port E will still win in the end.

Signed-off-by: Ville Syrjälä 
---
 drivers/gpu/drm/i915/display/g4x_dp.c   |  3 ++
 drivers/gpu/drm/i915/display/intel_bios.c   | 53 -
 drivers/gpu/drm/i915/display/intel_ddi.c|  5 +-
 drivers/gpu/drm/i915/display/intel_dp_aux.c | 51 
 4 files changed, 50 insertions(+), 62 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/g4x_dp.c 
b/drivers/gpu/drm/i915/display/g4x_dp.c
index 0cab5992e3da..4c7187f7913e 100644
--- a/drivers/gpu/drm/i915/display/g4x_dp.c
+++ b/drivers/gpu/drm/i915/display/g4x_dp.c
@@ -1378,6 +1378,9 @@ bool g4x_dp_init(struct drm_i915_private *dev_priv,
intel_infoframe_init(dig_port);
 
dig_port->aux_ch = intel_dp_aux_ch(intel_encoder);
+   if (dig_port->aux_ch == AUX_CH_NONE)
+   goto err_init_connector;
+
if (!intel_dp_init_connector(dig_port, intel_connector))
goto err_init_connector;
 
diff --git a/drivers/gpu/drm/i915/display/intel_bios.c 
b/drivers/gpu/drm/i915/display/intel_bios.c
index 439ab5b3cbe5..d1bf725ee9b3 100644
--- a/drivers/gpu/drm/i915/display/intel_bios.c
+++ b/drivers/gpu/drm/i915/display/intel_bios.c
@@ -2230,56 +2230,6 @@ static u8 map_ddc_pin(struct drm_i915_private *i915, u8 
vbt_pin)
return 0;
 }
 
-static enum port get_port_by_aux_ch(struct drm_i915_private *i915, u8 aux_ch)
-{
-   enum port port;
-
-   if (!aux_ch)
-   return PORT_NONE;
-
-   for_each_port(port) {
-   const struct intel_bios_encoder_data *devdata =
-   i915->display.vbt.ports[port];
-
-   if (devdata && aux_ch == devdata->child.aux_channel)
-   return port;
-   }
-
-   return PORT_NONE;
-}
-
-static void sanitize_aux_ch(struct intel_bios_encoder_data *devdata,
-   enum port port)
-{
-   struct drm_i915_private *i915 = devdata->i915;
-   struct child_device_config *child;
-   enum port p;
-
-   p = get_port_by_aux_ch(i915, devdata->child.aux_channel);
-   if (p == PORT_NONE)
-   return;
-
-   drm_dbg_kms(>drm,
-   "port %c trying to use the same AUX CH (0x%x) as port %c, "
-   "disabling port %c DP support\n",
-   port_name(port), devdata->child.aux_channel,
-   port_name(p), port_name(p));
-
-   /*
-* If we have multiple ports supposedly sharing the aux channel, then DP
-* couldn't exist on the shared port. Otherwise they share the same aux
-* channel and system couldn't communicate with them separately.
-*
-* Give inverse child device order the priority, last one wins. Yes,
-* there are real machines (eg. Asrock B250M-HDV) where VBT has both
-* port A and port E with the same AUX ch and we must pick port E :(
-*/
-   child = >display.vbt.ports[p]->child;
-
-   child->device_type &= ~DEVICE_TYPE_DISPLAYPORT_OUTPUT;
-   child->aux_channel = 0;
-}
-
 static u8 dvo_port_type(u8 dvo_port)
 {
switch (dvo_port) {
@@ -2687,9 +2637,6 @@ static void parse_ddi_port(struct intel_bios_encoder_data 
*devdata)
 
sanitize_device_type(devdata, port);
 
-   if (intel_bios_encoder_supports_dp(devdata))
-   sanitize_aux_ch(devdata, port);
-
i915->display.vbt.ports[port] = devdata;
 }
 
diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c 
b/drivers/gpu/drm/i915/display/intel_ddi.c
index 662b5ceef3c8..9e4e6482aa26 100644
--- a/drivers/gpu/drm/i915/display/intel_ddi.c
+++ b/drivers/gpu/drm/i915/display/intel_ddi.c
@@ -4938,8 +4938,11 @@ void intel_ddi_init(struct drm_i915_private *dev_priv, 
enum port port)
dig_port->dp.output_reg = INVALID_MMIO_REG;
dig_port->max_lanes = intel_ddi_max_lanes(dig_port);
 
-   if (need_aux_ch(encoder, init_dp))
+   if (need_aux_ch(encoder, init_dp)) {
dig_port->aux_ch = intel_dp_aux_ch(encoder);
+   if (dig_port->aux_ch == AUX_CH_NONE)
+   goto err;
+   }
 
if (intel_phy_is_tc(dev_priv, phy)) {
bool is_legacy =
diff --git a/drivers/gpu/drm/i915/display/intel_dp_aux.c 
b/drivers/gpu/drm/i915/display/intel_dp_aux.c
index 21b50a5c8a85..2d173bd495a3 100644
--- 

[Intel-gfx] [PATCH v2 2/5] drm/i915: Only populate aux_ch is really needed

2023-06-20 Thread Ville Syrjala
From: Ville Syrjälä 

Mixing VBT based AUX CH with platform defaults seems like
a recipe for conflicts. Let's only populate AUX CH if we
absolutely need it, that is only if we are dealing with
a DP output or a TC port (which need it due to some power
well shenanigans).

TODO: double check that real VBTs do in fact populate
  the AUX CH for HDMI TC legacy ports...

Signed-off-by: Ville Syrjälä 
---
 drivers/gpu/drm/i915/display/g4x_hdmi.c  |  1 -
 drivers/gpu/drm/i915/display/intel_ddi.c | 12 +++-
 2 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/g4x_hdmi.c 
b/drivers/gpu/drm/i915/display/g4x_hdmi.c
index c1fd13bdc9d2..634b14116d9d 100644
--- a/drivers/gpu/drm/i915/display/g4x_hdmi.c
+++ b/drivers/gpu/drm/i915/display/g4x_hdmi.c
@@ -775,6 +775,5 @@ void g4x_hdmi_init(struct drm_i915_private *dev_priv,
 
intel_infoframe_init(dig_port);
 
-   dig_port->aux_ch = intel_dp_aux_ch(intel_encoder);
intel_hdmi_init_connector(dig_port, intel_connector);
 }
diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c 
b/drivers/gpu/drm/i915/display/intel_ddi.c
index 6cb24a472a9b..662b5ceef3c8 100644
--- a/drivers/gpu/drm/i915/display/intel_ddi.c
+++ b/drivers/gpu/drm/i915/display/intel_ddi.c
@@ -4676,6 +4676,14 @@ static bool port_strap_detected(struct drm_i915_private 
*i915, enum port port)
}
 }
 
+static bool need_aux_ch(struct intel_encoder *encoder, bool init_dp)
+{
+   struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+   enum phy phy = intel_port_to_phy(i915, encoder->port);
+
+   return init_dp || intel_phy_is_tc(i915, phy);
+}
+
 void intel_ddi_init(struct drm_i915_private *dev_priv, enum port port)
 {
struct intel_digital_port *dig_port;
@@ -4929,7 +4937,9 @@ void intel_ddi_init(struct drm_i915_private *dev_priv, 
enum port port)
 
dig_port->dp.output_reg = INVALID_MMIO_REG;
dig_port->max_lanes = intel_ddi_max_lanes(dig_port);
-   dig_port->aux_ch = intel_dp_aux_ch(encoder);
+
+   if (need_aux_ch(encoder, init_dp))
+   dig_port->aux_ch = intel_dp_aux_ch(encoder);
 
if (intel_phy_is_tc(dev_priv, phy)) {
bool is_legacy =
-- 
2.39.3



[Intel-gfx] [PATCH v2 3/5] drm/i915: Remove DDC pin sanitation

2023-06-20 Thread Ville Syrjala
From: Ville Syrjälä 

Stop with the VBT DDC pin sanitation, and instead just check
that the appropriate DDC pin is still available when initializing
a HDMI connector.

Signed-off-by: Ville Syrjälä 
---
 drivers/gpu/drm/i915/display/intel_bios.c | 69 --
 drivers/gpu/drm/i915/display/intel_hdmi.c | 72 +++
 2 files changed, 59 insertions(+), 82 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_bios.c 
b/drivers/gpu/drm/i915/display/intel_bios.c
index 34a397adbd6b..439ab5b3cbe5 100644
--- a/drivers/gpu/drm/i915/display/intel_bios.c
+++ b/drivers/gpu/drm/i915/display/intel_bios.c
@@ -2230,72 +2230,6 @@ static u8 map_ddc_pin(struct drm_i915_private *i915, u8 
vbt_pin)
return 0;
 }
 
-static enum port get_port_by_ddc_pin(struct drm_i915_private *i915, u8 ddc_pin)
-{
-   enum port port;
-
-   if (!ddc_pin)
-   return PORT_NONE;
-
-   for_each_port(port) {
-   const struct intel_bios_encoder_data *devdata =
-   i915->display.vbt.ports[port];
-
-   if (devdata && ddc_pin == devdata->child.ddc_pin)
-   return port;
-   }
-
-   return PORT_NONE;
-}
-
-static void sanitize_ddc_pin(struct intel_bios_encoder_data *devdata,
-enum port port)
-{
-   struct drm_i915_private *i915 = devdata->i915;
-   struct child_device_config *child;
-   u8 mapped_ddc_pin;
-   enum port p;
-
-   if (!devdata->child.ddc_pin)
-   return;
-
-   mapped_ddc_pin = map_ddc_pin(i915, devdata->child.ddc_pin);
-   if (!intel_gmbus_is_valid_pin(i915, mapped_ddc_pin)) {
-   drm_dbg_kms(>drm,
-   "Port %c has invalid DDC pin %d, "
-   "sticking to defaults\n",
-   port_name(port), mapped_ddc_pin);
-   devdata->child.ddc_pin = 0;
-   return;
-   }
-
-   p = get_port_by_ddc_pin(i915, devdata->child.ddc_pin);
-   if (p == PORT_NONE)
-   return;
-
-   drm_dbg_kms(>drm,
-   "port %c trying to use the same DDC pin (0x%x) as port %c, "
-   "disabling port %c DVI/HDMI support\n",
-   port_name(port), mapped_ddc_pin,
-   port_name(p), port_name(p));
-
-   /*
-* If we have multiple ports supposedly sharing the pin, then dvi/hdmi
-* couldn't exist on the shared port. Otherwise they share the same ddc
-* pin and system couldn't communicate with them separately.
-*
-* Give inverse child device order the priority, last one wins. Yes,
-* there are real machines (eg. Asrock B250M-HDV) where VBT has both
-* port A and port E with the same AUX ch and we must pick port E :(
-*/
-   child = >display.vbt.ports[p]->child;
-
-   child->device_type &= ~DEVICE_TYPE_TMDS_DVI_SIGNALING;
-   child->device_type |= DEVICE_TYPE_NOT_HDMI_OUTPUT;
-
-   child->ddc_pin = 0;
-}
-
 static enum port get_port_by_aux_ch(struct drm_i915_private *i915, u8 aux_ch)
 {
enum port port;
@@ -2753,9 +2687,6 @@ static void parse_ddi_port(struct intel_bios_encoder_data 
*devdata)
 
sanitize_device_type(devdata, port);
 
-   if (intel_bios_encoder_supports_dvi(devdata))
-   sanitize_ddc_pin(devdata, port);
-
if (intel_bios_encoder_supports_dp(devdata))
sanitize_aux_ch(devdata, port);
 
diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c 
b/drivers/gpu/drm/i915/display/intel_hdmi.c
index 7ac5e6c5e00d..8d1c8abfcffa 100644
--- a/drivers/gpu/drm/i915/display/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/display/intel_hdmi.c
@@ -2880,21 +2880,12 @@ static u8 g4x_port_to_ddc_pin(struct drm_i915_private 
*dev_priv,
return ddc_pin;
 }
 
-static u8 intel_hdmi_ddc_pin(struct intel_encoder *encoder)
+static u8 intel_hdmi_default_ddc_pin(struct intel_encoder *encoder)
 {
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
enum port port = encoder->port;
u8 ddc_pin;
 
-   ddc_pin = intel_bios_hdmi_ddc_pin(encoder->devdata);
-   if (ddc_pin) {
-   drm_dbg_kms(_priv->drm,
-   "[ENCODER:%d:%s] Using DDC pin 0x%x (VBT)\n",
-   encoder->base.base.id, encoder->base.name,
-   ddc_pin);
-   return ddc_pin;
-   }
-
if (IS_ALDERLAKE_S(dev_priv))
ddc_pin = adls_port_to_ddc_pin(dev_priv, port);
else if (INTEL_PCH_TYPE(dev_priv) >= PCH_DG1)
@@ -2916,10 +2907,62 @@ static u8 intel_hdmi_ddc_pin(struct intel_encoder 
*encoder)
else
ddc_pin = g4x_port_to_ddc_pin(dev_priv, port);
 
-   drm_dbg_kms(_priv->drm,
-   "[ENCODER:%d:%s] Using DDC pin 0x%x (platform default)\n",
+   return ddc_pin;
+}
+
+static struct intel_encoder *
+get_encoder_by_ddc_pin(struct 

[Intel-gfx] [PATCH v2 1/5] drm/i915: Initialize dig_port->aux_ch to NONE to be sure

2023-06-20 Thread Ville Syrjala
From: Ville Syrjälä 

Make sure dig_port->aux_ch is trustworthy by initializing it
to NONE (-1) at the start. The encoder init will later fill in
the actual value, if appropriate.

Signed-off-by: Ville Syrjälä 
---
 drivers/gpu/drm/i915/display/g4x_dp.c| 2 ++
 drivers/gpu/drm/i915/display/g4x_hdmi.c  | 2 ++
 drivers/gpu/drm/i915/display/intel_ddi.c | 2 ++
 3 files changed, 6 insertions(+)

diff --git a/drivers/gpu/drm/i915/display/g4x_dp.c 
b/drivers/gpu/drm/i915/display/g4x_dp.c
index c58a3f249a01..0cab5992e3da 100644
--- a/drivers/gpu/drm/i915/display/g4x_dp.c
+++ b/drivers/gpu/drm/i915/display/g4x_dp.c
@@ -1273,6 +1273,8 @@ bool g4x_dp_init(struct drm_i915_private *dev_priv,
if (!dig_port)
return false;
 
+   dig_port->aux_ch = AUX_CH_NONE;
+
intel_connector = intel_connector_alloc();
if (!intel_connector)
goto err_connector_alloc;
diff --git a/drivers/gpu/drm/i915/display/g4x_hdmi.c 
b/drivers/gpu/drm/i915/display/g4x_hdmi.c
index 8c71e3ede680..c1fd13bdc9d2 100644
--- a/drivers/gpu/drm/i915/display/g4x_hdmi.c
+++ b/drivers/gpu/drm/i915/display/g4x_hdmi.c
@@ -698,6 +698,8 @@ void g4x_hdmi_init(struct drm_i915_private *dev_priv,
if (!dig_port)
return;
 
+   dig_port->aux_ch = AUX_CH_NONE;
+
intel_connector = intel_connector_alloc();
if (!intel_connector) {
kfree(dig_port);
diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c 
b/drivers/gpu/drm/i915/display/intel_ddi.c
index 61722556bb47..6cb24a472a9b 100644
--- a/drivers/gpu/drm/i915/display/intel_ddi.c
+++ b/drivers/gpu/drm/i915/display/intel_ddi.c
@@ -4747,6 +4747,8 @@ void intel_ddi_init(struct drm_i915_private *dev_priv, 
enum port port)
if (!dig_port)
return;
 
+   dig_port->aux_ch = AUX_CH_NONE;
+
encoder = _port->base;
encoder->devdata = devdata;
 
-- 
2.39.3



[Intel-gfx] [PATCH v2 0/5] drm/i915: Init DDI ports in VBT order

2023-06-20 Thread Ville Syrjala
From: Ville Syrjälä 

The remaining parts of the big VBT based DDI port initialization
series.

The main goal being to get the HDMI port working on many
ADL-P machines where the VBT declares both eDP and HDMI
for the same DDI port (B).

Ville Syrjälä (5):
  drm/i915: Initialize dig_port->aux_ch to NONE to be sure
  drm/i915: Only populate aux_ch is really needed
  drm/i915: Remove DDC pin sanitation
  drm/i915: Remove AUX CH sanitation
  drm/i915: Try to initialize DDI/ICL+ DSI ports for every VBT child
device

 drivers/gpu/drm/i915/display/g4x_dp.c |   5 +
 drivers/gpu/drm/i915/display/g4x_hdmi.c   |   3 +-
 drivers/gpu/drm/i915/display/icl_dsi.c|  11 +-
 drivers/gpu/drm/i915/display/icl_dsi.h|   6 +-
 drivers/gpu/drm/i915/display/intel_bios.c | 187 +-
 drivers/gpu/drm/i915/display/intel_bios.h |   6 +
 drivers/gpu/drm/i915/display/intel_ddi.c  |  66 +--
 drivers/gpu/drm/i915/display/intel_ddi.h  |   5 +-
 drivers/gpu/drm/i915/display/intel_display.c  |  11 +-
 .../gpu/drm/i915/display/intel_display_core.h |   2 -
 drivers/gpu/drm/i915/display/intel_dp_aux.c   |  51 -
 drivers/gpu/drm/i915/display/intel_hdmi.c |  72 +--
 12 files changed, 232 insertions(+), 193 deletions(-)

-- 
2.39.3



Re: [Intel-gfx] [Intel-xe] [PATCH 2/3] linux/bits.h: Add fixed-width GENMASK and BIT macros

2023-06-20 Thread Lucas De Marchi

On Tue, Jun 20, 2023 at 05:55:19PM +0300, Andy Shevchenko wrote:

On Tue, Jun 20, 2023 at 05:47:34PM +0300, Jani Nikula wrote:

On Thu, 15 Jun 2023, Andy Shevchenko  wrote:
> On Fri, May 12, 2023 at 02:45:19PM +0300, Jani Nikula wrote:
>> On Fri, 12 May 2023, Andy Shevchenko  
wrote:
>> > On Fri, May 12, 2023 at 02:25:18PM +0300, Jani Nikula wrote:
>> >> On Fri, 12 May 2023, Andy Shevchenko  
wrote:
>> >> > On Mon, May 08, 2023 at 10:14:02PM -0700, Lucas De Marchi wrote:
>> >> >> Add GENMASK_U32(), GENMASK_U16() and GENMASK_U8()  macros to create
>> >> >> masks for fixed-width types and also the corresponding BIT_U32(),
>> >> >> BIT_U16() and BIT_U8().
>> >> >
>> >> > Why?
>> >>
>> >> The main reason is that GENMASK() and BIT() size varies for 32/64 bit
>> >> builds.
>> >
>> > When needed GENMASK_ULL() can be used (with respective castings perhaps)
>> > and BIT_ULL(), no?
>>
>> How does that help with making them the same 32-bit size on both 32 and
>> 64 bit builds?
>
>u32 x = GENMASK();
>u64 y = GENMASK_ULL();
>
> No? Then use in your code either x or y. Note that I assume that the 
parameters
> to GENMASK*() are built-time constants. Is it the case for you?

What's wrong with wanting to define macros with specific size, depending
on e.g. hardware registers instead of build size?


Nothing, but I think the problem is smaller than it's presented.


not sure about big/small problem you are talking about. It's a problem
for when the *device* register is a 32b fixed width, which is
independent from the CPU you are running on. We also have registers that
are u16 and u64. Having fixed-width GENMASK and BIT helps avoiding
mistakes like below. Just to use one example, the diff below builds
fine on my 64b machine, yet it's obviously wrong:

	$ git diff 
	diff --git a/drivers/gpu/drm/i915/gt/intel_gt_mcr.c b/drivers/gpu/drm/i915/gt/intel_gt_mcr.c

index 0b414eae1683..692a0ad9a768 100644
--- a/drivers/gpu/drm/i915/gt/intel_gt_mcr.c
+++ b/drivers/gpu/drm/i915/gt/intel_gt_mcr.c
@@ -261,8 +261,8 @@ static u32 rw_with_mcr_steering_fw(struct intel_gt 
*gt,
 * No need to save old steering reg value.
 */
intel_uncore_write_fw(uncore, MTL_MCR_SELECTOR,
- REG_FIELD_PREP(MTL_MCR_GROUPID, 
group) |
- 
REG_FIELD_PREP(MTL_MCR_INSTANCEID, instance) |
+ FIELD_PREP(MTL_MCR_GROUPID, 
group) |
+ FIELD_PREP(MTL_MCR_INSTANCEID, 
instance) |
  (rw_flag == FW_REG_READ ? 
GEN11_MCR_MULTICAST : 0));
} else if (GRAPHICS_VER(uncore->i915) >= 11) {
mcr_mask = GEN11_MCR_SLICE_MASK | 
GEN11_MCR_SUBSLICE_MASK;
diff --git a/drivers/gpu/drm/i915/gt/intel_gt_regs.h 
b/drivers/gpu/drm/i915/gt/intel_gt_regs.h
index 718cb2c80f79..c42bc2900c6a 100644
--- a/drivers/gpu/drm/i915/gt/intel_gt_regs.h
+++ b/drivers/gpu/drm/i915/gt/intel_gt_regs.h
@@ -80,8 +80,8 @@
 #define   GEN11_MCR_SLICE_MASK GEN11_MCR_SLICE(0xf)
 #define   GEN11_MCR_SUBSLICE(subslice) (((subslice) & 0x7) << 
24)
 #define   GEN11_MCR_SUBSLICE_MASK  GEN11_MCR_SUBSLICE(0x7)
-#define   MTL_MCR_GROUPID  REG_GENMASK(11, 8)
-#define   MTL_MCR_INSTANCEID   REG_GENMASK(3, 0)
+#define   MTL_MCR_GROUPID  GENMASK(32, 8)
+#define   MTL_MCR_INSTANCEID   GENMASK(3, 0)
	 
	 #define IPEIR_I965 _MMIO(0x2064)

 #define IPEHR_I965 _MMIO(0x2068)

If the driver didn't support 32b CPUs, this would even go unnoticed.

Lucas De Marchi


And there are already header for bitfields with a lot of helpers
for (similar) cases if not yours.


What would you use for printk format if you wanted to to print
GENMASK()?


%lu, no?

--
With Best Regards,
Andy Shevchenko




Re: [Intel-gfx] [PATCHv3] drm/i915/display/dp: On AUX xfer timeout restart freshly

2023-06-20 Thread Imre Deak
On Tue, Jun 20, 2023 at 09:26:28AM +0300, Murthy, Arun R wrote:
> > -Original Message-
> > From: Deak, Imre 
> > Sent: Tuesday, June 13, 2023 4:19 PM
> > To: Murthy, Arun R 
> > Cc: intel-gfx@lists.freedesktop.org; Nikula, Jani 
> > Subject: Re: [PATCHv3] drm/i915/display/dp: On AUX xfer timeout restart
> > freshly
> >
> > On Tue, Jun 13, 2023 at 10:12:39AM +0530, Arun R Murthy wrote:
> > > On AUX transfer timeout, as per DP spec need to retry for 3 times and
> > > has to be restarted freshly.
> > >
> > > v3: handle timeout and dont rely on register value on timeout (Imre)
> > >
> > > Signed-off-by: Arun R Murthy 
> > > ---
> > >  .../drm/i915/display/intel_display_types.h|  1 -
> > >  drivers/gpu/drm/i915/display/intel_dp_aux.c   | 72 +--
> > >  2 files changed, 34 insertions(+), 39 deletions(-)
> > >
> > > diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h
> > > b/drivers/gpu/drm/i915/display/intel_display_types.h
> > > index 2d8297f8d088..0942b109b4ca 100644
> > > --- a/drivers/gpu/drm/i915/display/intel_display_types.h
> > > +++ b/drivers/gpu/drm/i915/display/intel_display_types.h
> > > @@ -1741,7 +1741,6 @@ struct intel_dp {
> > > /* sink or branch descriptor */
> > > struct drm_dp_desc desc;
> > > struct drm_dp_aux aux;
> > > -   u32 aux_busy_last_status;
> > > u8 train_set[4];
> > >
> > > struct intel_pps pps;
> > > diff --git a/drivers/gpu/drm/i915/display/intel_dp_aux.c
> > > b/drivers/gpu/drm/i915/display/intel_dp_aux.c
> > > index 0c27db8ae4f1..244b4d7d716d 100644
> > > --- a/drivers/gpu/drm/i915/display/intel_dp_aux.c
> > > +++ b/drivers/gpu/drm/i915/display/intel_dp_aux.c
> > > @@ -36,25 +36,24 @@ static void intel_dp_aux_unpack(u32 src, u8 *dst,
> > int dst_bytes)
> > > dst[i] = src >> ((3 - i) * 8);
> > >  }
> > >
> > > -static u32
> > > -intel_dp_aux_wait_done(struct intel_dp *intel_dp)
> > > +static int
> > > +intel_dp_aux_wait_done(struct intel_dp *intel_dp, u32 *status)
> > >  {
> > > struct drm_i915_private *i915 = dp_to_i915(intel_dp);
> > > i915_reg_t ch_ctl = intel_dp->aux_ch_ctl_reg(intel_dp);
> > > const unsigned int timeout_ms = 10;
> > > -   u32 status;
> > > int ret;
> > >
> > > ret = __intel_de_wait_for_register(i915, ch_ctl,
> > >DP_AUX_CH_CTL_SEND_BUSY, 0,
> > > -  2, timeout_ms, );
> > > +  50, timeout_ms, status);
> > >
> > > if (ret == -ETIMEDOUT)
> > > drm_err(>drm,
> > > "%s: did not complete or timeout within %ums
> > (status 0x%08x)\n",
> > > -   intel_dp->aux.name, timeout_ms, status);
> > > +   intel_dp->aux.name, timeout_ms, *status);
> > >
> > > -   return status;
> > > +   return ret;
> > >  }
> > >
> > >  static u32 g4x_get_aux_clock_divider(struct intel_dp *intel_dp, int
> > > index) @@ -186,10 +185,7 @@ static u32 skl_get_aux_send_ctl(struct
> > intel_dp *intel_dp,
> > >  */
> > > ret = DP_AUX_CH_CTL_SEND_BUSY |
> > > DP_AUX_CH_CTL_DONE |
> > > -   DP_AUX_CH_CTL_INTERRUPT |
> >
> > The above one-liner change, also applied in g4x_get_aux_send_ctl() should
> > be a separate patch.
> >
> > > -   DP_AUX_CH_CTL_TIME_OUT_ERROR |
> > > DP_AUX_CH_CTL_TIME_OUT_MAX |
> > > -   DP_AUX_CH_CTL_RECEIVE_ERROR |
> > > DP_AUX_CH_CTL_MESSAGE_SIZE(send_bytes) |
> > >
> >   DP_AUX_CH_CTL_FW_SYNC_PULSE_SKL(intel_dp_aux_fw_sync_len())
> > |
> > >
> >   DP_AUX_CH_CTL_SYNC_PULSE_SKL(intel_dp_aux_sync_len());
> > > @@ -273,30 +269,6 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp,
> > >  * it using the same AUX CH simultaneously
> > >  */
> > >
> > > -   /* Try to wait for any previous AUX channel activity */
> > > -   for (try = 0; try < 3; try++) {
> > > -   status = intel_de_read_notrace(i915, ch_ctl);
> > > -   if ((status & DP_AUX_CH_CTL_SEND_BUSY) == 0)
> > > -   break;
> > > -   msleep(1);
> > > -   }
> > > -   /* just trace the final value */
> > > -   trace_i915_reg_rw(false, ch_ctl, status, sizeof(status), true);
> > > -
> > > -   if (try == 3) {
> > > -   const u32 status = intel_de_read(i915, ch_ctl);
> > > -
> > > -   if (status != intel_dp->aux_busy_last_status) {
> > > -   drm_WARN(>drm, 1,
> > > -"%s: not started (status 0x%08x)\n",
> > > -intel_dp->aux.name, status);
> > > -   intel_dp->aux_busy_last_status = status;
> > > -   }
> > > -
> > > -   ret = -EBUSY;
> > > -   goto out;
> > > -   }
> > > -
> > > /* Only 5 data registers! */
> > > if (drm_WARN_ON(>drm, send_bytes > 20 || recv_size > 20)) {
> > > ret = -E2BIG;
> > > @@ -304,14 +276,31 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp,
> > > }
> > >
> > > while 

[Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915: Unbind display fb immediately

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915: Unbind display fb immediately
URL   : https://patchwork.freedesktop.org/series/119589/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_13293 -> Patchwork_119589v1


Summary
---

  **FAILURE**

  Serious unknown changes coming with Patchwork_119589v1 absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_119589v1, 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_119589v1/index.html

Participating hosts (42 -> 41)
--

  Additional (1): fi-kbl-soraka 
  Missing(2): bat-rpls-2 fi-snb-2520m 

Possible new issues
---

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

### IGT changes ###

 Possible regressions 

  * igt@i915_module_load@load:
- bat-dg1-5:  [PASS][1] -> [ABORT][2]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/bat-dg1-5/igt@i915_module_l...@load.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119589v1/bat-dg1-5/igt@i915_module_l...@load.html
- fi-skl-guc: [PASS][3] -> [ABORT][4]
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/fi-skl-guc/igt@i915_module_l...@load.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119589v1/fi-skl-guc/igt@i915_module_l...@load.html
- bat-dg2-11: [PASS][5] -> [ABORT][6]
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/bat-dg2-11/igt@i915_module_l...@load.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119589v1/bat-dg2-11/igt@i915_module_l...@load.html

  * igt@kms_busy@basic@flip:
- fi-kbl-7567u:   [PASS][7] -> [ABORT][8]
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/fi-kbl-7567u/igt@kms_busy@ba...@flip.html
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119589v1/fi-kbl-7567u/igt@kms_busy@ba...@flip.html
- bat-adln-1: [PASS][9] -> [ABORT][10]
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/bat-adln-1/igt@kms_busy@ba...@flip.html
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119589v1/bat-adln-1/igt@kms_busy@ba...@flip.html
- fi-cfl-8700k:   [PASS][11] -> [ABORT][12]
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/fi-cfl-8700k/igt@kms_busy@ba...@flip.html
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119589v1/fi-cfl-8700k/igt@kms_busy@ba...@flip.html
- fi-elk-e7500:   [PASS][13] -> [ABORT][14]
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/fi-elk-e7500/igt@kms_busy@ba...@flip.html
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119589v1/fi-elk-e7500/igt@kms_busy@ba...@flip.html
- bat-rplp-1: [PASS][15] -> [ABORT][16]
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/bat-rplp-1/igt@kms_busy@ba...@flip.html
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119589v1/bat-rplp-1/igt@kms_busy@ba...@flip.html
- fi-tgl-1115g4:  [PASS][17] -> [ABORT][18]
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/fi-tgl-1115g4/igt@kms_busy@ba...@flip.html
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119589v1/fi-tgl-1115g4/igt@kms_busy@ba...@flip.html
- fi-cfl-guc: [PASS][19] -> [ABORT][20]
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/fi-cfl-guc/igt@kms_busy@ba...@flip.html
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119589v1/fi-cfl-guc/igt@kms_busy@ba...@flip.html
- bat-dg2-9:  [PASS][21] -> [ABORT][22]
   [21]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/bat-dg2-9/igt@kms_busy@ba...@flip.html
   [22]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119589v1/bat-dg2-9/igt@kms_busy@ba...@flip.html
- fi-hsw-4770:[PASS][23] -> [ABORT][24]
   [23]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/fi-hsw-4770/igt@kms_busy@ba...@flip.html
   [24]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119589v1/fi-hsw-4770/igt@kms_busy@ba...@flip.html
- fi-cfl-8109u:   [PASS][25] -> [ABORT][26]
   [25]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/fi-cfl-8109u/igt@kms_busy@ba...@flip.html
   [26]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119589v1/fi-cfl-8109u/igt@kms_busy@ba...@flip.html
- fi-ivb-3770:[PASS][27] -> [ABORT][28]
   [27]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/fi-ivb-3770/igt@kms_busy@ba...@flip.html
   [28]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119589v1/fi-ivb-3770/igt@kms_busy@ba...@flip.html
- bat-mtlp-8: [PASS][29] -> [ABORT][30]
   [29]: 

[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Unbind display fb immediately

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915: Unbind display fb immediately
URL   : https://patchwork.freedesktop.org/series/119589/
State : warning

== Summary ==

Error: dim checkpatch failed
5442ba7e2b04 drm/i915: Unbind display fb immediately
-:20: WARNING:LINE_SPACING: Missing a blank line after declarations
#20: FILE: drivers/gpu/drm/i915/display/intel_fb_pin.c:237:
+   int err = i915_vma_unbind(vma);
+   if (err)

total: 0 errors, 1 warnings, 0 checks, 11 lines checked




Re: [Intel-gfx] [PATCH 00/11] Replace acronym with full platform name in defines.

2023-06-20 Thread Jani Nikula
On Thu, 15 Jun 2023, Dnyaneshwar Bhadane  wrote:
> Replace all occurences of ADL with ALDERLAKE, TGL with TIGERLAKE, 
> MTL with METEORLAKE, RKL with ROCKETLAKE, JSL with JASPERLAKE, 
> KBL with KABYLAKE and SKL with SKYLAKE in platform and subplatform
> defines. This way there is a consistent pattern to how platforms 
> are referred. While the change is minor and could be combined to 
> have lesser patches, splitting to per subpaltform for easier 
> cherrypicks, if needed.

First of all, I'll note that changes like these need maintainer acks
before merging. Simple review for correctness is not enough!

While discussing this, there was perhaps a slight preference for moving
towards acronyms for brevity instead of expanding all of them to full
names. It can get a bit unwieldy.

For background, the reasons for having IS__DISPLAY_STEP() are
two-fold: the steppings used to be platform specific, so it made sense
to tie platform and stepping together, and IS__DISPLAY_STEP()
was considered too long combined.

Nowadays, we've abstracted steppings in code to be independent of
platforms, so we could use IS_() && IS_DISPLAY_STEP(), and
throw out all the IS__DISPLAY_STEP() macros. They're orthogonal
things, and it actually bugs me to have so many platform specific
wrappers for the combos.

If in addition we moved to acronyms, we could have IS_() &&
IS_DISPLAY_STEP(), and it would be pretty short and nice.

That said, all of these changes are a lot of churn, so I'd rather not
make them lightly.


BR,
Jani.




>
> v2:
>  - Fix the checkpatch warning.
>
> Anusha Srivatsa (5):
>   drm/i915/adlp: s/ADLP/ALDERLAKE_P for display and graphics step
>   drm/i915/rplp: s/ADLP/ALDERLAKE_P for RPLP defines
>   drm/i915/adln: s/ADLP/ALDERLAKE_P in ADLN defines
>   drm/i915/adls: s/ADLS/ALDERLAKE_S in platform and subplatform defines
>   drm/i915/rplu: s/ADLP/ALDERLAKE_P in RPLU defines
>
> Dnyaneshwar Bhadane (6):
>   drm/i915/TGL: s/TGL/TIGERLAKE for platform/subplatform defines
>   drm/i915/MTL: s/MTL/METEORLAKE for platform/subplatform defines
>   drm/i915/TGL: s/RKL/ROCKETLAKE for platform/subplatform defines
>   drm/i915/JSL: s/JSL/JASPERLAKE for platform/subplatform defines
>   drm/i915/KBL: s/KBL/KABYLAKE for platform/subplatform defines
>   drm/i915/SKL: s/SKL/SKYLAKE for platform/subplatform defines
>
>  drivers/gpu/drm/i915/display/icl_dsi.c|  4 +-
>  drivers/gpu/drm/i915/display/intel_cdclk.c|  8 +--
>  .../gpu/drm/i915/display/intel_combo_phy.c|  6 +-
>  drivers/gpu/drm/i915/display/intel_ddi.c  |  6 +-
>  .../drm/i915/display/intel_ddi_buf_trans.c| 10 +--
>  drivers/gpu/drm/i915/display/intel_display.c  |  6 +-
>  .../drm/i915/display/intel_display_device.c   |  2 +-
>  .../drm/i915/display/intel_display_power.c|  2 +-
>  drivers/gpu/drm/i915/display/intel_dp.c   |  2 +-
>  drivers/gpu/drm/i915/display/intel_dpll_mgr.c | 20 +++---
>  drivers/gpu/drm/i915/display/intel_fbc.c  |  2 +-
>  drivers/gpu/drm/i915/display/intel_hdmi.c |  2 +-
>  drivers/gpu/drm/i915/display/intel_pmdemand.c |  2 +-
>  drivers/gpu/drm/i915/display/intel_psr.c  | 20 +++---
>  .../drm/i915/display/skl_universal_plane.c| 10 +--
>  drivers/gpu/drm/i915/gem/i915_gem_object.c|  2 +-
>  drivers/gpu/drm/i915/gt/gen8_engine_cs.c  | 10 +--
>  drivers/gpu/drm/i915/gt/intel_engine_cs.c |  2 +-
>  .../drm/i915/gt/intel_execlists_submission.c  |  2 +-
>  drivers/gpu/drm/i915/gt/intel_gt_mcr.c|  4 +-
>  drivers/gpu/drm/i915/gt/intel_lrc.c   |  4 +-
>  drivers/gpu/drm/i915/gt/intel_rc6.c   |  2 +-
>  drivers/gpu/drm/i915/gt/intel_sseu.c  |  2 +-
>  drivers/gpu/drm/i915/gt/intel_workarounds.c   | 54 
>  drivers/gpu/drm/i915/gt/uc/intel_guc.c|  4 +-
>  .../gpu/drm/i915/gt/uc/intel_guc_hwconfig.c   |  2 +-
>  .../gpu/drm/i915/gt/uc/intel_guc_submission.c |  4 +-
>  drivers/gpu/drm/i915/gt/uc/intel_uc.c |  2 +-
>  drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c  |  2 +-
>  drivers/gpu/drm/i915/i915_drv.h   | 64 +--
>  drivers/gpu/drm/i915/i915_perf.c  |  4 +-
>  drivers/gpu/drm/i915/intel_clock_gating.c |  4 +-
>  drivers/gpu/drm/i915/intel_step.c | 10 +--
>  drivers/gpu/drm/i915/soc/intel_pch.c  |  6 +-
>  34 files changed, 143 insertions(+), 143 deletions(-)

-- 
Jani Nikula, Intel Open Source Graphics Center


[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/psr: Use hw.adjusted mode when calculating io/fast wake times

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/psr: Use hw.adjusted mode when calculating io/fast wake times
URL   : https://patchwork.freedesktop.org/series/119580/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13293 -> Patchwork_119580v1


Summary
---

  **SUCCESS**

  No regressions found.

  External URL: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/index.html

Participating hosts (42 -> 42)
--

  Additional (1): fi-kbl-soraka 
  Missing(1): fi-snb-2520m 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@debugfs_test@basic-hwmon:
- bat-adlp-11:NOTRUN -> [SKIP][1] ([i915#7456])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/bat-adlp-11/igt@debugfs_t...@basic-hwmon.html

  * igt@gem_exec_suspend@basic-s0@smem:
- bat-rpls-1: NOTRUN -> [FAIL][2] ([fdo#103375] / [i915#8011])
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/bat-rpls-1/igt@gem_exec_suspend@basic...@smem.html

  * igt@gem_exec_suspend@basic-s3@smem:
- bat-rpls-1: NOTRUN -> [FAIL][3] ([fdo#103375])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/bat-rpls-1/igt@gem_exec_suspend@basic...@smem.html

  * igt@gem_huc_copy@huc-copy:
- fi-kbl-soraka:  NOTRUN -> [SKIP][4] ([fdo#109271] / [i915#2190])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/fi-kbl-soraka/igt@gem_huc_c...@huc-copy.html

  * igt@gem_lmem_swapping@basic:
- fi-kbl-soraka:  NOTRUN -> [SKIP][5] ([fdo#109271] / [i915#4613]) +3 
similar issues
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/fi-kbl-soraka/igt@gem_lmem_swapp...@basic.html

  * igt@gem_tiled_pread_basic:
- bat-adlp-11:NOTRUN -> [SKIP][6] ([i915#3282])
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/bat-adlp-11/igt@gem_tiled_pread_basic.html

  * igt@i915_selftest@live@gt_heartbeat:
- fi-kbl-soraka:  NOTRUN -> [DMESG-FAIL][7] ([i915#5334] / [i915#7872])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html

  * igt@i915_selftest@live@gt_pm:
- fi-kbl-soraka:  NOTRUN -> [DMESG-FAIL][8] ([i915#1886] / [i915#7913])
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/fi-kbl-soraka/igt@i915_selftest@live@gt_pm.html

  * igt@i915_selftest@live@requests:
- bat-mtlp-8: [PASS][9] -> [DMESG-FAIL][10] ([i915#8497])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/bat-mtlp-8/igt@i915_selftest@l...@requests.html
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/bat-mtlp-8/igt@i915_selftest@l...@requests.html

  * igt@i915_suspend@basic-s2idle-without-i915:
- bat-rpls-1: [PASS][11] -> [FAIL][12] ([fdo#103375])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13293/bat-rpls-1/igt@i915_susp...@basic-s2idle-without-i915.html
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/bat-rpls-1/igt@i915_susp...@basic-s2idle-without-i915.html

  * igt@i915_suspend@basic-s3-without-i915:
- bat-atsm-1: NOTRUN -> [SKIP][13] ([i915#6645])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/bat-atsm-1/igt@i915_susp...@basic-s3-without-i915.html

  * igt@kms_chamelium_frames@hdmi-crc-fast:
- bat-adlp-11:NOTRUN -> [SKIP][14] ([i915#7828]) +7 similar issues
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/bat-adlp-11/igt@kms_chamelium_fra...@hdmi-crc-fast.html

  * igt@kms_chamelium_hpd@common-hpd-after-suspend:
- bat-adlp-9: NOTRUN -> [SKIP][15] ([i915#7828])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/bat-adlp-9/igt@kms_chamelium_...@common-hpd-after-suspend.html
- bat-atsm-1: NOTRUN -> [SKIP][16] ([i915#6078])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/bat-atsm-1/igt@kms_chamelium_...@common-hpd-after-suspend.html
- bat-rpls-1: NOTRUN -> [SKIP][17] ([i915#7828])
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/bat-rpls-1/igt@kms_chamelium_...@common-hpd-after-suspend.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- fi-kbl-soraka:  NOTRUN -> [SKIP][18] ([fdo#109271]) +14 similar issues
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/fi-kbl-soraka/igt@kms_cursor_leg...@basic-busy-flip-before-cursor-atomic.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- bat-adlp-11:NOTRUN -> [SKIP][19] ([i915#4103]) +1 similar issue
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119580v1/bat-adlp-11/igt@kms_cursor_leg...@basic-busy-flip-before-cursor-legacy.html

  * 

Re: [Intel-gfx] [PATCH v4 5/6] dma-buf: Change locking policy for mmap()

2023-06-20 Thread Dmitry Osipenko
On 5/31/23 22:58, Dmitry Osipenko wrote:
> On 5/30/23 01:39, Dmitry Osipenko wrote:
>> Change locking policy of mmap() callback, making exporters responsible
>> for handling dma-buf reservation locking. Previous locking policy stated
>> that dma-buf is locked for both importers and exporters by the dma-buf
>> core, which caused a deadlock problem for DRM drivers in a case of
>> self-imported dma-bufs which required to take the lock from the DRM
>> exporter side.
>>
>> Reviewed-by: Emil Velikov 
>> Signed-off-by: Dmitry Osipenko 
>> ---
>>  drivers/dma-buf/dma-buf.c | 17 +++--
>>  1 file changed, 3 insertions(+), 14 deletions(-)
> 
> Christian, you acked the drm patch of this series sometime ago, perhaps
> it also implies implicit ack to this patch, but I'd prefer to have the
> explicit ack. I'll apply this series to drm-misc later this week if
> you'll approve this dma-buf change. Thanks in advance!

I'll merge the patches tomorrow. If there are any additional comments,
then please don't hesitate to post them.

-- 
Best regards,
Dmitry



Re: [Intel-gfx] [PATCH 2/3] linux/bits.h: Add fixed-width GENMASK and BIT macros

2023-06-20 Thread Andy Shevchenko
On Tue, Jun 20, 2023 at 05:47:34PM +0300, Jani Nikula wrote:
> On Thu, 15 Jun 2023, Andy Shevchenko  
> wrote:
> > On Fri, May 12, 2023 at 02:45:19PM +0300, Jani Nikula wrote:
> >> On Fri, 12 May 2023, Andy Shevchenko  
> >> wrote:
> >> > On Fri, May 12, 2023 at 02:25:18PM +0300, Jani Nikula wrote:
> >> >> On Fri, 12 May 2023, Andy Shevchenko 
> >> >>  wrote:
> >> >> > On Mon, May 08, 2023 at 10:14:02PM -0700, Lucas De Marchi wrote:
> >> >> >> Add GENMASK_U32(), GENMASK_U16() and GENMASK_U8()  macros to create
> >> >> >> masks for fixed-width types and also the corresponding BIT_U32(),
> >> >> >> BIT_U16() and BIT_U8().
> >> >> >
> >> >> > Why?
> >> >> 
> >> >> The main reason is that GENMASK() and BIT() size varies for 32/64 bit
> >> >> builds.
> >> >
> >> > When needed GENMASK_ULL() can be used (with respective castings perhaps)
> >> > and BIT_ULL(), no?
> >> 
> >> How does that help with making them the same 32-bit size on both 32 and
> >> 64 bit builds?
> >
> > u32 x = GENMASK();
> > u64 y = GENMASK_ULL();
> >
> > No? Then use in your code either x or y. Note that I assume that the 
> > parameters
> > to GENMASK*() are built-time constants. Is it the case for you?
> 
> What's wrong with wanting to define macros with specific size, depending
> on e.g. hardware registers instead of build size?

Nothing, but I think the problem is smaller than it's presented.
And there are already header for bitfields with a lot of helpers
for (similar) cases if not yours.

> What would you use for printk format if you wanted to to print
> GENMASK()?

%lu, no?

-- 
With Best Regards,
Andy Shevchenko




Re: [Intel-gfx] [RFC 02/10] drm: Update file owner during use

2023-06-20 Thread Emil Velikov
Hi Tvrtko

Sorry for the delay, real life and other obligations got in the way.

On Thu, 8 Jun 2023 at 15:26, Tvrtko Ursulin
 wrote:
> On 21/04/2023 13:13, Emil Velikov wrote:

> Are you okay if I just paste your very fine explanation verbatim, with
> credits?
>

Yes, feel free to use as much of if as you see reasonable.

> > I also had a brief look at 01/10, although I cannot find many
> > references for the pid <> tguid mappings. Be that on the kernel side
> > or userspace - do you have any links that I can educate myself?
>
> TGID or thread group leader. For single threaded userspace TGID equals
> to PID, while for multi-threaded first thread TGID equals PID/TID, while
> additional threads PID/TID does not equal TGID. Clear, as mud? :) My
> POSIX book is misplaced somewhere having not consulted it years... :)
>

Ack. /me looks into actually buying one, perhaps

Thanks
Emil


Re: [Intel-gfx] [PATCH 2/3] linux/bits.h: Add fixed-width GENMASK and BIT macros

2023-06-20 Thread Jani Nikula
On Thu, 15 Jun 2023, Andy Shevchenko  wrote:
> On Fri, May 12, 2023 at 02:45:19PM +0300, Jani Nikula wrote:
>> On Fri, 12 May 2023, Andy Shevchenko  
>> wrote:
>> > On Fri, May 12, 2023 at 02:25:18PM +0300, Jani Nikula wrote:
>> >> On Fri, 12 May 2023, Andy Shevchenko  
>> >> wrote:
>> >> > On Mon, May 08, 2023 at 10:14:02PM -0700, Lucas De Marchi wrote:
>> >> >> Add GENMASK_U32(), GENMASK_U16() and GENMASK_U8()  macros to create
>> >> >> masks for fixed-width types and also the corresponding BIT_U32(),
>> >> >> BIT_U16() and BIT_U8().
>> >> >
>> >> > Why?
>> >> 
>> >> The main reason is that GENMASK() and BIT() size varies for 32/64 bit
>> >> builds.
>> >
>> > When needed GENMASK_ULL() can be used (with respective castings perhaps)
>> > and BIT_ULL(), no?
>> 
>> How does that help with making them the same 32-bit size on both 32 and
>> 64 bit builds?
>
>   u32 x = GENMASK();
>   u64 y = GENMASK_ULL();
>
> No? Then use in your code either x or y. Note that I assume that the 
> parameters
> to GENMASK*() are built-time constants. Is it the case for you?

What's wrong with wanting to define macros with specific size, depending
on e.g. hardware registers instead of build size?

What would you use for printk format if you wanted to to print
GENMASK()?


BR,
Jani.


-- 
Jani Nikula, Intel Open Source Graphics Center


Re: [Intel-gfx] [PATCH 04/11] drm/i915/JSL: s/JSL/JASPERLAKE for platform/subplatform defines

2023-06-20 Thread Srivatsa, Anusha



> -Original Message-
> From: Intel-gfx  On Behalf Of Jani
> Nikula
> Sent: Monday, June 19, 2023 1:46 AM
> To: Bhadane, Dnyaneshwar ; intel-
> g...@lists.freedesktop.org
> Cc: Bhadane, Dnyaneshwar 
> Subject: Re: [Intel-gfx] [PATCH 04/11] drm/i915/JSL: s/JSL/JASPERLAKE for
> platform/subplatform defines
> 
> On Thu, 15 Jun 2023, Dnyaneshwar Bhadane
>  wrote:
> > Follow consistent naming convention. Replace JSL with JASPERLAKE.
> >
> > Signed-off-by: Dnyaneshwar Bhadane 
> 
> > -#define IS_JSL_EHL(i915)   (IS_PLATFORM(i915, INTEL_JASPERLAKE) || \
> > +#define IS_JASPERLAKE_EHL(i915)(IS_PLATFORM(i915,
> INTEL_JASPERLAKE) || \
> > IS_PLATFORM(i915, INTEL_ELKHARTLAKE))
> 
> The new name for this is just dumb. This matches two platforms, JSL and EHL,
> and there's no point in one of them being an acronym and the other one not.
> 
> And IS_JASPERLAKE_ELKHARTLAKE() would be too long.
> 
Agreed on the long name.
Given that we are not touching Elkhartlake in this series, we can probably skip 
jasperlake too?

Anusha
> BR,
> Jani.
> 
> --
> Jani Nikula, Intel Open Source Graphics Center


Re: [Intel-gfx] [RFC 2/3] drm/i915/display: Configure and initialize HDMI audio capabilities

2023-06-20 Thread Borah, Chaitanya Kumar
Hello Kai,

> -Original Message-
> From: Intel-gfx  On Behalf Of Kai
> Vehmanen
> Sent: Monday, June 19, 2023 5:56 PM
> To: Golani, Mitulkumar Ajitkumar 
> Cc: intel-gfx@lists.freedesktop.org; jyri.sa...@linux.intel.com
> Subject: Re: [Intel-gfx] [RFC 2/3] drm/i915/display: Configure and initialize
> HDMI audio capabilities
> 
> Hey,
> 
> replying to 9th June version (my mistake), but I checked the 15th June patch
> version and comments applied to that one as well:
> 
> On Fri, 9 Jun 2023, Mitul Golani wrote:
> 
> > Initialize the source audio capabilities for HDMI in crtc_state
> > property by setting them to their maximum supported values, including
> > max_channel and max_frequency. This allows for the calculation of HDMI
> > audio source capabilities with respect to the available mode
> > bandwidth. These capabilities encompass parameters such as supported
> > frequency and channel configurations.
> [...]
> > @@ -1131,6 +1131,12 @@ struct intel_crtc_state {
> >
> > struct {
> > bool has_audio;
> > +
> > +   /* Audio rate in Hz */
> > +   int max_frequency;
> > +
> > +   /* Number of audio channels */
> > +   int max_channel;
> > } audio;
> 
> Comment on this below.
> 
> > --- a/drivers/gpu/drm/i915/display/intel_hdmi.c
> > +++ b/drivers/gpu/drm/i915/display/intel_hdmi.c
> > @@ -2277,6 +2277,40 @@ bool intel_hdmi_compute_has_hdmi_sink(struct
> intel_encoder *encoder,
> > !intel_hdmi_is_cloned(crtc_state);
> >  }
> >
> > +static unsigned int calc_audio_bw(int channel, int frequency) {
> > +   int bits_per_sample = 32;
> > +   unsigned int bandwidth = channel * frequency * bits_per_sample;
> 
> Maybe unsigned for bits_per_sample as well? And not sure how fixed this is,
> but having 32 as a define at start file with more descriptive name might be a
> good idea as well. I.e. this is the audio sample container size used in all
> calculations.
> 
> > +void
> > +intel_hdmi_audio_compute_config(struct intel_crtc_state *pipe_config)
> > +{
> > +   struct drm_display_mode *adjusted_mode = _config-
> >hw.adjusted_mode;
> > +   int num_of_channel, aud_rates[7] = {192000, 176000, 96000, 88000,
> 48000, 44100, 32000};
> > +   unsigned int audio_req_bandwidth, available_blank_bandwidth,
> vblank,
> > +hblank;
> > +
> > +   hblank = adjusted_mode->htotal - adjusted_mode->hdisplay;
> > +   vblank = adjusted_mode->vtotal - adjusted_mode->vdisplay;
> > +   available_blank_bandwidth = hblank * vblank *
> > +   drm_mode_vrefresh(adjusted_mode) *
> pipe_config->pipe_bpp;
> > +   for (num_of_channel = 8; num_of_channel > 0; num_of_channel--) {
> 
> The maximum channel count of 8 would deserve its own define. It's pretty
> much a constant coming from the specs, but still avoid magic numbers in code
> would be preferable. Or we remove this altoghter, see below...
> 
> > +   for (int index = 0; index < 7; index++) {
> > +   audio_req_bandwidth =
> calc_audio_bw(num_of_channel,
> > +   aud_rates[index]);
> > +   if (audio_req_bandwidth <
> available_blank_bandwidth) {
> 
> <= ?
> 
> > +   pipe_config->audio.max_frequency =
> aud_rates[index];
> > +   pipe_config->audio.max_channel =
> num_of_channel;
> > +   return;
> > +   }
> 
> This will hit a problem if we have a case where bandwidth is not enough for 
> 5.1
> at 192kHz, but it is enough for 2ch 192kHz audio. This approach forces us to
> give preference to either channel acount or sampling rate.
> 
> What if we just store the 'max audio samples per second' into pipe config:
> 
>  - have "int max_audio_samples_per_second;" in pipe_config
>  - pipe_config->audio.max_audio_samples_per_second =
> available_blank_bandwidth / 32;
> 
> Then when filtering SADs, the invidial channels+rate combination of each SAD
> is compared to the max_audio_samples_per_second and based on that, the
> SAD is either filter or passed on. What do you think?
> 

This has been one my concern as well and we have thought about a similar 
approach as you suggest.
One disadvantage of this approach that I can see, would be that if there are 
hardware limitations on channels (as was in GLK) or frequencies independently. 
It will be become tricky with this approach. However, one can argue that these 
limitations arise from bandwidth itself.

Regarding the bits per sample, Is using 32bit for all audio formats fair or 
should we take into account different audio formats and their bit depth?

Regards

Chaitanya

> Br, Kai



Re: [Intel-gfx] [PATCH] drm/i915/pxp: Optimize GET_PARAM:PXP_STATUS

2023-06-20 Thread Balasubrawmanian, Vivaik

On 6/1/2023 12:45 PM, Alan Previn wrote:

After recent discussions with Mesa folks, it was requested
that we optimize i915's GET_PARAM for the PXP_STATUS without
changing the UAPI spec.

This patch adds this additional optimizations:
- If any PXP initializatoin flow failed, then ensure that
  we catch it so that we can change the returned PXP_STATUS
  from "2" (i.e. 'PXP is supported but not yet ready')
  to "-ENODEV". This typically should not happen and if it
  does, we have a platform configuration.
- If a PXP arbitration session creation event failed
  due to incorrect firmware version or blocking SOC fusing
  or blocking BIOS configuration (platform reasons that won't
  change if we retry), then reflect that blockage by also
  returning -ENODEV in the GET_PARAM-PXP_STATUS.
- GET_PARAM:PXP_STATUS should not wait at all if PXP is
  supported but non-i915 dependencies (component-driver /
  firmware) we are still pending to complete the init flows.
  In this case, just return "2" immediately (i.e. 'PXP is
  supported but not yet ready').

Signed-off-by: Alan Previn 
---
  drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c  | 11 +-
  drivers/gpu/drm/i915/i915_getparam.c   |  2 +-
  drivers/gpu/drm/i915/pxp/intel_pxp.c   | 25 ++
  drivers/gpu/drm/i915/pxp/intel_pxp.h   |  2 +-
  drivers/gpu/drm/i915/pxp/intel_pxp_gsccs.c |  7 +++---
  drivers/gpu/drm/i915/pxp/intel_pxp_tee.c   |  7 +++---
  drivers/gpu/drm/i915/pxp/intel_pxp_types.h |  9 
  7 files changed, 50 insertions(+), 13 deletions(-)

diff --git a/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c 
b/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c
index fb0984f875f9..4dd744c96a37 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c
@@ -42,8 +42,17 @@ static void gsc_work(struct work_struct *work)
}
  
  		ret = intel_gsc_proxy_request_handler(gsc);

-   if (ret)
+   if (ret) {
+   if (actions & GSC_ACTION_FW_LOAD) {
+   /*
+* a proxy request failure that came together 
with the
+* firmware load action means the last part of 
init has
+* failed so GSC fw won't be usable after this
+*/
+   intel_uc_fw_change_status(>fw, 
INTEL_UC_FIRMWARE_LOAD_FAIL);
+   }
goto out_put;
+   }
  
  		/* mark the GSC FW init as done the first time we run this */

if (actions & GSC_ACTION_FW_LOAD) {


On the huc authentication comment block above this snippet, the last 
statement: "Note that we can only do the GSC auth if the GuC auth was" 
is confusing as the code below is only dealing with HuC Authentication.


This function seems to have a section to deal with FW load action and 
another to deal with SW Proxy requests, but we seem to be mixing both 
actions in the SW proxy section. instead, can we move this call to 
intel_gsc_proxy_request_handler to the FW load section itself instead of 
handling it as an additional check in the SW_proxy section? In the same 
vein, we should also move the intel_uc_fw_change_status() call into the 
above FW Load action section. i think that way the code reads better.



diff --git a/drivers/gpu/drm/i915/i915_getparam.c 
b/drivers/gpu/drm/i915/i915_getparam.c
index 6f11d7eaa91a..1b2ee98a158a 100644
--- a/drivers/gpu/drm/i915/i915_getparam.c
+++ b/drivers/gpu/drm/i915/i915_getparam.c
@@ -105,7 +105,7 @@ int i915_getparam_ioctl(struct drm_device *dev, void *data,
return value;
break;
case I915_PARAM_PXP_STATUS:
-   value = intel_pxp_get_readiness_status(i915->pxp);
+   value = intel_pxp_get_readiness_status(i915->pxp, 1);
if (value < 0)
return value;
break;
diff --git a/drivers/gpu/drm/i915/pxp/intel_pxp.c 
b/drivers/gpu/drm/i915/pxp/intel_pxp.c
index bb2e15329f34..1478bb9b4e26 100644
--- a/drivers/gpu/drm/i915/pxp/intel_pxp.c
+++ b/drivers/gpu/drm/i915/pxp/intel_pxp.c
@@ -359,21 +359,38 @@ void intel_pxp_end(struct intel_pxp *pxp)
intel_runtime_pm_put(>runtime_pm, wakeref);
  }
  
+static bool pxp_required_fw_failed(struct intel_pxp *pxp)

+{
+   if (__intel_uc_fw_status(>ctrl_gt->uc.huc.fw) == 
INTEL_UC_FIRMWARE_LOAD_FAIL)
+   return true;
+   if (HAS_ENGINE(pxp->ctrl_gt, GSC0) &&
+   __intel_uc_fw_status(>ctrl_gt->uc.gsc.fw) == 
INTEL_UC_FIRMWARE_LOAD_FAIL)
+   return true;
+
+   return false;
+}
+
  /*
   * this helper is used by both intel_pxp_start and by
   * the GET_PARAM IOCTL that user space calls. Thus, the
   * return values here should match the UAPI spec.
   */
-int intel_pxp_get_readiness_status(struct 

[Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915: Replace kmap() with kmap_local_page() (rev5)

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915: Replace kmap() with kmap_local_page() (rev5)
URL   : https://patchwork.freedesktop.org/series/107277/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_13292 -> Patchwork_107277v5


Summary
---

  **FAILURE**

  Serious unknown changes coming with Patchwork_107277v5 absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_107277v5, 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_107277v5/index.html

Participating hosts (43 -> 41)
--

  Missing(2): fi-kbl-soraka fi-snb-2520m 

Possible new issues
---

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

### IGT changes ###

 Possible regressions 

  * igt@i915_pm_rpm@basic-rte:
- bat-mtlp-8: [PASS][1] -> [ABORT][2]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13292/bat-mtlp-8/igt@i915_pm_...@basic-rte.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v5/bat-mtlp-8/igt@i915_pm_...@basic-rte.html

  
Known issues


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

### IGT changes ###

 Issues hit 

  * igt@core_auth@basic-auth:
- bat-adlp-11:NOTRUN -> [ABORT][3] ([i915#8011])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v5/bat-adlp-11/igt@core_a...@basic-auth.html

  * igt@gem_exec_suspend@basic-s0@smem:
- bat-jsl-3:  [PASS][4] -> [ABORT][5] ([i915#5122])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13292/bat-jsl-3/igt@gem_exec_suspend@basic...@smem.html
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v5/bat-jsl-3/igt@gem_exec_suspend@basic...@smem.html

  * igt@i915_pm_backlight@basic-brightness@edp-1:
- bat-rplp-1: NOTRUN -> [ABORT][6] ([i915#7077])
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v5/bat-rplp-1/igt@i915_pm_backlight@basic-brightn...@edp-1.html

  * igt@i915_selftest@live@hangcheck:
- bat-dg2-9:  [PASS][7] -> [ABORT][8] ([i915#7913] / [i915#7979])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13292/bat-dg2-9/igt@i915_selftest@l...@hangcheck.html
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v5/bat-dg2-9/igt@i915_selftest@l...@hangcheck.html

  * igt@i915_selftest@live@reset:
- bat-rpls-2: [PASS][9] -> [ABORT][10] ([i915#4983] / [i915#7461] / 
[i915#7913] / [i915#7981] / [i915#8347])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13292/bat-rpls-2/igt@i915_selftest@l...@reset.html
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v5/bat-rpls-2/igt@i915_selftest@l...@reset.html

  * igt@i915_suspend@basic-s3-without-i915:
- bat-jsl-3:  [PASS][11] -> [FAIL][12] ([fdo#103375])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13292/bat-jsl-3/igt@i915_susp...@basic-s3-without-i915.html
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v5/bat-jsl-3/igt@i915_susp...@basic-s3-without-i915.html

  
 Possible fixes 

  * igt@i915_selftest@live@gt_heartbeat:
- fi-glk-j4005:   [DMESG-FAIL][13] ([i915#5334]) -> [PASS][14]
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13292/fi-glk-j4005/igt@i915_selftest@live@gt_heartbeat.html
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v5/fi-glk-j4005/igt@i915_selftest@live@gt_heartbeat.html

  * igt@i915_selftest@live@migrate:
- bat-atsm-1: [DMESG-FAIL][15] ([i915#7699] / [i915#7913]) -> 
[PASS][16]
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13292/bat-atsm-1/igt@i915_selftest@l...@migrate.html
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v5/bat-atsm-1/igt@i915_selftest@l...@migrate.html

  * igt@i915_selftest@live@workarounds:
- bat-mtlp-6: [DMESG-FAIL][17] ([i915#6763]) -> [PASS][18]
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13292/bat-mtlp-6/igt@i915_selftest@l...@workarounds.html
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v5/bat-mtlp-6/igt@i915_selftest@l...@workarounds.html

  
 Warnings 

  * igt@i915_module_load@load:
- bat-adlp-11:[ABORT][19] ([i915#4423]) -> [DMESG-WARN][20] 
([i915#4423])
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13292/bat-adlp-11/igt@i915_module_l...@load.html
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_107277v5/bat-adlp-11/igt@i915_module_l...@load.html

  * igt@i915_selftest@live@reset:
- bat-rpls-1: [ABORT][21] ([i915#4983] / [i915#7461] / [i915#8347] 
/ [i915#8384]) -> [ABORT][22] ([i915#4983] / [i915#7461] / [i915#7981] / 
[i915#8347] / 

Re: [Intel-gfx] [PATCH] drm/i915/display/dp: Add fallback on LT failure for DP2.0

2023-06-20 Thread Jani Nikula
On Tue, 20 Jun 2023, Arun R Murthy  wrote:
> For DP2.0 as per the Spec on LT failure we need to reduce the lane count
> if the lane count is not equal to 1. If lane count is 1 then need to
> retry with reducing the link rate.
>
> Signed-off-by: Arun R Murthy 
> ---
>  drivers/gpu/drm/i915/display/intel_dp.c | 20 ++--
>  1 file changed, 18 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c 
> b/drivers/gpu/drm/i915/display/intel_dp.c
> index 54ddc953e5bc..2b12ca45596d 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -657,8 +657,20 @@ int intel_dp_get_link_train_fallback_values(struct 
> intel_dp *intel_dp,
>   "Retrying Link training for eDP with same 
> parameters\n");
>   return 0;
>   }
> - intel_dp->max_link_rate = intel_dp_common_rate(intel_dp, index 
> - 1);
> - intel_dp->max_link_lane_count = lane_count;
> + if (intel_dp->dpcd[DP_MAIN_LINK_CHANNEL_CODING] & 
> DP_CAP_ANSI_128B132B) {

This doesn't mean we're actually using UHBR. And we don't get here for
UHBR because it's always mst. And this doesn't handle mst (it
should). There are a lot of gaps here.

The whole thing has been discussed before, and my previous idea was that
we'd generate a list of {link rate, link lane count} pairs up front, in
the correct order, and just have one an index to that list for the
fallback. Because the logic here is complicated to follow.

Eventually we'd need to be able to switch between UHBR and non-UHBR in
the fallback too, which we aren't capable of doing at the moment.


BR,
Jani.


> + if (lane_count > 1) {
> + /* Reduce the lane count */
> + intel_dp->max_link_lane_count = lane_count >> 1;
> + intel_dp->max_link_rate = 
> intel_dp_common_rate(intel_dp, index);
> + } else {
> + /* Reduce the link rate */
> + intel_dp->max_link_rate = 
> intel_dp_common_rate(intel_dp, index - 1);
> + intel_dp->max_link_lane_count = 
> intel_dp_max_common_lane_count(intel_dp);
> + }
> + } else {
> + intel_dp->max_link_rate = 
> intel_dp_common_rate(intel_dp, index - 1);
> + intel_dp->max_link_lane_count = lane_count;
> + }
>   } else if (lane_count > 1) {
>   if (intel_dp_is_edp(intel_dp) &&
>   !intel_dp_can_link_train_fallback_for_edp(intel_dp,
> @@ -675,6 +687,10 @@ int intel_dp_get_link_train_fallback_values(struct 
> intel_dp *intel_dp,
>   return -1;
>   }
>  
> + drm_dbg_kms(>drm,
> + "Retrying Link training with link rate %d and lane count 
> %d\n",
> + intel_dp->max_link_rate, intel_dp->max_link_lane_count);
> +
>   return 0;
>  }

-- 
Jani Nikula, Intel Open Source Graphics Center


Re: [Intel-gfx] [PATCH v2] drm/i915: Replace kmap() with kmap_local_page()

2023-06-20 Thread Ira Weiny
Sumitra Sharma wrote:
> On Sun, Jun 18, 2023 at 11:11:08AM -0700, Ira Weiny wrote:
> > Sumitra Sharma wrote:
> > > kmap() has been deprecated in favor of the kmap_local_page()
> > > due to high cost, restricted mapping space, the overhead of a
> > > global lock for synchronization, and making the process sleep
> > > in the absence of free slots.
> > > 
> > > kmap_local_page() is faster than kmap() and offers thread-local
> > > and CPU-local mappings, take pagefaults in a local kmap region
> > > and preserves preemption by saving the mappings of outgoing tasks
> > > and restoring those of the incoming one during a context switch.
> > > 
> > > The mapping is kept thread local in the function
> > > “i915_vma_coredump_create” in i915_gpu_error.c
> > > 
> > > Therefore, replace kmap() with kmap_local_page().
> > > 
> > > Suggested-by: Ira Weiny 
> > > 
> > 
> > NIT: No need for the line break between Suggested-by and your signed off 
> > line.
> > 
> 
> Hi Ira,
> 
> What does NIT stand for? 

Shorthand for 'nitpicking'.

"giving too much attention to details that are not important, especially
as a way of criticizing: "

- https://dictionary.cambridge.org/dictionary/english/nitpicking

Via email this is a way for authors of an email to indicate something is
technically wrong but while nicely acknowledging that it is not very
significant and could be seen as overly critical.

For this particular comment I'm showing something to pay attention to next
time but that was not a big deal this time around.

> 
> Thank you. I will take care about the line breaks.
> 
> > > Signed-off-by: Sumitra Sharma 
> > > ---
> > > 
> > > Changes in v2:
> > >   - Replace kmap() with kmap_local_page().
> > 
> > Generally it is customary to attribute a change like this to those who
> > suggested it in a V1 review.
> > 
> > For example:
> > 
> > - Tvrtko/Thomas: Use kmap_local_page() instead of page_address()
> > 
> > Also I don't see Thomas on the new email list.  Since he took the time to
> > review V1 he might want to check this version out.  I've added him to the
> > 'To:' list.
> > 
> > Also a link to V1 is nice.  B4 formats it like this:
> > 
> > - Link to v1: 
> > https://lore.kernel.org/all/20230614123556.ga381...@sumitra.com/
> > 
> > All that said the code looks good to me.  So with the above changes.
> > 
> > Reviewed-by: Ira Weiny 
> > 
> 
> I have noted down the points mentioned above. Thank you again.
> 
> I am not supposed to create another version of this patch for 
> adding the above mentions, as you and Thomas both gave this patch 
> a reviewed-by tag. Right?
> 

Based on this response[*] from Tvrtko I think this version can move
through without a v3.

Thanks!
Ira

[*] 
https://lore.kernel.org/all/bcb0a1d2-cd4d-a56f-1ee6-7ccfdd2f7...@linux.intel.com/


Thanks all! I'll just re-send the patch for our CI, since it didn't get
picked up automatically (stuck in moderation perhaps), with all r-b tags
added and extra line space removed and merge it if results will be green.

Regards,

Tvrtko



> 
> Thanks & regards
> Sumitra
> 
> PS: I am new to the open source vocabulary terms.
> 
> > >   - Change commit subject and message.
> > > 
> > >  drivers/gpu/drm/i915/i915_gpu_error.c | 4 ++--
> > >  1 file changed, 2 insertions(+), 2 deletions(-)
> > > 
> > > diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c 
> > > b/drivers/gpu/drm/i915/i915_gpu_error.c
> > > index f020c0086fbc..bc41500eedf5 100644
> > > --- a/drivers/gpu/drm/i915/i915_gpu_error.c
> > > +++ b/drivers/gpu/drm/i915/i915_gpu_error.c
> > > @@ -1164,9 +1164,9 @@ i915_vma_coredump_create(const struct intel_gt *gt,
> > >  
> > >   drm_clflush_pages(, 1);
> > >  
> > > - s = kmap(page);
> > > + s = kmap_local_page(page);
> > >   ret = compress_page(compress, s, dst, false);
> > > - kunmap(page);
> > > + kunmap_local(s);
> > >  
> > >   drm_clflush_pages(, 1);
> > >  
> > > -- 
> > > 2.25.1
> > > 
> > 
> > 




[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/display/dp: Add fallback on LT failure for DP2.0

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/display/dp: Add fallback on LT failure for DP2.0
URL   : https://patchwork.freedesktop.org/series/119567/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13290_full -> Patchwork_119567v1_full


Summary
---

  **SUCCESS**

  No regressions found.

  

Participating hosts (7 -> 8)
--

  Additional (1): shard-rkl0 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@gem_close_race@multigpu-basic-threads:
- shard-tglu: NOTRUN -> [SKIP][1] ([i915#7697])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/shard-tglu-6/igt@gem_close_r...@multigpu-basic-threads.html

  * igt@gem_ctx_sseu@invalid-sseu:
- shard-tglu: NOTRUN -> [SKIP][2] ([i915#280])
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/shard-tglu-6/igt@gem_ctx_s...@invalid-sseu.html

  * igt@gem_exec_fair@basic-none-solo@rcs0:
- shard-tglu: NOTRUN -> [FAIL][3] ([i915#2842])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/shard-tglu-6/igt@gem_exec_fair@basic-none-s...@rcs0.html

  * igt@gem_exec_fair@basic-none@vecs0:
- shard-rkl:  [PASS][4] -> [FAIL][5] ([i915#2842])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/shard-rkl-1/igt@gem_exec_fair@basic-n...@vecs0.html
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/shard-rkl-6/igt@gem_exec_fair@basic-n...@vecs0.html

  * igt@gem_exec_whisper@basic-fds-forked-all:
- shard-tglu: [PASS][6] -> [INCOMPLETE][7] ([i915#6755] / 
[i915#7392] / [i915#7663])
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/shard-tglu-5/igt@gem_exec_whis...@basic-fds-forked-all.html
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/shard-tglu-10/igt@gem_exec_whis...@basic-fds-forked-all.html

  * igt@gem_lmem_swapping@random-engines:
- shard-tglu: NOTRUN -> [SKIP][8] ([i915#4613])
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/shard-tglu-6/igt@gem_lmem_swapp...@random-engines.html

  * igt@gem_mmap_gtt@coherency:
- shard-tglu: NOTRUN -> [SKIP][9] ([fdo#111656])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/shard-tglu-6/igt@gem_mmap_...@coherency.html

  * igt@gem_pxp@reject-modify-context-protection-off-1:
- shard-tglu: NOTRUN -> [SKIP][10] ([i915#4270])
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/shard-tglu-6/igt@gem_...@reject-modify-context-protection-off-1.html

  * igt@gen7_exec_parse@chained-batch:
- shard-tglu: NOTRUN -> [SKIP][11] ([fdo#109289])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/shard-tglu-6/igt@gen7_exec_pa...@chained-batch.html

  * igt@i915_pm_rc6_residency@rc6-fence:
- shard-tglu: NOTRUN -> [WARN][12] ([i915#2681])
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/shard-tglu-6/igt@i915_pm_rc6_reside...@rc6-fence.html

  * igt@i915_pm_rpm@dpms-mode-unset-non-lpsp:
- shard-rkl:  [PASS][13] -> [SKIP][14] ([i915#1397])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/shard-rkl-2/igt@i915_pm_...@dpms-mode-unset-non-lpsp.html
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/shard-rkl-7/igt@i915_pm_...@dpms-mode-unset-non-lpsp.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip:
- shard-tglu: NOTRUN -> [SKIP][15] ([fdo#111615] / [i915#5286])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/shard-tglu-6/igt@kms_big...@4-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip.html

  * igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0-async-flip:
- shard-tglu: NOTRUN -> [SKIP][16] ([fdo#111615])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/shard-tglu-6/igt@kms_big...@yf-tiled-max-hw-stride-32bpp-rotate-0-async-flip.html

  * igt@kms_ccs@pipe-a-bad-rotation-90-y_tiled_gen12_mc_ccs:
- shard-tglu: NOTRUN -> [SKIP][17] ([i915#3689] / [i915#3886] / 
[i915#5354] / [i915#6095])
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/shard-tglu-6/igt@kms_ccs@pipe-a-bad-rotation-90-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-a-crc-sprite-planes-basic-yf_tiled_ccs:
- shard-tglu: NOTRUN -> [SKIP][18] ([fdo#111615] / [i915#3689] / 
[i915#5354] / [i915#6095])
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/shard-tglu-6/igt@kms_ccs@pipe-a-crc-sprite-planes-basic-yf_tiled_ccs.html

  * igt@kms_ccs@pipe-c-ccs-on-another-bo-y_tiled_ccs:
- shard-tglu: NOTRUN -> [SKIP][19] ([i915#3689] / [i915#5354] / 
[i915#6095]) +2 similar issues
   [19]: 

[Intel-gfx] [PATCH] drm/i915: Unbind display fb immediately

2023-06-20 Thread Maarten Lankhorst
Share the pain with xe to test if it hits the same bugs..

Signed-off-by: Maarten Lankhorst 
---
 drivers/gpu/drm/i915/display/intel_fb_pin.c | 5 +
 1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/i915/display/intel_fb_pin.c 
b/drivers/gpu/drm/i915/display/intel_fb_pin.c
index fffd568070d41..d89f3d243c7be 100644
--- a/drivers/gpu/drm/i915/display/intel_fb_pin.c
+++ b/drivers/gpu/drm/i915/display/intel_fb_pin.c
@@ -232,6 +232,11 @@ void intel_unpin_fb_vma(struct i915_vma *vma, unsigned 
long flags)
if (flags & PLANE_HAS_FENCE)
i915_vma_unpin_fence(vma);
i915_vma_unpin(vma);
+   if (!i915_vma_is_pinned(vma)) {
+   int err = i915_vma_unbind(vma);
+   if (err)
+   drm_info(vma->obj->base.dev, "Unpin failed with %i", 
err);
+   }
i915_vma_put(vma);
 }
 
-- 
2.39.2



Re: [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915/adlp+: Allow DC states along with PW2 only for PWB functionality

2023-06-20 Thread Imre Deak
On Tue, Jun 06, 2023 at 09:55:53PM +, Patchwork wrote:
> == Series Details ==
> 
> Series: drm/i915/adlp+: Allow DC states along with PW2 only for PWB 
> functionality
> URL   : https://patchwork.freedesktop.org/series/118951/
> State : failure

Thanks for the review, pushed the patch to drm-intel-next also adding
the missing Fixes/Tested-by tags.

The failure is unrelated, see below.

> == Summary ==
> 
> CI Bug Log - changes from CI_DRM_13238 -> Patchwork_118951v1
> 
> 
> Summary
> ---
> 
>   **FAILURE**
> 
>   Serious unknown changes coming with Patchwork_118951v1 absolutely need to be
>   verified manually.
>   
>   If you think the reported changes have nothing to do with the changes
>   introduced in Patchwork_118951v1, 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_118951v1/index.html
> 
> Participating hosts (41 -> 39)
> --
> 
>   Missing(2): bat-rpls-2 fi-snb-2520m 
> 
> Possible new issues
> ---
> 
>   Here are the unknown changes that may have been introduced in 
> Patchwork_118951v1:
> 
> ### IGT changes ###
> 
>  Possible regressions 
> 
>   * igt@i915_selftest@live@hangcheck:
> - fi-skl-guc: [PASS][1] -> [DMESG-FAIL][2]
>[1]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13238/fi-skl-guc/igt@i915_selftest@l...@hangcheck.html
>[2]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_118951v1/fi-skl-guc/igt@i915_selftest@l...@hangcheck.html

SKL's power well mapping is different than what the patch changes.

> 
>   * igt@kms_pipe_crc_basic@read-crc-frame-sequence:
> - bat-dg2-11: NOTRUN -> [INCOMPLETE][3]
>[3]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_118951v1/bat-dg2-11/igt@kms_pipe_crc_ba...@read-crc-frame-sequence.html

(kms_pipe_crc_basic:5629) igt_kms-CRITICAL: At least one pipe/output combo 
needed.

This is due to the known behavior of the LG monitor disconnecting itself
just before the test starts, reconnecting after a 1 sec delay:

<7>[  254.244962] i915 :03:00.0: [drm:intel_encoder_hotplug [i915]] 
[CONNECTOR:255:HDMI-A-3] status updated from disconnected to connected (epoch 
counter 2->3)
...
<7>[  263.208101] i915 :03:00.0: [drm:intel_get_hpd_pins [i915]] hotplug 
event received, stat 0x0002, dig 0x88a8, pins 0x0020, long 
0x0020
...
<7>[  263.214564] i915 :03:00.0: [drm:intel_encoder_hotplug [i915]] 
[CONNECTOR:255:HDMI-A-3] status updated from connected to disconnected (epoch 
counter 3->4)
...
<7>[  263.215505] [IGT] kms_pipe_crc_basic: starting subtest 
read-crc-frame-sequence
...
<7>[  264.237679] i915 :03:00.0: [drm:intel_get_hpd_pins [i915]] hotplug 
event received, stat 0x0002, dig 0x88a8, pins 0x0020, long 
0x0020
...
<7>[  264.268216] i915 :03:00.0: [drm:intel_encoder_hotplug [i915]] 
[CONNECTOR:255:HDMI-A-3] status updated from disconnected to connected (epoch 
counter 5->6)

This ADLP host seems to have a configuration issue for the first two TC
ports as well, as they indicate a native DP/HDMI sink being connected,
while VBT configures them in DP-alt/TBT mode (probably a wrong BIOS or
BIOS setup issue):

<7>[  129.813837] i915 :00:02.0: [drm:intel_bios_init [i915]] Port D VBT 
info: CRT:0 DVI:0 HDMI:0 DP:1 eDP:0 DSI:0 DP++:0 LSPCON:0 USB-Type-C:1 TBT:1 
DSC:0
<7>[  129.814193] i915 :00:02.0: [drm:intel_bios_init [i915]] Port E VBT 
info: CRT:0 DVI:0 HDMI:0 DP:1 eDP:0 DSI:0 DP++:0 LSPCON:0 USB-Type-C:1 TBT:1 
DSC:0
<7>[  129.814549] i915 :00:02.0: [drm:intel_bios_init [i915]] Port F VBT 
info: CRT:0 DVI:0 HDMI:0 DP:1 eDP:0 DSI:0 DP++:0 LSPCON:0 USB-Type-C:1 TBT:1 
DSC:0
<7>[  129.814880] i915 :00:02.0: [drm:intel_bios_init [i915]] Port G VBT 
info: CRT:0 DVI:0 HDMI:0 DP:1 eDP:0 DSI:0 DP++:0 LSPCON:0 USB-Type-C:1 TBT:1 
DSC:0
...
<7>[  130.849579] i915 :00:02.0: [drm:intel_tc_port_update_mode [i915]] 
Port D/TC#1: live status 0008 mismatches the legacy port flag 0006, 
fixing flag
<7>[  130.901821] i915 :00:02.0: [drm:intel_tc_port_update_mode [i915]] 
Port E/TC#2: live status 0008 mismatches the legacy port flag 0006, 
fixing flag

> Known issues
> 
> 
>   Here are the changes found in Patchwork_118951v1 that come from known 
> issues:
> 
> ### IGT changes ###
> 
>  Issues hit 
> 
>   * igt@i915_selftest@live@hangcheck:
> - bat-rpls-1: [PASS][4] -> [ABORT][5] ([i915#7677])
>[4]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13238/bat-rpls-1/igt@i915_selftest@l...@hangcheck.html
>[5]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_118951v1/bat-rpls-1/igt@i915_selftest@l...@hangcheck.html
> 
>   * igt@kms_chamelium_hpd@common-hpd-after-suspend:
> - bat-dg2-11: NOTRUN -> [SKIP][6] ([i915#7828])
>[6]: 

Re: [Intel-gfx] [PATCH] drm/i915/display/dp: Add fallback on LT failure for DP2.0

2023-06-20 Thread Murthy, Arun R
> -Original Message-
> From: Kandpal, Suraj 
> Sent: Tuesday, June 20, 2023 4:35 PM
> To: Murthy, Arun R ; intel-
> g...@lists.freedesktop.org
> Subject: RE: [Intel-gfx] [PATCH] drm/i915/display/dp: Add fallback on LT
> failure for DP2.0
> 
> > For DP2.0 as per the Spec on LT failure we need to reduce the lane
> > count if the lane count is not equal to 1. If lane count is 1 then
> > need to retry with reducing the link rate.
> 
> Maybe adding the section where one can refer this in DP 2.0 spec can help.
> 
Ok Sure!

> >
> > Signed-off-by: Arun R Murthy 
> > ---
> >  drivers/gpu/drm/i915/display/intel_dp.c | 20 ++--
> >  1 file changed, 18 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/display/intel_dp.c
> > b/drivers/gpu/drm/i915/display/intel_dp.c
> > index 54ddc953e5bc..2b12ca45596d 100644
> > --- a/drivers/gpu/drm/i915/display/intel_dp.c
> > +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> > @@ -657,8 +657,20 @@ int
> > intel_dp_get_link_train_fallback_values(struct
> > intel_dp *intel_dp,
> > "Retrying Link training for eDP with same
> parameters\n");
> > return 0;
> > }
> > -   intel_dp->max_link_rate = intel_dp_common_rate(intel_dp,
> > index - 1);
> > -   intel_dp->max_link_lane_count = lane_count;
> 
> NIT: Can we add a small comment here on what is being done.
> 
Comments are added below as to what each if condition is doing or is it 
something different that you are referring to?

> > +   if (intel_dp->dpcd[DP_MAIN_LINK_CHANNEL_CODING] &
> > DP_CAP_ANSI_128B132B) {
> > +   if (lane_count > 1) {
> > +   /* Reduce the lane count */
> > +   intel_dp->max_link_lane_count = lane_count
> > >> 1;
> > +   intel_dp->max_link_rate =
> > intel_dp_common_rate(intel_dp, index);
> > +   } else {
> > +   /* Reduce the link rate */
> > +   intel_dp->max_link_rate =
> > intel_dp_common_rate(intel_dp, index - 1);
> > +   intel_dp->max_link_lane_count =
> > intel_dp_max_common_lane_count(intel_dp);
> > +   }
> > +   } else {
> > +   intel_dp->max_link_rate =
> > intel_dp_common_rate(intel_dp, index - 1);
> > +   intel_dp->max_link_lane_count = lane_count;
> > +   }
> 
> Also I see a little issue here so previously what used to happen was we
> reduced the Link rate first and once we were at the lowest only then proceed
> to reduce the lane count so has this been reversed in DP2.0 spec.
> 
Yes here we reduce the lane count until 1 and then reduce the link rate.
Ref: Table 3-31 of DP2.1 Spec

Thanks and Regards,
Arun R Murthy

> Regards,
> Suraj Kandpal
> 
> > } else if (lane_count > 1) {
> > if (intel_dp_is_edp(intel_dp) &&
> > !intel_dp_can_link_train_fallback_for_edp(intel_dp,
> > @@ -675,6 +687,10 @@ int
> > intel_dp_get_link_train_fallback_values(struct
> > intel_dp *intel_dp,
> > return -1;
> > }
> >
> > +   drm_dbg_kms(>drm,
> > +   "Retrying Link training with link rate %d and lane count
> > %d\n",
> > +   intel_dp->max_link_rate, intel_dp->max_link_lane_count);
> > +
> > return 0;
> >  }
> >
> > --
> > 2.25.1



[Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915/display/dp: On AUX xfer timeout restart freshly (rev6)

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/display/dp: On AUX xfer timeout restart freshly (rev6)
URL   : https://patchwork.freedesktop.org/series/119055/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_13290_full -> Patchwork_119055v6_full


Summary
---

  **FAILURE**

  Serious unknown changes coming with Patchwork_119055v6_full absolutely need 
to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_119055v6_full, please notify your bug team to allow 
them
  to document this new failure mode, which will reduce false positives in CI.

  

Participating hosts (7 -> 7)
--

  No changes in participating hosts

Possible new issues
---

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

### IGT changes ###

 Possible regressions 

  * igt@kms_cursor_edge_walk@256x256-left-edge:
- shard-snb:  NOTRUN -> [INCOMPLETE][1]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/shard-snb1/igt@kms_cursor_edge_w...@256x256-left-edge.html

  
Known issues


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

### IGT changes ###

 Issues hit 

  * igt@gem_close_race@multigpu-basic-threads:
- shard-tglu: NOTRUN -> [SKIP][2] ([i915#7697])
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/shard-tglu-2/igt@gem_close_r...@multigpu-basic-threads.html

  * igt@gem_ctx_sseu@invalid-sseu:
- shard-tglu: NOTRUN -> [SKIP][3] ([i915#280])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/shard-tglu-2/igt@gem_ctx_s...@invalid-sseu.html

  * igt@gem_eio@hibernate:
- shard-tglu: [PASS][4] -> [ABORT][5] ([i915#7975] / [i915#8213] / 
[i915#8398])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/shard-tglu-3/igt@gem_...@hibernate.html
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/shard-tglu-10/igt@gem_...@hibernate.html

  * igt@gem_exec_fair@basic-none-solo@rcs0:
- shard-tglu: NOTRUN -> [FAIL][6] ([i915#2842])
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/shard-tglu-2/igt@gem_exec_fair@basic-none-s...@rcs0.html

  * igt@gem_exec_fair@basic-none@bcs0:
- shard-rkl:  [PASS][7] -> [FAIL][8] ([i915#2842]) +2 similar issues
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/shard-rkl-1/igt@gem_exec_fair@basic-n...@bcs0.html
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/shard-rkl-1/igt@gem_exec_fair@basic-n...@bcs0.html

  * igt@gem_lmem_swapping@random-engines:
- shard-tglu: NOTRUN -> [SKIP][9] ([i915#4613])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/shard-tglu-2/igt@gem_lmem_swapp...@random-engines.html

  * igt@gem_mmap_gtt@coherency:
- shard-tglu: NOTRUN -> [SKIP][10] ([fdo#111656])
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/shard-tglu-2/igt@gem_mmap_...@coherency.html

  * igt@gem_pxp@reject-modify-context-protection-off-1:
- shard-tglu: NOTRUN -> [SKIP][11] ([i915#4270])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/shard-tglu-2/igt@gem_...@reject-modify-context-protection-off-1.html

  * igt@gen7_exec_parse@chained-batch:
- shard-tglu: NOTRUN -> [SKIP][12] ([fdo#109289])
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/shard-tglu-2/igt@gen7_exec_pa...@chained-batch.html

  * igt@gen9_exec_parse@allowed-single:
- shard-apl:  [PASS][13] -> [ABORT][14] ([i915#5566])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/shard-apl3/igt@gen9_exec_pa...@allowed-single.html
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/shard-apl7/igt@gen9_exec_pa...@allowed-single.html

  * igt@i915_pm_rc6_residency@rc6-fence:
- shard-tglu: NOTRUN -> [WARN][15] ([i915#2681])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/shard-tglu-2/igt@i915_pm_rc6_reside...@rc6-fence.html

  * igt@i915_pm_rpm@dpms-mode-unset-non-lpsp:
- shard-rkl:  [PASS][16] -> [SKIP][17] ([i915#1397])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/shard-rkl-2/igt@i915_pm_...@dpms-mode-unset-non-lpsp.html
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/shard-rkl-7/igt@i915_pm_...@dpms-mode-unset-non-lpsp.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip:
- shard-tglu: NOTRUN -> [SKIP][18] ([fdo#111615] / [i915#5286])
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/shard-tglu-2/igt@kms_big...@4-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip.html

  * igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-async-flip:
- shard-rkl:  [PASS][19] 

[Intel-gfx] [PATCH] drm/i915/psr: Use hw.adjusted mode when calculating io/fast wake times

2023-06-20 Thread Jouni Högander
Encoder compute config is changing hw.adjusted mode. Uapi.adjusted mode
doesn't get updated before psr compute config gets called. This causes io
and fast wake line calculation using adjusted mode containing values before
encoder adjustments. Fix this by using hw.adjusted mode instead of
uapi.adjusted mode.

Cc: Stanislav Lisovskiy 

Signed-off-by: Jouni Högander 
Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/8475
Fixes: cb42e8ede5b4 ("drm/i915/psr: Use calculated io and fast wake lines")
---
 drivers/gpu/drm/i915/display/intel_psr.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_psr.c 
b/drivers/gpu/drm/i915/display/intel_psr.c
index df517c395da7..04ab034a8d57 100644
--- a/drivers/gpu/drm/i915/display/intel_psr.c
+++ b/drivers/gpu/drm/i915/display/intel_psr.c
@@ -1044,9 +1044,9 @@ static bool _compute_psr2_wake_times(struct intel_dp 
*intel_dp,
}
 
io_wake_lines = intel_usecs_to_scanlines(
-   _state->uapi.adjusted_mode, io_wake_time);
+   _state->hw.adjusted_mode, io_wake_time);
fast_wake_lines = intel_usecs_to_scanlines(
-   _state->uapi.adjusted_mode, fast_wake_time);
+   _state->hw.adjusted_mode, fast_wake_time);
 
if (io_wake_lines > max_wake_lines ||
fast_wake_lines > max_wake_lines)
-- 
2.34.1



Re: [Intel-gfx] [PATCH] drm/i915/display/dp: Add fallback on LT failure for DP2.0

2023-06-20 Thread Kandpal, Suraj
> For DP2.0 as per the Spec on LT failure we need to reduce the lane count if
> the lane count is not equal to 1. If lane count is 1 then need to retry with
> reducing the link rate.

Maybe adding the section where one can refer this in DP 2.0 spec can help.

> 
> Signed-off-by: Arun R Murthy 
> ---
>  drivers/gpu/drm/i915/display/intel_dp.c | 20 ++--
>  1 file changed, 18 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c
> b/drivers/gpu/drm/i915/display/intel_dp.c
> index 54ddc953e5bc..2b12ca45596d 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -657,8 +657,20 @@ int intel_dp_get_link_train_fallback_values(struct
> intel_dp *intel_dp,
>   "Retrying Link training for eDP with same
> parameters\n");
>   return 0;
>   }
> - intel_dp->max_link_rate = intel_dp_common_rate(intel_dp,
> index - 1);
> - intel_dp->max_link_lane_count = lane_count;

NIT: Can we add a small comment here on what is being done.

> + if (intel_dp->dpcd[DP_MAIN_LINK_CHANNEL_CODING] &
> DP_CAP_ANSI_128B132B) {
> + if (lane_count > 1) {
> + /* Reduce the lane count */
> + intel_dp->max_link_lane_count = lane_count
> >> 1;
> + intel_dp->max_link_rate =
> intel_dp_common_rate(intel_dp, index);
> + } else {
> + /* Reduce the link rate */
> + intel_dp->max_link_rate =
> intel_dp_common_rate(intel_dp, index - 1);
> + intel_dp->max_link_lane_count =
> intel_dp_max_common_lane_count(intel_dp);
> + }
> + } else {
> + intel_dp->max_link_rate =
> intel_dp_common_rate(intel_dp, index - 1);
> + intel_dp->max_link_lane_count = lane_count;
> + }

Also I see a little issue here so previously what used to happen was we reduced 
the
Link rate first and once we were at the lowest only then proceed to reduce the 
lane count
so has this been reversed in DP2.0 spec.

Regards,
Suraj Kandpal

>   } else if (lane_count > 1) {
>   if (intel_dp_is_edp(intel_dp) &&
>   !intel_dp_can_link_train_fallback_for_edp(intel_dp,
> @@ -675,6 +687,10 @@ int intel_dp_get_link_train_fallback_values(struct
> intel_dp *intel_dp,
>   return -1;
>   }
> 
> + drm_dbg_kms(>drm,
> + "Retrying Link training with link rate %d and lane count
> %d\n",
> + intel_dp->max_link_rate, intel_dp->max_link_lane_count);
> +
>   return 0;
>  }
> 
> --
> 2.25.1



[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/display/dp: Remove support for UHBR13.5

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/display/dp: Remove support for UHBR13.5
URL   : https://patchwork.freedesktop.org/series/119555/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13290_full -> Patchwork_119555v1_full


Summary
---

  **SUCCESS**

  No regressions found.

  

Participating hosts (7 -> 8)
--

  Additional (1): shard-rkl0 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@drm_fdinfo@most-busy-check-all@rcs0:
- shard-rkl:  [PASS][1] -> [FAIL][2] ([i915#7742])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/shard-rkl-7/igt@drm_fdinfo@most-busy-check-...@rcs0.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119555v1/shard-rkl-1/igt@drm_fdinfo@most-busy-check-...@rcs0.html

  * igt@gem_close_race@multigpu-basic-threads:
- shard-tglu: NOTRUN -> [SKIP][3] ([i915#7697])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119555v1/shard-tglu-7/igt@gem_close_r...@multigpu-basic-threads.html

  * igt@gem_ctx_sseu@invalid-sseu:
- shard-tglu: NOTRUN -> [SKIP][4] ([i915#280])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119555v1/shard-tglu-7/igt@gem_ctx_s...@invalid-sseu.html

  * igt@gem_exec_fair@basic-none-solo@rcs0:
- shard-apl:  [PASS][5] -> [FAIL][6] ([i915#2842])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/shard-apl2/igt@gem_exec_fair@basic-none-s...@rcs0.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119555v1/shard-apl3/igt@gem_exec_fair@basic-none-s...@rcs0.html
- shard-tglu: NOTRUN -> [FAIL][7] ([i915#2842])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119555v1/shard-tglu-7/igt@gem_exec_fair@basic-none-s...@rcs0.html

  * igt@gem_exec_fair@basic-pace-share@rcs0:
- shard-glk:  [PASS][8] -> [FAIL][9] ([i915#2842])
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/shard-glk3/igt@gem_exec_fair@basic-pace-sh...@rcs0.html
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119555v1/shard-glk1/igt@gem_exec_fair@basic-pace-sh...@rcs0.html

  * igt@gem_lmem_swapping@random-engines:
- shard-tglu: NOTRUN -> [SKIP][10] ([i915#4613])
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119555v1/shard-tglu-7/igt@gem_lmem_swapp...@random-engines.html

  * igt@gem_mmap_gtt@coherency:
- shard-tglu: NOTRUN -> [SKIP][11] ([fdo#111656])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119555v1/shard-tglu-7/igt@gem_mmap_...@coherency.html

  * igt@gem_pxp@reject-modify-context-protection-off-1:
- shard-tglu: NOTRUN -> [SKIP][12] ([i915#4270])
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119555v1/shard-tglu-7/igt@gem_...@reject-modify-context-protection-off-1.html

  * igt@gen7_exec_parse@chained-batch:
- shard-tglu: NOTRUN -> [SKIP][13] ([fdo#109289])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119555v1/shard-tglu-7/igt@gen7_exec_pa...@chained-batch.html

  * igt@gen9_exec_parse@allowed-single:
- shard-apl:  [PASS][14] -> [ABORT][15] ([i915#5566])
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/shard-apl3/igt@gen9_exec_pa...@allowed-single.html
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119555v1/shard-apl2/igt@gen9_exec_pa...@allowed-single.html

  * igt@i915_pm_rc6_residency@rc6-fence:
- shard-tglu: NOTRUN -> [WARN][16] ([i915#2681])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119555v1/shard-tglu-7/igt@i915_pm_rc6_reside...@rc6-fence.html

  * igt@i915_pm_rpm@dpms-mode-unset-lpsp:
- shard-rkl:  [PASS][17] -> [SKIP][18] ([i915#1397]) +4 similar 
issues
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/shard-rkl-7/igt@i915_pm_...@dpms-mode-unset-lpsp.html
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119555v1/shard-rkl-4/igt@i915_pm_...@dpms-mode-unset-lpsp.html

  * igt@i915_selftest@live@gt_heartbeat:
- shard-apl:  [PASS][19] -> [DMESG-FAIL][20] ([i915#5334])
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/shard-apl1/igt@i915_selftest@live@gt_heartbeat.html
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119555v1/shard-apl2/igt@i915_selftest@live@gt_heartbeat.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip:
- shard-tglu: NOTRUN -> [SKIP][21] ([fdo#111615] / [i915#5286])
   [21]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119555v1/shard-tglu-7/igt@kms_big...@4-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip.html

  * igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0-async-flip:
- shard-tglu: NOTRUN -> [SKIP][22] ([fdo#111615])
   [22]: 

Re: [Intel-gfx] [PATCH] drm/i915/display: pre-initialize some values in probe_gmdid_display()

2023-06-20 Thread Kandpal, Suraj
> When intel_display_device_probe() (and, subsequently,
> probe_gmdid_display()) returns, the caller expects ver, rel and step to be
> initialized.  Since there's no way to check that there was a failure and
> no_display was returned without some further refactoring, pre-initiliaze all
> these values to zero to keep it simple and safe.
> 
> Signed-off-by: Luca Coelho 

Looks okay to me just a small suggestion/question below.

> ---
>  drivers/gpu/drm/i915/display/intel_display_device.c | 9 +
>  1 file changed, 9 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display_device.c
> b/drivers/gpu/drm/i915/display/intel_display_device.c
> index 464df1764a86..fb6354e9e704 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_device.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_device.c
> @@ -731,6 +731,15 @@ probe_gmdid_display(struct drm_i915_private
> *i915, u16 *ver, u16 *rel, u16 *step
>   u32 val;
>   int i;
> 
> + /* The caller expects to ver, rel and step to be initialized
> +  * here, and there's no good way to check when there was a
> +  * failure and no_display was returned.  So initialize all these
> +  * values here zero, to be sure.
> +  */
> + *ver = 0;
> + *rel = 0;
> + *step = 0;
> +

>From what I can see this is only called from intel_display_device_probe() 
>which is in turn
called from intel_device_info_driver_create() where the above variables are 
defined maybe 
we initialize these values there itself.

Regards,
Suraj Kandpal

>   addr = pci_iomap_range(pdev, 0,
> i915_mmio_reg_offset(GMD_ID_DISPLAY), sizeof(u32));
>   if (!addr) {
>   drm_err(>drm, "Cannot map MMIO BAR to read
> display GMD_ID\n");
> --
> 2.39.2



[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/display/dp: Add fallback on LT failure for DP2.0

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/display/dp: Add fallback on LT failure for DP2.0
URL   : https://patchwork.freedesktop.org/series/119567/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13290 -> Patchwork_119567v1


Summary
---

  **SUCCESS**

  No regressions found.

  External URL: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/index.html

Participating hosts (42 -> 41)
--

  Additional (1): fi-kbl-soraka 
  Missing(2): bat-mtlp-8 fi-snb-2520m 

Possible new issues
---

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

### IGT changes ###

 Suppressed 

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * {igt@kms_pipe_crc_basic@compare-crc-sanitycheck-xr24@pipe-d-dp-1}:
- bat-dg2-8:  [PASS][1] -> [FAIL][2]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/bat-dg2-8/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-x...@pipe-d-dp-1.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/bat-dg2-8/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-x...@pipe-d-dp-1.html

  
Known issues


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

### IGT changes ###

 Issues hit 

  * igt@dmabuf@all-tests@dma_fence:
- bat-dg2-11: [PASS][3] -> [DMESG-FAIL][4] ([i915#8189])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/bat-dg2-11/igt@dmabuf@all-tests@dma_fence.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/bat-dg2-11/igt@dmabuf@all-tests@dma_fence.html

  * igt@dmabuf@all-tests@sanitycheck:
- bat-dg2-11: [PASS][5] -> [ABORT][6] ([i915#7699] / [i915#8144])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/bat-dg2-11/igt@dmabuf@all-te...@sanitycheck.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/bat-dg2-11/igt@dmabuf@all-te...@sanitycheck.html

  * igt@gem_huc_copy@huc-copy:
- fi-kbl-soraka:  NOTRUN -> [SKIP][7] ([fdo#109271] / [i915#2190])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/fi-kbl-soraka/igt@gem_huc_c...@huc-copy.html

  * igt@gem_lmem_swapping@basic:
- fi-kbl-soraka:  NOTRUN -> [SKIP][8] ([fdo#109271] / [i915#4613]) +3 
similar issues
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/fi-kbl-soraka/igt@gem_lmem_swapp...@basic.html

  * igt@i915_module_load@reload:
- fi-kbl-soraka:  NOTRUN -> [DMESG-WARN][9] ([i915#1982])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/fi-kbl-soraka/igt@i915_module_l...@reload.html

  * igt@i915_selftest@live@gt_pm:
- fi-kbl-soraka:  NOTRUN -> [DMESG-FAIL][10] ([i915#1886] / [i915#7913])
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/fi-kbl-soraka/igt@i915_selftest@live@gt_pm.html

  * igt@i915_selftest@live@migrate:
- bat-dg2-11: [PASS][11] -> [DMESG-WARN][12] ([i915#7699])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/bat-dg2-11/igt@i915_selftest@l...@migrate.html
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/bat-dg2-11/igt@i915_selftest@l...@migrate.html

  * igt@i915_selftest@live@slpc:
- bat-rpls-2: NOTRUN -> [DMESG-WARN][13] ([i915#6367])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/bat-rpls-2/igt@i915_selftest@l...@slpc.html
- bat-rpls-1: NOTRUN -> [DMESG-WARN][14] ([i915#6367])
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/bat-rpls-1/igt@i915_selftest@l...@slpc.html

  * igt@i915_suspend@basic-s2idle-without-i915:
- bat-rpls-2: NOTRUN -> [ABORT][15] ([i915#6687] / [i915#8668])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/bat-rpls-2/igt@i915_susp...@basic-s2idle-without-i915.html

  * igt@i915_suspend@basic-s3-without-i915:
- bat-rpls-1: NOTRUN -> [ABORT][16] ([i915#6687] / [i915#7978])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/bat-rpls-1/igt@i915_susp...@basic-s3-without-i915.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- fi-kbl-soraka:  NOTRUN -> [SKIP][17] ([fdo#109271]) +14 similar issues
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/fi-kbl-soraka/igt@kms_cursor_leg...@basic-busy-flip-before-cursor-atomic.html

  * igt@kms_setmode@basic-clone-single-crtc:
- fi-kbl-soraka:  NOTRUN -> [SKIP][18] ([fdo#109271] / [i915#4579])
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119567v1/fi-kbl-soraka/igt@kms_setm...@basic-clone-single-crtc.html

  
 Possible fixes 

  * igt@i915_selftest@live@migrate:
- bat-atsm-1: [DMESG-FAIL][19] ([i915#7699] / [i915#7913]) -> 
[PASS][20]
   [19]: 

[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915/display/dp: Add fallback on LT failure for DP2.0

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/display/dp: Add fallback on LT failure for DP2.0
URL   : https://patchwork.freedesktop.org/series/119567/
State : warning

== Summary ==

Error: dim checkpatch failed
ccd7b37665f6 drm/i915/display/dp: Add fallback on LT failure for DP2.0
-:30: WARNING:LONG_LINE: line length of 105 exceeds 100 columns
#30: FILE: drivers/gpu/drm/i915/display/intel_dp.c:668:
+   intel_dp->max_link_lane_count = 
intel_dp_max_common_lane_count(intel_dp);

total: 0 errors, 1 warnings, 0 checks, 32 lines checked




Re: [Intel-gfx] [PATCH 1/6] drm/i915/display: Add support for global histogram

2023-06-20 Thread Murthy, Arun R
> -Original Message-
> From: Jani Nikula 
> Sent: Tuesday, May 23, 2023 3:40 PM
> To: Murthy, Arun R ; intel-
> g...@lists.freedesktop.org
> Subject: Re: [Intel-gfx] [PATCH 1/6] drm/i915/display: Add support for global
> histogram
> 
> On Thu, 18 May 2023, Arun R Murthy  wrote:
> > API are added to enable/disable histogram. Upon generation of
> > histogram interrupt its notified to the usespace. User can then use
> > this histogram and generate a LUT which is then fed back to the
> enahancement block.
> > Histogram is an image statistics based on the input pixel stream.
> > LUT is a look up table consisiting of pixel data.
> 
> Where's the corresponding userspace?
> 
> See Documentation/gpu/drm-uapi.rst under "Open-Source Userspace
> Requirements".
> 
Will be posting info on the user space component very soon.

> > Signed-off-by: Arun R Murthy 
> > ---
> >  drivers/gpu/drm/i915/Makefile |   1 +
> >  .../drm/i915/display/intel_display_types.h|   3 +
> >  .../gpu/drm/i915/display/intel_global_hist.c  | 295
> > ++  .../gpu/drm/i915/display/intel_global_hist.h  |
> > 117 +++
> >  4 files changed, 416 insertions(+)
> >  create mode 100644 drivers/gpu/drm/i915/display/intel_global_hist.c
> >  create mode 100644 drivers/gpu/drm/i915/display/intel_global_hist.h
> >
> > diff --git a/drivers/gpu/drm/i915/Makefile
> > b/drivers/gpu/drm/i915/Makefile index 5ab909ec24e5..eac1e0d7bd30
> > 100644
> > --- a/drivers/gpu/drm/i915/Makefile
> > +++ b/drivers/gpu/drm/i915/Makefile
> > @@ -295,6 +295,7 @@ i915-y += \
> > display/intel_dpll.o \
> > display/intel_dpll_mgr.o \
> > display/intel_dpt.o \
> > +   display/intel_global_hist.o \
> 
> Comment near the top of the Makefile:
> 
> # Please keep these build lists sorted!
> 
> Also, I'm not sure "global hist" is a good name.

The hardware block is named as histogram block and enhancement block. Hence the 
name global histogram. A short form of this global_hist!
Any other inputs on the naming convention?

Thanks and Regards,
Arun R Murthy



[Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915/mtl: Update workaround 14018778641

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/mtl: Update workaround 14018778641
URL   : https://patchwork.freedesktop.org/series/119517/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_13289_full -> Patchwork_119517v1_full


Summary
---

  **FAILURE**

  Serious unknown changes coming with Patchwork_119517v1_full absolutely need 
to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_119517v1_full, please notify your bug team to allow 
them
  to document this new failure mode, which will reduce false positives in CI.

  

Participating hosts (7 -> 7)
--

  No changes in participating hosts

Possible new issues
---

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

### IGT changes ###

 Possible regressions 

  * igt@i915_suspend@fence-restore-tiled2untiled:
- shard-snb:  [PASS][1] -> [INCOMPLETE][2]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13289/shard-snb4/igt@i915_susp...@fence-restore-tiled2untiled.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119517v1/shard-snb1/igt@i915_susp...@fence-restore-tiled2untiled.html

  
New tests
-

  New tests have been introduced between CI_DRM_13289_full and 
Patchwork_119517v1_full:

### New IGT tests (8) ###

  * igt@kms_async_flips@test-cursor@pipe-a-hdmi-a-3:
- Statuses : 1 pass(s)
- Exec time: [0.0] s

  * igt@kms_async_flips@test-cursor@pipe-b-hdmi-a-3:
- Statuses : 1 pass(s)
- Exec time: [0.0] s

  * igt@kms_async_flips@test-cursor@pipe-c-hdmi-a-3:
- Statuses : 1 pass(s)
- Exec time: [0.0] s

  * igt@kms_async_flips@test-cursor@pipe-d-hdmi-a-3:
- Statuses : 1 pass(s)
- Exec time: [0.0] s

  * igt@kms_plane_lowres@tiling-y@pipe-a-hdmi-a-3:
- Statuses : 1 pass(s)
- Exec time: [0.0] s

  * igt@kms_plane_lowres@tiling-y@pipe-b-hdmi-a-3:
- Statuses : 1 pass(s)
- Exec time: [0.0] s

  * igt@kms_plane_lowres@tiling-y@pipe-c-hdmi-a-3:
- Statuses : 1 pass(s)
- Exec time: [0.0] s

  * igt@kms_plane_lowres@tiling-y@pipe-d-hdmi-a-3:
- Statuses : 1 pass(s)
- Exec time: [0.0] s

  

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@drm_fdinfo@most-busy-check-all@rcs0:
- shard-rkl:  [PASS][3] -> [FAIL][4] ([i915#7742])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13289/shard-rkl-2/igt@drm_fdinfo@most-busy-check-...@rcs0.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119517v1/shard-rkl-4/igt@drm_fdinfo@most-busy-check-...@rcs0.html

  * igt@gem_ctx_exec@basic-nohangcheck:
- shard-rkl:  [PASS][5] -> [FAIL][6] ([i915#6268])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13289/shard-rkl-4/igt@gem_ctx_e...@basic-nohangcheck.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119517v1/shard-rkl-6/igt@gem_ctx_e...@basic-nohangcheck.html
- shard-tglu: [PASS][7] -> [FAIL][8] ([i915#6268])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13289/shard-tglu-5/igt@gem_ctx_e...@basic-nohangcheck.html
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119517v1/shard-tglu-4/igt@gem_ctx_e...@basic-nohangcheck.html

  * igt@gem_exec_balancer@parallel-out-fence:
- shard-rkl:  NOTRUN -> [SKIP][9] ([i915#4525])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119517v1/shard-rkl-6/igt@gem_exec_balan...@parallel-out-fence.html

  * igt@gem_exec_fair@basic-none-solo@rcs0:
- shard-apl:  [PASS][10] -> [FAIL][11] ([i915#2842])
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13289/shard-apl2/igt@gem_exec_fair@basic-none-s...@rcs0.html
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119517v1/shard-apl3/igt@gem_exec_fair@basic-none-s...@rcs0.html

  * igt@gem_exec_fair@basic-none@bcs0:
- shard-rkl:  [PASS][12] -> [FAIL][13] ([i915#2842]) +1 similar 
issue
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13289/shard-rkl-7/igt@gem_exec_fair@basic-n...@bcs0.html
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119517v1/shard-rkl-1/igt@gem_exec_fair@basic-n...@bcs0.html

  * igt@gem_exec_fair@basic-pace-share@rcs0:
- shard-glk:  [PASS][14] -> [FAIL][15] ([i915#2842])
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13289/shard-glk8/igt@gem_exec_fair@basic-pace-sh...@rcs0.html
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119517v1/shard-glk2/igt@gem_exec_fair@basic-pace-sh...@rcs0.html

  * igt@gem_exec_reloc@basic-write-wc-noreloc:
- shard-rkl:  NOTRUN -> [SKIP][16] ([i915#3281]) +1 similar issue
   [16]: 

[Intel-gfx] [PATCH] drm/i915/display/dp: Add fallback on LT failure for DP2.0

2023-06-20 Thread Arun R Murthy
For DP2.0 as per the Spec on LT failure we need to reduce the lane count
if the lane count is not equal to 1. If lane count is 1 then need to
retry with reducing the link rate.

Signed-off-by: Arun R Murthy 
---
 drivers/gpu/drm/i915/display/intel_dp.c | 20 ++--
 1 file changed, 18 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_dp.c 
b/drivers/gpu/drm/i915/display/intel_dp.c
index 54ddc953e5bc..2b12ca45596d 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -657,8 +657,20 @@ int intel_dp_get_link_train_fallback_values(struct 
intel_dp *intel_dp,
"Retrying Link training for eDP with same 
parameters\n");
return 0;
}
-   intel_dp->max_link_rate = intel_dp_common_rate(intel_dp, index 
- 1);
-   intel_dp->max_link_lane_count = lane_count;
+   if (intel_dp->dpcd[DP_MAIN_LINK_CHANNEL_CODING] & 
DP_CAP_ANSI_128B132B) {
+   if (lane_count > 1) {
+   /* Reduce the lane count */
+   intel_dp->max_link_lane_count = lane_count >> 1;
+   intel_dp->max_link_rate = 
intel_dp_common_rate(intel_dp, index);
+   } else {
+   /* Reduce the link rate */
+   intel_dp->max_link_rate = 
intel_dp_common_rate(intel_dp, index - 1);
+   intel_dp->max_link_lane_count = 
intel_dp_max_common_lane_count(intel_dp);
+   }
+   } else {
+   intel_dp->max_link_rate = 
intel_dp_common_rate(intel_dp, index - 1);
+   intel_dp->max_link_lane_count = lane_count;
+   }
} else if (lane_count > 1) {
if (intel_dp_is_edp(intel_dp) &&
!intel_dp_can_link_train_fallback_for_edp(intel_dp,
@@ -675,6 +687,10 @@ int intel_dp_get_link_train_fallback_values(struct 
intel_dp *intel_dp,
return -1;
}
 
+   drm_dbg_kms(>drm,
+   "Retrying Link training with link rate %d and lane count 
%d\n",
+   intel_dp->max_link_rate, intel_dp->max_link_lane_count);
+
return 0;
 }
 
-- 
2.25.1



Re: [Intel-gfx] [PATCHv3] drm/i915/display/dp: On AUX xfer timeout restart freshly

2023-06-20 Thread Murthy, Arun R
> -Original Message-
> From: Deak, Imre 
> Sent: Tuesday, June 13, 2023 4:19 PM
> To: Murthy, Arun R 
> Cc: intel-gfx@lists.freedesktop.org; Nikula, Jani 
> Subject: Re: [PATCHv3] drm/i915/display/dp: On AUX xfer timeout restart
> freshly
> 
> On Tue, Jun 13, 2023 at 10:12:39AM +0530, Arun R Murthy wrote:
> > On AUX transfer timeout, as per DP spec need to retry for 3 times and
> > has to be restarted freshly.
> >
> > v3: handle timeout and dont rely on register value on timeout (Imre)
> >
> > Signed-off-by: Arun R Murthy 
> > ---
> >  .../drm/i915/display/intel_display_types.h|  1 -
> >  drivers/gpu/drm/i915/display/intel_dp_aux.c   | 72 +--
> >  2 files changed, 34 insertions(+), 39 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h
> > b/drivers/gpu/drm/i915/display/intel_display_types.h
> > index 2d8297f8d088..0942b109b4ca 100644
> > --- a/drivers/gpu/drm/i915/display/intel_display_types.h
> > +++ b/drivers/gpu/drm/i915/display/intel_display_types.h
> > @@ -1741,7 +1741,6 @@ struct intel_dp {
> > /* sink or branch descriptor */
> > struct drm_dp_desc desc;
> > struct drm_dp_aux aux;
> > -   u32 aux_busy_last_status;
> > u8 train_set[4];
> >
> > struct intel_pps pps;
> > diff --git a/drivers/gpu/drm/i915/display/intel_dp_aux.c
> > b/drivers/gpu/drm/i915/display/intel_dp_aux.c
> > index 0c27db8ae4f1..244b4d7d716d 100644
> > --- a/drivers/gpu/drm/i915/display/intel_dp_aux.c
> > +++ b/drivers/gpu/drm/i915/display/intel_dp_aux.c
> > @@ -36,25 +36,24 @@ static void intel_dp_aux_unpack(u32 src, u8 *dst,
> int dst_bytes)
> > dst[i] = src >> ((3 - i) * 8);
> >  }
> >
> > -static u32
> > -intel_dp_aux_wait_done(struct intel_dp *intel_dp)
> > +static int
> > +intel_dp_aux_wait_done(struct intel_dp *intel_dp, u32 *status)
> >  {
> > struct drm_i915_private *i915 = dp_to_i915(intel_dp);
> > i915_reg_t ch_ctl = intel_dp->aux_ch_ctl_reg(intel_dp);
> > const unsigned int timeout_ms = 10;
> > -   u32 status;
> > int ret;
> >
> > ret = __intel_de_wait_for_register(i915, ch_ctl,
> >DP_AUX_CH_CTL_SEND_BUSY, 0,
> > -  2, timeout_ms, );
> > +  50, timeout_ms, status);
> >
> > if (ret == -ETIMEDOUT)
> > drm_err(>drm,
> > "%s: did not complete or timeout within %ums
> (status 0x%08x)\n",
> > -   intel_dp->aux.name, timeout_ms, status);
> > +   intel_dp->aux.name, timeout_ms, *status);
> >
> > -   return status;
> > +   return ret;
> >  }
> >
> >  static u32 g4x_get_aux_clock_divider(struct intel_dp *intel_dp, int
> > index) @@ -186,10 +185,7 @@ static u32 skl_get_aux_send_ctl(struct
> intel_dp *intel_dp,
> >  */
> > ret = DP_AUX_CH_CTL_SEND_BUSY |
> > DP_AUX_CH_CTL_DONE |
> > -   DP_AUX_CH_CTL_INTERRUPT |
> 
> The above one-liner change, also applied in g4x_get_aux_send_ctl() should
> be a separate patch.
> 
> > -   DP_AUX_CH_CTL_TIME_OUT_ERROR |
> > DP_AUX_CH_CTL_TIME_OUT_MAX |
> > -   DP_AUX_CH_CTL_RECEIVE_ERROR |
> > DP_AUX_CH_CTL_MESSAGE_SIZE(send_bytes) |
> >
>   DP_AUX_CH_CTL_FW_SYNC_PULSE_SKL(intel_dp_aux_fw_sync_len())
> |
> >
>   DP_AUX_CH_CTL_SYNC_PULSE_SKL(intel_dp_aux_sync_len());
> > @@ -273,30 +269,6 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp,
> >  * it using the same AUX CH simultaneously
> >  */
> >
> > -   /* Try to wait for any previous AUX channel activity */
> > -   for (try = 0; try < 3; try++) {
> > -   status = intel_de_read_notrace(i915, ch_ctl);
> > -   if ((status & DP_AUX_CH_CTL_SEND_BUSY) == 0)
> > -   break;
> > -   msleep(1);
> > -   }
> > -   /* just trace the final value */
> > -   trace_i915_reg_rw(false, ch_ctl, status, sizeof(status), true);
> > -
> > -   if (try == 3) {
> > -   const u32 status = intel_de_read(i915, ch_ctl);
> > -
> > -   if (status != intel_dp->aux_busy_last_status) {
> > -   drm_WARN(>drm, 1,
> > -"%s: not started (status 0x%08x)\n",
> > -intel_dp->aux.name, status);
> > -   intel_dp->aux_busy_last_status = status;
> > -   }
> > -
> > -   ret = -EBUSY;
> > -   goto out;
> > -   }
> > -
> > /* Only 5 data registers! */
> > if (drm_WARN_ON(>drm, send_bytes > 20 || recv_size > 20)) {
> > ret = -E2BIG;
> > @@ -304,14 +276,31 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp,
> > }
> >
> > while ((aux_clock_divider = intel_dp-
> >get_aux_clock_divider(intel_dp, clock++))) {
> > -   u32 send_ctl = intel_dp->get_aux_send_ctl(intel_dp,
> > +   /* Must try at least 3 times according to DP spec */
> > +   for (try = 0; try < 5; try++) {
> > +   u32 send_ctl = 

[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/display/dp: On AUX xfer timeout restart freshly (rev6)

2023-06-20 Thread Patchwork
== Series Details ==

Series: drm/i915/display/dp: On AUX xfer timeout restart freshly (rev6)
URL   : https://patchwork.freedesktop.org/series/119055/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13290 -> Patchwork_119055v6


Summary
---

  **SUCCESS**

  No regressions found.

  External URL: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/index.html

Participating hosts (42 -> 41)
--

  Missing(1): fi-snb-2520m 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@debugfs_test@basic-hwmon:
- bat-adlp-11:NOTRUN -> [SKIP][1] ([i915#7456])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/bat-adlp-11/igt@debugfs_t...@basic-hwmon.html

  * igt@gem_tiled_pread_basic:
- bat-adlp-11:NOTRUN -> [SKIP][2] ([i915#3282])
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/bat-adlp-11/igt@gem_tiled_pread_basic.html

  * igt@i915_selftest@live@slpc:
- bat-rpls-2: NOTRUN -> [DMESG-WARN][3] ([i915#6367])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/bat-rpls-2/igt@i915_selftest@l...@slpc.html

  * igt@i915_suspend@basic-s2idle-without-i915:
- bat-rpls-2: NOTRUN -> [ABORT][4] ([i915#6687] / [i915#8668])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/bat-rpls-2/igt@i915_susp...@basic-s2idle-without-i915.html

  * igt@i915_suspend@basic-s3-without-i915:
- bat-rpls-1: NOTRUN -> [ABORT][5] ([i915#6687] / [i915#7978])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/bat-rpls-1/igt@i915_susp...@basic-s3-without-i915.html

  * igt@kms_chamelium_frames@hdmi-crc-fast:
- bat-adlp-11:NOTRUN -> [SKIP][6] ([i915#7828]) +7 similar issues
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/bat-adlp-11/igt@kms_chamelium_fra...@hdmi-crc-fast.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- bat-adlp-11:NOTRUN -> [SKIP][7] ([i915#4103]) +1 similar issue
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/bat-adlp-11/igt@kms_cursor_leg...@basic-busy-flip-before-cursor-legacy.html

  * igt@kms_force_connector_basic@prune-stale-modes:
- bat-adlp-11:NOTRUN -> [SKIP][8] ([i915#4093]) +3 similar issues
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/bat-adlp-11/igt@kms_force_connector_ba...@prune-stale-modes.html

  * igt@kms_pipe_crc_basic@suspend-read-crc@pipe-d-hdmi-a-3:
- bat-dg2-11: [PASS][9] -> [INCOMPLETE][10] ([i915#7908])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/bat-dg2-11/igt@kms_pipe_crc_basic@suspend-read-...@pipe-d-hdmi-a-3.html
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/bat-dg2-11/igt@kms_pipe_crc_basic@suspend-read-...@pipe-d-hdmi-a-3.html

  
 Possible fixes 

  * igt@core_auth@basic-auth:
- bat-adlp-11:[ABORT][11] ([i915#8011]) -> [PASS][12]
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/bat-adlp-11/igt@core_a...@basic-auth.html
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/bat-adlp-11/igt@core_a...@basic-auth.html

  * igt@i915_module_load@load:
- bat-adlp-11:[DMESG-WARN][13] ([i915#4423]) -> [PASS][14]
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/bat-adlp-11/igt@i915_module_l...@load.html
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/bat-adlp-11/igt@i915_module_l...@load.html

  * igt@i915_selftest@live@gt_mocs:
- bat-mtlp-6: [DMESG-FAIL][15] ([i915#7059]) -> [PASS][16]
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html

  * igt@i915_selftest@live@migrate:
- bat-atsm-1: [DMESG-FAIL][17] ([i915#7699] / [i915#7913]) -> 
[PASS][18]
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/bat-atsm-1/igt@i915_selftest@l...@migrate.html
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/bat-atsm-1/igt@i915_selftest@l...@migrate.html

  * igt@i915_selftest@live@reset:
- bat-rpls-1: [ABORT][19] ([i915#4983] / [i915#7461] / [i915#7981] 
/ [i915#8347] / [i915#8384]) -> [PASS][20]
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/bat-rpls-1/igt@i915_selftest@l...@reset.html
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_119055v6/bat-rpls-1/igt@i915_selftest@l...@reset.html
- bat-rpls-2: [ABORT][21] ([i915#4983] / [i915#7461] / [i915#7913] 
/ [i915#7981] / [i915#8347]) -> [PASS][22]
   [21]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13290/bat-rpls-2/igt@i915_selftest@l...@reset.html