✓ Fi.CI.IGT: success for drm: move Intel drm headers to a subdirectory (rev3)

2024-04-11 Thread Patchwork
== Series Details ==

Series: drm: move Intel drm headers to a subdirectory (rev3)
URL   : https://patchwork.freedesktop.org/series/132264/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_14566_full -> Patchwork_132264v3_full


Summary
---

  **SUCCESS**

  No regressions found.

  

Participating hosts (9 -> 9)
--

  No changes in participating hosts

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@api_intel_bb@blit-reloc-purge-cache:
- shard-mtlp: NOTRUN -> [SKIP][1] ([i915#8411])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/shard-mtlp-3/igt@api_intel...@blit-reloc-purge-cache.html
- shard-dg2:  NOTRUN -> [SKIP][2] ([i915#8411])
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/shard-dg2-4/igt@api_intel...@blit-reloc-purge-cache.html

  * igt@drm_fdinfo@virtual-busy:
- shard-mtlp: NOTRUN -> [SKIP][3] ([i915#8414])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/shard-mtlp-3/igt@drm_fdi...@virtual-busy.html

  * igt@drm_fdinfo@virtual-busy-idle-all:
- shard-dg2:  NOTRUN -> [SKIP][4] ([i915#8414]) +1 other test skip
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/shard-dg2-6/igt@drm_fdi...@virtual-busy-idle-all.html

  * igt@gem_basic@multigpu-create-close:
- shard-mtlp: NOTRUN -> [SKIP][5] ([i915#7697])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/shard-mtlp-3/igt@gem_ba...@multigpu-create-close.html
- shard-dg2:  NOTRUN -> [SKIP][6] ([i915#7697])
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/shard-dg2-4/igt@gem_ba...@multigpu-create-close.html

  * igt@gem_ccs@suspend-resume:
- shard-rkl:  NOTRUN -> [SKIP][7] ([i915#9323])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/shard-rkl-6/igt@gem_...@suspend-resume.html

  * igt@gem_ctx_exec@basic-nohangcheck:
- shard-tglu: [PASS][8] -> [FAIL][9] ([i915#6268])
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14566/shard-tglu-4/igt@gem_ctx_e...@basic-nohangcheck.html
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/shard-tglu-2/igt@gem_ctx_e...@basic-nohangcheck.html

  * igt@gem_ctx_persistence@heartbeat-many:
- shard-dg1:  NOTRUN -> [SKIP][10] ([i915#8555])
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/shard-dg1-14/igt@gem_ctx_persiste...@heartbeat-many.html

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

  * igt@gem_eio@kms:
- shard-tglu: [PASS][12] -> [INCOMPLETE][13] ([i915#10513])
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14566/shard-tglu-4/igt@gem_...@kms.html
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/shard-tglu-8/igt@gem_...@kms.html

  * igt@gem_exec_capture@many-4k-incremental:
- shard-tglu: NOTRUN -> [FAIL][14] ([i915#9606])
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/shard-tglu-7/igt@gem_exec_capt...@many-4k-incremental.html

  * igt@gem_exec_capture@many-4k-zero:
- shard-glk:  NOTRUN -> [FAIL][15] ([i915#9606])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/shard-glk4/igt@gem_exec_capt...@many-4k-zero.html

  * igt@gem_exec_fair@basic-none@rcs0:
- shard-glk:  NOTRUN -> [FAIL][16] ([i915#2842]) +3 other tests fail
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/shard-glk4/igt@gem_exec_fair@basic-n...@rcs0.html

  * igt@gem_exec_fair@basic-pace-share:
- shard-dg2:  NOTRUN -> [SKIP][17] ([i915#3539] / [i915#4852]) +1 
other test skip
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/shard-dg2-4/igt@gem_exec_f...@basic-pace-share.html
- shard-mtlp: NOTRUN -> [SKIP][18] ([i915#4473] / [i915#4771])
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/shard-mtlp-3/igt@gem_exec_f...@basic-pace-share.html

  * igt@gem_exec_fair@basic-pace-solo:
- shard-dg1:  NOTRUN -> [SKIP][19] ([i915#3539])
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/shard-dg1-14/igt@gem_exec_f...@basic-pace-solo.html

  * igt@gem_exec_fair@basic-pace@rcs0:
- shard-tglu: [PASS][20] -> [FAIL][21] ([i915#2842])
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14566/shard-tglu-5/igt@gem_exec_fair@basic-p...@rcs0.html
   [21]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/shard-tglu-7/igt@gem_exec_fair@basic-p...@rcs0.html

  * igt@gem_exec_fence@submit3:
- shard-dg2:  NOTRUN -> [SKIP][22] ([i915#4812]) 

✗ Fi.CI.BAT: failure for Add support for partial mapping (rev4)

2024-04-11 Thread Patchwork
== Series Details ==

Series: Add support for partial mapping (rev4)
URL   : https://patchwork.freedesktop.org/series/131817/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_14569 -> Patchwork_131817v4


Summary
---

  **FAILURE**

  Serious unknown changes coming with Patchwork_131817v4 absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_131817v4, please notify your bug team 
(i915-ci-in...@lists.freedesktop.org) 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_131817v4/index.html

Participating hosts (38 -> 34)
--

  Additional (1): bat-dg1-7 
  Missing(5): bat-kbl-2 fi-kbl-8809g bat-dg2-11 bat-jsl-1 bat-mtlp-8 

Possible new issues
---

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

### IGT changes ###

 Possible regressions 

  * igt@core_auth@basic-auth:
- bat-adls-6: [PASS][1] -> [ABORT][2]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14569/bat-adls-6/igt@core_a...@basic-auth.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v4/bat-adls-6/igt@core_a...@basic-auth.html

  * igt@i915_selftest@live@active:
- fi-tgl-1115g4:  [PASS][3] -> [DMESG-FAIL][4]
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14569/fi-tgl-1115g4/igt@i915_selftest@l...@active.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v4/fi-tgl-1115g4/igt@i915_selftest@l...@active.html

  * igt@i915_selftest@live@execlists:
- fi-bsw-nick:[PASS][5] -> [ABORT][6]
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14569/fi-bsw-nick/igt@i915_selftest@l...@execlists.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v4/fi-bsw-nick/igt@i915_selftest@l...@execlists.html

  
Known issues


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

### IGT changes ###

 Issues hit 

  * igt@gem_mmap@basic:
- bat-dg1-7:  NOTRUN -> [SKIP][7] ([i915#4083])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v4/bat-dg1-7/igt@gem_m...@basic.html

  * igt@gem_tiled_fence_blits@basic:
- bat-dg1-7:  NOTRUN -> [SKIP][8] ([i915#4077]) +2 other tests skip
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v4/bat-dg1-7/igt@gem_tiled_fence_bl...@basic.html

  * igt@gem_tiled_pread_basic:
- bat-dg1-7:  NOTRUN -> [SKIP][9] ([i915#4079]) +1 other test skip
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v4/bat-dg1-7/igt@gem_tiled_pread_basic.html

  * igt@i915_pm_rps@basic-api:
- bat-dg1-7:  NOTRUN -> [SKIP][10] ([i915#6621])
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v4/bat-dg1-7/igt@i915_pm_...@basic-api.html

  * igt@kms_addfb_basic@addfb25-x-tiled-mismatch-legacy:
- bat-dg1-7:  NOTRUN -> [SKIP][11] ([i915#4212]) +7 other tests skip
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v4/bat-dg1-7/igt@kms_addfb_ba...@addfb25-x-tiled-mismatch-legacy.html

  * igt@kms_addfb_basic@basic-y-tiled-legacy:
- bat-dg1-7:  NOTRUN -> [SKIP][12] ([i915#4215])
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v4/bat-dg1-7/igt@kms_addfb_ba...@basic-y-tiled-legacy.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- bat-dg1-7:  NOTRUN -> [SKIP][13] ([i915#4103] / [i915#4213]) +1 
other test skip
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v4/bat-dg1-7/igt@kms_cursor_leg...@basic-busy-flip-before-cursor-legacy.html

  * igt@kms_dsc@dsc-basic:
- bat-dg1-7:  NOTRUN -> [SKIP][14] ([i915#3555] / [i915#3840])
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v4/bat-dg1-7/igt@kms_...@dsc-basic.html

  * igt@kms_force_connector_basic@force-load-detect:
- bat-dg1-7:  NOTRUN -> [SKIP][15]
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v4/bat-dg1-7/igt@kms_force_connector_ba...@force-load-detect.html

  * igt@kms_hdmi_inject@inject-audio:
- bat-dg1-7:  NOTRUN -> [SKIP][16] ([i915#433])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v4/bat-dg1-7/igt@kms_hdmi_inj...@inject-audio.html

  * igt@kms_pm_backlight@basic-brightness:
- bat-dg1-7:  NOTRUN -> [SKIP][17] ([i915#5354])
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v4/bat-dg1-7/igt@kms_pm_backli...@basic-brightness.html

  * igt@kms_psr@psr-primary-page-flip:
- bat-dg1-7:  NOTRUN -> [SKIP][18] ([i915#1072] / [i915#9732]) +3 
other tests skip
   [18]: 

✗ Fi.CI.CHECKPATCH: warning for Add support for partial mapping (rev4)

2024-04-11 Thread Patchwork
== Series Details ==

Series: Add support for partial mapping (rev4)
URL   : https://patchwork.freedesktop.org/series/131817/
State : warning

== Summary ==

Error: dim checkpatch failed
46ca0a098165 drm/i915/gem: Increment vma offset when mapping fb objects
68f82be0743a drm/i915/gem: Do not look for the exact address in node
509ff2223914 drm/i915/gem: Calculate object page offset for partial memory 
mapping
-:67: WARNING:LONG_LINE: line length of 108 exceeds 100 columns
#67: FILE: drivers/gpu/drm/i915/gem/i915_gem_mman.c:411:
+  area->vm_start + ((vma->gtt_view.partial.offset 
- obj_offset) << PAGE_SHIFT),

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




[PATCH v3 3/3] drm/i915/gem: Calculate object page offset for partial memory mapping

2024-04-11 Thread Andi Shyti
To enable partial memory mapping of GPU virtual memory, it's
necessary to introduce an offset to the object's memory
(obj->mm.pages) scatterlist. This adjustment compensates for
instances when userspace mappings do not start from the beginning
of the object.

Based on a patch by Chris Wilson.

Signed-off-by: Andi Shyti 
Cc: Chris Wilson 
Cc: Lionel Landwerlin 
---
 drivers/gpu/drm/i915/gem/i915_gem_mman.c | 10 +++---
 drivers/gpu/drm/i915/i915_mm.c   | 12 +++-
 drivers/gpu/drm/i915/i915_mm.h   |  3 ++-
 3 files changed, 20 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/i915/gem/i915_gem_mman.c 
b/drivers/gpu/drm/i915/gem/i915_gem_mman.c
index 4e57844a9ebb..2241257a9ccf 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_mman.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_mman.c
@@ -252,6 +252,7 @@ static vm_fault_t vm_fault_cpu(struct vm_fault *vmf)
struct vm_area_struct *area = vmf->vma;
struct i915_mmap_offset *mmo = area->vm_private_data;
struct drm_i915_gem_object *obj = mmo->obj;
+   unsigned long obj_offset;
resource_size_t iomap;
int err;
 
@@ -273,10 +274,11 @@ static vm_fault_t vm_fault_cpu(struct vm_fault *vmf)
iomap -= obj->mm.region->region.start;
}
 
+   obj_offset = area->vm_pgoff - drm_vma_node_start(>vma_node);
/* PTEs are revoked in obj->ops->put_pages() */
err = remap_io_sg(area,
  area->vm_start, area->vm_end - area->vm_start,
- obj->mm.pages->sgl, iomap);
+ obj->mm.pages->sgl, obj_offset, iomap);
 
if (area->vm_flags & VM_WRITE) {
GEM_BUG_ON(!i915_gem_object_has_pinned_pages(obj));
@@ -302,14 +304,16 @@ static vm_fault_t vm_fault_gtt(struct vm_fault *vmf)
struct i915_ggtt *ggtt = to_gt(i915)->ggtt;
bool write = area->vm_flags & VM_WRITE;
struct i915_gem_ww_ctx ww;
+   unsigned long obj_offset;
intel_wakeref_t wakeref;
struct i915_vma *vma;
pgoff_t page_offset;
int srcu;
int ret;
 
-   /* We don't use vmf->pgoff since that has the fake offset */
+   obj_offset = area->vm_pgoff - drm_vma_node_start(>vma_node);
page_offset = (vmf->address - area->vm_start) >> PAGE_SHIFT;
+   page_offset += obj_offset;
 
trace_i915_gem_object_fault(obj, page_offset, true, write);
 
@@ -404,7 +408,7 @@ static vm_fault_t vm_fault_gtt(struct vm_fault *vmf)
 
/* Finally, remap it using the new GTT offset */
ret = remap_io_mapping(area,
-  area->vm_start + (vma->gtt_view.partial.offset 
<< PAGE_SHIFT),
+  area->vm_start + ((vma->gtt_view.partial.offset 
- obj_offset) << PAGE_SHIFT),
   (ggtt->gmadr.start + i915_ggtt_offset(vma)) >> 
PAGE_SHIFT,
   min_t(u64, vma->size, area->vm_end - 
area->vm_start),
   >iomap);
diff --git a/drivers/gpu/drm/i915/i915_mm.c b/drivers/gpu/drm/i915/i915_mm.c
index 7998bc74ab49..f5c97a620962 100644
--- a/drivers/gpu/drm/i915/i915_mm.c
+++ b/drivers/gpu/drm/i915/i915_mm.c
@@ -122,13 +122,15 @@ int remap_io_mapping(struct vm_area_struct *vma,
  * @addr: target user address to start at
  * @size: size of map area
  * @sgl: Start sg entry
+ * @offset: offset from the start of the page
  * @iobase: Use stored dma address offset by this address or pfn if -1
  *
  *  Note: this is only safe if the mm semaphore is held when called.
  */
 int remap_io_sg(struct vm_area_struct *vma,
unsigned long addr, unsigned long size,
-   struct scatterlist *sgl, resource_size_t iobase)
+   struct scatterlist *sgl, unsigned long offset,
+   resource_size_t iobase)
 {
struct remap_pfn r = {
.mm = vma->vm_mm,
@@ -141,6 +143,14 @@ int remap_io_sg(struct vm_area_struct *vma,
/* We rely on prevalidation of the io-mapping to skip track_pfn(). */
GEM_BUG_ON((vma->vm_flags & EXPECTED_FLAGS) != EXPECTED_FLAGS);
 
+   while (offset >= sg_dma_len(r.sgt.sgp) >> PAGE_SHIFT) {
+   offset -= sg_dma_len(r.sgt.sgp) >> PAGE_SHIFT;
+   r.sgt = __sgt_iter(__sg_next(r.sgt.sgp), use_dma(iobase));
+   if (!r.sgt.sgp)
+   return -EINVAL;
+   }
+   r.sgt.curr = offset << PAGE_SHIFT;
+
if (!use_dma(iobase))
flush_cache_range(vma, addr, size);
 
diff --git a/drivers/gpu/drm/i915/i915_mm.h b/drivers/gpu/drm/i915/i915_mm.h
index 04c8974d822b..69f9351b1a1c 100644
--- a/drivers/gpu/drm/i915/i915_mm.h
+++ b/drivers/gpu/drm/i915/i915_mm.h
@@ -30,6 +30,7 @@ int remap_io_mapping(struct vm_area_struct *vma,
 
 int remap_io_sg(struct vm_area_struct *vma,
unsigned long addr, unsigned long size,
-   struct scatterlist *sgl, resource_size_t iobase);
+   struct 

[PATCH v3 2/3] drm/i915/gem: Do not look for the exact address in node

2024-04-11 Thread Andi Shyti
In preparation for the upcoming partial memory mapping feature,
we want to make sure that when looking for a node we consider
also the offset and not just the starting address of the virtual
memory node.

Signed-off-by: Andi Shyti 
---
 drivers/gpu/drm/i915/gem/i915_gem_mman.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/gem/i915_gem_mman.c 
b/drivers/gpu/drm/i915/gem/i915_gem_mman.c
index ce10dd259812..4e57844a9ebb 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_mman.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_mman.c
@@ -1030,9 +1030,9 @@ int i915_gem_mmap(struct file *filp, struct 
vm_area_struct *vma)
 
rcu_read_lock();
drm_vma_offset_lock_lookup(dev->vma_offset_manager);
-   node = drm_vma_offset_exact_lookup_locked(dev->vma_offset_manager,
- vma->vm_pgoff,
- vma_pages(vma));
+   node = drm_vma_offset_lookup_locked(dev->vma_offset_manager,
+   vma->vm_pgoff,
+   vma_pages(vma));
if (node && drm_vma_node_is_allowed(node, priv)) {
/*
 * Skip 0-refcnted objects as it is in the process of being
-- 
2.43.0



[PATCH v3 1/3] drm/i915/gem: Increment vma offset when mapping fb objects

2024-04-11 Thread Andi Shyti
Until now the "vm_pgoff" was not used and there has been no need
to set its offset.

But now, because we want to support partial mappings with a given
offset, we need it to be set.

Suggested-by: Chris Wilson 
Signed-off-by: Andi Shyti 
---
 drivers/gpu/drm/i915/gem/i915_gem_mman.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/gpu/drm/i915/gem/i915_gem_mman.c 
b/drivers/gpu/drm/i915/gem/i915_gem_mman.c
index a2195e28b625..ce10dd259812 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_mman.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_mman.c
@@ -1084,6 +1084,8 @@ int i915_gem_fb_mmap(struct drm_i915_gem_object *obj, 
struct vm_area_struct *vma
mmo = mmap_offset_attach(obj, mmap_type, NULL);
if (IS_ERR(mmo))
return PTR_ERR(mmo);
+
+   vma->vm_pgoff += drm_vma_node_start(>vma_node);
}
 
/*
-- 
2.43.0



[PATCH v3 0/3] Add support for partial mapping

2024-04-11 Thread Andi Shyti
Hi,

this series based on a previous work from Chris adds support for
partial mapping.

Two preparatory patches are needed:

 - set the vm_pgoff when mapping frame buffer objects
 - do not fail when the exact address of a VM node is not the
   same as the starting address due to the offset.

Indeed I was receiving a negative offset at first.

Igt tests have been sent to the igt mailing list.

Andi

Test-with: 20240412004255.288046-1-andi.sh...@linux.intel.com

Changelog:
==
v2 -> v3:
 - Add a patch in order to not fail when the exact address of a
   VM node is not the same as the starting address due to the
   offset.

v1 -> v2:
 - Enable support for CPU memory
 - Increment vm_pgoff for fb objects

Andi Shyti (3):
  drm/i915/gem: Increment vma offset when mapping fb objects
  drm/i915/gem: Do not look for the exact address in node
  drm/i915/gem: Calculate object page offset for partial memory mapping

 drivers/gpu/drm/i915/gem/i915_gem_mman.c | 18 --
 drivers/gpu/drm/i915/i915_mm.c   | 12 +++-
 drivers/gpu/drm/i915/i915_mm.h   |  3 ++-
 3 files changed, 25 insertions(+), 8 deletions(-)

-- 
2.43.0



[PATCH i-g-t] i915/gem_mmap_offset: Partial mmap and munmap

2024-04-11 Thread Andi Shyti
From: Chris Wilson 

Based on a test case developed by Lionel Landwerlin, this exercises
creation of partial mmaps using both direct methods of a partial mmap()
(where the mmap() only covers a portion of the object) and
munmap() to do the same.

Signed-off-by: Chris Wilson 
Signed-off-by: Andi Shyti 
---
 tests/intel/gem_mmap_offset.c | 84 +++
 1 file changed, 84 insertions(+)

diff --git a/tests/intel/gem_mmap_offset.c b/tests/intel/gem_mmap_offset.c
index 95d2158ca88f..0ba2f9591f85 100644
--- a/tests/intel/gem_mmap_offset.c
+++ b/tests/intel/gem_mmap_offset.c
@@ -56,6 +56,8 @@
  * SUBTEST: isolation
  * SUBTEST: oob-read
  * SUBTEST: open-flood
+ * SUBTEST: partial-mmap
+ * SUBTEST: partial-unmap
  * SUBTEST: perf
  * SUBTEST: pf-nonblock
  * SUBTEST: ptrace
@@ -874,6 +876,83 @@ static void blt_coherency(int i915)
igt_assert_f(compare_ok, "Problem with coherency, flush is too late\n");
 }
 
+static void partial_mmap(int i915)
+{
+   uint32_t handle;
+
+   handle = gem_create(i915, SZ_2M);
+
+   for_each_mmap_offset_type(i915, t) {
+   struct drm_i915_gem_mmap_offset arg = {
+   .handle = handle,
+   .flags = t->type,
+   };
+   uint32_t *ptr;
+
+   if (mmap_offset_ioctl(i915, ))
+   continue;
+
+   ptr = mmap(0, SZ_4K, PROT_WRITE, MAP_SHARED, i915, arg.offset);
+   if (ptr == MAP_FAILED)
+   continue;
+
+   memset(ptr, 0xcc, SZ_4K);
+   munmap(ptr, SZ_4K);
+
+   ptr = mmap(0, SZ_4K, PROT_READ, MAP_SHARED, i915, arg.offset + 
SZ_2M - SZ_4K);
+   igt_assert(ptr != MAP_FAILED);
+
+   for (uint32_t i = 0; i < SZ_4K / sizeof(uint32_t); i++)
+   igt_assert_eq_u32(ptr[i], 0);
+
+   munmap(ptr, SZ_4K);
+   }
+
+   gem_close(i915, handle);
+}
+
+static void partial_unmap(int i915)
+{
+   uint32_t handle;
+
+   handle = gem_create(i915, SZ_2M);
+
+   for_each_mmap_offset_type(i915, t) {
+   uint8_t *ptr_a, *ptr_b;
+
+   /* mmap the same GEM BO twice */
+   ptr_a = __mmap_offset(i915, handle, 0, SZ_2M,
+   PROT_READ | PROT_WRITE,
+   t->type);
+   if (!ptr_a)
+   continue;
+
+   ptr_b = __mmap_offset(i915, handle, 0, SZ_2M,
+   PROT_READ | PROT_WRITE,
+   t->type);
+   if (!ptr_b)
+   continue;
+
+   /* unmap the first mapping but the last 4k */
+   munmap(ptr_a, SZ_2M - SZ_4K);
+
+   /* memset that remaining 4k with 0xcc */
+   memset(ptr_a + SZ_2M - SZ_4K, 0xcc, SZ_4K);
+
+   /* memset the first page of the 2Mb with 0xdd */
+   memset(ptr_b, 0xdd, SZ_4K);
+
+   for (uint32_t i = 0; i < SZ_4K; i++)
+   igt_assert_eq_u32(ptr_a[SZ_2M - SZ_4K + i], 0xcc);
+
+   munmap(ptr_a + SZ_2M - SZ_4K, SZ_4K);
+   memset(ptr_b, 0, SZ_2M);
+   munmap(ptr_b, SZ_2M);
+   }
+
+   gem_close(i915, handle);
+}
+
 static int mmap_gtt_version(int i915)
 {
int gtt_version = -1;
@@ -931,6 +1010,11 @@ igt_main
igt_subtest_f("open-flood")
open_flood(i915, 20);
 
+   igt_subtest_f("partial-mmap")
+   partial_mmap(i915);
+   igt_subtest_f("partial-unmap")
+   partial_unmap(i915);
+
igt_subtest_with_dynamic("clear") {
for_each_memory_region(r, i915) {
igt_dynamic_f("%s", r->name)
-- 
2.43.0



Re: [v2] drm/i915: Implement Audio WA_14020863754

2024-04-11 Thread Matt Roper
On Thu, Apr 11, 2024 at 03:36:37PM -0700, Matt Roper wrote:
> On Wed, Apr 10, 2024 at 07:20:46PM +0530, Uma Shankar wrote:
> > WA_14020863754: Corner case with Min Hblank Fix can cause
> > audio hang
> > 
> > Issue: Previously a fix was made to avoid issues with extremely
> > small hblanks, called the "Min Hblank Fix". However, this can
> > potentially cause an audio hang.
> > 
> > Workaround :
> > During "Audio Programming Sequence" Audio Enabling -
> > When DP mode is enabled Set mmio offset 0x65F1C bit 18 = 1b,
> > before step #1 "Enable audio Presence Detect"
> > 
> > During "Audio Programming Sequence" Audio Disabling -
> > When DP mode is enabled Clear mmio offset 0x65F1C bit 18 = 0b,
> > after step #6 "Disable Audio PD (Presence Detect)"
> > If not clearing PD bit, must also not clear 0x65F1C bit 18 (leave = 1b)
> > 
> > v2: Update the platform checks (Jani Nikula)
> > 
> > Signed-off-by: Uma Shankar 
> > ---
> >  drivers/gpu/drm/i915/display/intel_audio.c  | 14 ++
> >  drivers/gpu/drm/i915/display/intel_audio_regs.h |  3 +++
> >  2 files changed, 17 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/i915/display/intel_audio.c 
> > b/drivers/gpu/drm/i915/display/intel_audio.c
> > index 07e0c73204f3..61df5115c970 100644
> > --- a/drivers/gpu/drm/i915/display/intel_audio.c
> > +++ b/drivers/gpu/drm/i915/display/intel_audio.c
> > @@ -512,6 +512,13 @@ static void hsw_audio_codec_disable(struct 
> > intel_encoder *encoder,
> > intel_de_rmw(i915, HSW_AUD_PIN_ELD_CP_VLD,
> >  AUDIO_OUTPUT_ENABLE(cpu_transcoder), 0);
> >  
> > +   /*
> > +* WA_14020863754: Implement Audio Workaround
> > +* Corner case with Min Hblank Fix can cause audio hang
> > +*/
> > +   if (DISPLAY_VER(i915) >= 20)
> 
> The workaround is currently listed as applying to both Xe2_LPD (20.00)
> and Xe2_HPD (14.01).  So we should match on those precise IP versions
> for now.  Future platforms and/or refreshes may or may not need this
> workaround and we don't want to just assume the workaround will carry
> forward forever, so the condition may get updated further as new
> platforms/IP versions are added to the driver.

Also, since this is a workaround that requires logic in multiple spots
and already applies to multiple IP versions, it may be a good idea to
separate out the condition into a helper function so that if/when new
versions get added to the list in the future we can update a single
place rather than tracking down multiple 'if' statements.


Matt

> 
> 
> Matt
> 
> > +   intel_de_rmw(i915, AUD_CHICKENBIT_REG3, CHICKEN3_SPARE18, 0);
> > +
> > mutex_unlock(>display.audio.mutex);
> >  }
> >  
> > @@ -637,6 +644,13 @@ static void hsw_audio_codec_enable(struct 
> > intel_encoder *encoder,
> > if (intel_crtc_has_type(crtc_state, INTEL_OUTPUT_DP))
> > enable_audio_dsc_wa(encoder, crtc_state);
> >  
> > +   /*
> > +* WA_14020863754: Implement Audio Workaround
> > +* Corner case with Min Hblank Fix can cause audio hang
> > +*/
> > +   if (DISPLAY_VER(i915) >= 20)
> > +   intel_de_rmw(i915, AUD_CHICKENBIT_REG3, 0, CHICKEN3_SPARE18);
> > +
> > /* Enable audio presence detect */
> > intel_de_rmw(i915, HSW_AUD_PIN_ELD_CP_VLD,
> >  0, AUDIO_OUTPUT_ENABLE(cpu_transcoder));
> > diff --git a/drivers/gpu/drm/i915/display/intel_audio_regs.h 
> > b/drivers/gpu/drm/i915/display/intel_audio_regs.h
> > index 616e7b1275c4..6f8d33299ecd 100644
> > --- a/drivers/gpu/drm/i915/display/intel_audio_regs.h
> > +++ b/drivers/gpu/drm/i915/display/intel_audio_regs.h
> > @@ -148,4 +148,7 @@
> >  #define HBLANK_START_COUNT_96  4
> >  #define HBLANK_START_COUNT_128 5
> >  
> > +#define AUD_CHICKENBIT_REG3_MMIO(0x65F1C)
> > +#define  CHICKEN3_SPARE18  REG_BIT(18)
> > +
> >  #endif /* __INTEL_AUDIO_REGS_H__ */
> > -- 
> > 2.42.0
> > 
> 
> -- 
> Matt Roper
> Graphics Software Engineer
> Linux GPU Platform Enablement
> Intel Corporation

-- 
Matt Roper
Graphics Software Engineer
Linux GPU Platform Enablement
Intel Corporation


Re: [v2] drm/i915: Implement Audio WA_14020863754

2024-04-11 Thread Matt Roper
On Wed, Apr 10, 2024 at 07:20:46PM +0530, Uma Shankar wrote:
> WA_14020863754: Corner case with Min Hblank Fix can cause
> audio hang
> 
> Issue: Previously a fix was made to avoid issues with extremely
> small hblanks, called the "Min Hblank Fix". However, this can
> potentially cause an audio hang.
> 
> Workaround :
> During "Audio Programming Sequence" Audio Enabling -
> When DP mode is enabled Set mmio offset 0x65F1C bit 18 = 1b,
> before step #1 "Enable audio Presence Detect"
> 
> During "Audio Programming Sequence" Audio Disabling -
> When DP mode is enabled Clear mmio offset 0x65F1C bit 18 = 0b,
> after step #6 "Disable Audio PD (Presence Detect)"
> If not clearing PD bit, must also not clear 0x65F1C bit 18 (leave = 1b)
> 
> v2: Update the platform checks (Jani Nikula)
> 
> Signed-off-by: Uma Shankar 
> ---
>  drivers/gpu/drm/i915/display/intel_audio.c  | 14 ++
>  drivers/gpu/drm/i915/display/intel_audio_regs.h |  3 +++
>  2 files changed, 17 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_audio.c 
> b/drivers/gpu/drm/i915/display/intel_audio.c
> index 07e0c73204f3..61df5115c970 100644
> --- a/drivers/gpu/drm/i915/display/intel_audio.c
> +++ b/drivers/gpu/drm/i915/display/intel_audio.c
> @@ -512,6 +512,13 @@ static void hsw_audio_codec_disable(struct intel_encoder 
> *encoder,
>   intel_de_rmw(i915, HSW_AUD_PIN_ELD_CP_VLD,
>AUDIO_OUTPUT_ENABLE(cpu_transcoder), 0);
>  
> + /*
> +  * WA_14020863754: Implement Audio Workaround
> +  * Corner case with Min Hblank Fix can cause audio hang
> +  */
> + if (DISPLAY_VER(i915) >= 20)

The workaround is currently listed as applying to both Xe2_LPD (20.00)
and Xe2_HPD (14.01).  So we should match on those precise IP versions
for now.  Future platforms and/or refreshes may or may not need this
workaround and we don't want to just assume the workaround will carry
forward forever, so the condition may get updated further as new
platforms/IP versions are added to the driver.


Matt

> + intel_de_rmw(i915, AUD_CHICKENBIT_REG3, CHICKEN3_SPARE18, 0);
> +
>   mutex_unlock(>display.audio.mutex);
>  }
>  
> @@ -637,6 +644,13 @@ static void hsw_audio_codec_enable(struct intel_encoder 
> *encoder,
>   if (intel_crtc_has_type(crtc_state, INTEL_OUTPUT_DP))
>   enable_audio_dsc_wa(encoder, crtc_state);
>  
> + /*
> +  * WA_14020863754: Implement Audio Workaround
> +  * Corner case with Min Hblank Fix can cause audio hang
> +  */
> + if (DISPLAY_VER(i915) >= 20)
> + intel_de_rmw(i915, AUD_CHICKENBIT_REG3, 0, CHICKEN3_SPARE18);
> +
>   /* Enable audio presence detect */
>   intel_de_rmw(i915, HSW_AUD_PIN_ELD_CP_VLD,
>0, AUDIO_OUTPUT_ENABLE(cpu_transcoder));
> diff --git a/drivers/gpu/drm/i915/display/intel_audio_regs.h 
> b/drivers/gpu/drm/i915/display/intel_audio_regs.h
> index 616e7b1275c4..6f8d33299ecd 100644
> --- a/drivers/gpu/drm/i915/display/intel_audio_regs.h
> +++ b/drivers/gpu/drm/i915/display/intel_audio_regs.h
> @@ -148,4 +148,7 @@
>  #define HBLANK_START_COUNT_964
>  #define HBLANK_START_COUNT_128   5
>  
> +#define AUD_CHICKENBIT_REG3  _MMIO(0x65F1C)
> +#define  CHICKEN3_SPARE18REG_BIT(18)
> +
>  #endif /* __INTEL_AUDIO_REGS_H__ */
> -- 
> 2.42.0
> 

-- 
Matt Roper
Graphics Software Engineer
Linux GPU Platform Enablement
Intel Corporation


Re: [PATCH v2] treewide: Fix common grammar mistake "the the"

2024-04-11 Thread Christophe JAILLET

Le 11/04/2024 à 19:11, Thorsten Blum a écrit :

Use `find . -type f -exec sed -i 's/\/the/g' {} +` to find all
occurrences of "the the" and replace them with a single "the".

In arch/arm/include/asm/unwind.h replace "the the" with "to the".

Changes only comments and documentation - no code changes.

Signed-off-by: Thorsten Blum 
Reviewed-by: Randy Dunlap 
Reviewed-by: Tyler Hicks 


...


--- a/drivers/scsi/isci/host.h
+++ b/drivers/scsi/isci/host.h
@@ -244,7 +244,7 @@ enum sci_controller_states {
SCIC_INITIALIZED,
  
  	/**

-* This state indicates the the controller is in the process of becoming


maybe: that the?


+* This state indicates the controller is in the process of becoming
 * ready (i.e. starting).  In this state no new IO operations are 
permitted.
 * This state is entered from the INITIALIZED state.
 */


...


diff --git a/io_uring/kbuf.c b/io_uring/kbuf.c
index 3aa16e27f509..503244e8470a 100644
--- a/io_uring/kbuf.c
+++ b/io_uring/kbuf.c
@@ -731,7 +731,7 @@ struct io_buffer_list *io_pbuf_get_bl(struct io_ring_ctx 
*ctx,
 * going away, if someone is trying to be sneaky. Look it up under rcu
 * so we know it's not going away, and attempt to grab a reference to
 * it. If the ref is already zero, then fail the mapping. If successful,
-* the caller will call io_put_bl() to drop the the reference at at the
+* the caller will call io_put_bl() to drop the reference at at the


Not strictly related to your patch, but "at at".


 * end. This may then safely free the buffer_list (and drop the pages)
 * at that point, vm_insert_pages() would've already grabbed the
 * necessary vma references.


...

CJ



[linux-next:master] BUILD REGRESSION 4118d9533ff3a5d16efb476a0d00afceecd92cf5

2024-04-11 Thread kernel test robot
tree/branch: 
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
branch HEAD: 4118d9533ff3a5d16efb476a0d00afceecd92cf5  Add linux-next specific 
files for 20240411

Error/Warning reports:

https://lore.kernel.org/oe-kbuild-all/202404120101.daqbazh3-...@intel.com

Error/Warning: (recently discovered and may have been fixed)

huge_memory.c:(.text+0x1778): undefined reference to `mthp_stats'
memory.c:(.text+0xee0): undefined reference to `mthp_stats'
sparc64-linux-ld: memory.c:(.text+0xee4): undefined reference to `mthp_stats'
sparc64-linux-ld: vmscan.c:(.text+0x4dc0): undefined reference to `mthp_stats'
vmscan.c:(.text+0x4db8): undefined reference to `mthp_stats'

Error/Warning ids grouped by kconfigs:

gcc_recent_errors
|-- alpha-allyesconfig
|   |-- 
drivers-gpu-drm-imx-ipuv3-imx-ldb.c:error:_sel-directive-output-may-be-truncated-writing-bytes-into-a-region-of-size-between-and
|   `-- 
drivers-gpu-drm-nouveau-nouveau_backlight.c:error:d-directive-output-may-be-truncated-writing-between-and-bytes-into-a-region-of-size
|-- arm-allmodconfig
|   |-- 
drivers-gpu-drm-imx-ipuv3-imx-ldb.c:error:_sel-directive-output-may-be-truncated-writing-bytes-into-a-region-of-size-between-and
|   `-- 
drivers-gpu-drm-nouveau-nouveau_backlight.c:error:d-directive-output-may-be-truncated-writing-between-and-bytes-into-a-region-of-size
|-- arm-allyesconfig
|   |-- 
drivers-gpu-drm-imx-ipuv3-imx-ldb.c:error:_sel-directive-output-may-be-truncated-writing-bytes-into-a-region-of-size-between-and
|   `-- 
drivers-gpu-drm-nouveau-nouveau_backlight.c:error:d-directive-output-may-be-truncated-writing-between-and-bytes-into-a-region-of-size
|-- csky-allmodconfig
|   |-- 
drivers-gpu-drm-imx-ipuv3-imx-ldb.c:error:_sel-directive-output-may-be-truncated-writing-bytes-into-a-region-of-size-between-and
|   |-- 
drivers-gpu-drm-nouveau-nouveau_backlight.c:error:d-directive-output-may-be-truncated-writing-between-and-bytes-into-a-region-of-size
|   |-- lib-..-mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|   |-- mm-damon-..-internal.h:warning:suggest-parentheses-around-in-operand-of
|   `-- mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|-- csky-allnoconfig
|   |-- lib-..-mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|   `-- mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|-- csky-allyesconfig
|   |-- 
drivers-gpu-drm-imx-ipuv3-imx-ldb.c:error:_sel-directive-output-may-be-truncated-writing-bytes-into-a-region-of-size-between-and
|   |-- 
drivers-gpu-drm-nouveau-nouveau_backlight.c:error:d-directive-output-may-be-truncated-writing-between-and-bytes-into-a-region-of-size
|   |-- lib-..-mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|   |-- mm-damon-..-internal.h:warning:suggest-parentheses-around-in-operand-of
|   `-- mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|-- csky-defconfig
|   |-- lib-..-mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|   `-- mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|-- csky-randconfig-001-20240411
|   |-- lib-..-mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|   `-- mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|-- csky-randconfig-002-20240411
|   |-- lib-..-mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|   `-- mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|-- i386-randconfig-141-20240411
|   |-- 
drivers-dma-fsl-edma-main.c-fsl_edma_xlate()-warn:inconsistent-returns-fsl_edma-fsl_edma_mutex-.
|   |-- 
drivers-pwm-core.c-pwm_cdev_ioctl()-warn:possible-spectre-second-half.-pwm
|   `-- 
drivers-pwm-core.c-pwm_cdev_ioctl()-warn:potential-spectre-issue-cdata-pwm-r
|-- loongarch-allmodconfig
|   |-- 
drivers-gpu-drm-imx-ipuv3-imx-ldb.c:error:_sel-directive-output-may-be-truncated-writing-bytes-into-a-region-of-size-between-and
|   `-- 
drivers-gpu-drm-nouveau-nouveau_backlight.c:error:d-directive-output-may-be-truncated-writing-between-and-bytes-into-a-region-of-size
|-- loongarch-allyesconfig
|   |-- 
drivers-gpu-drm-imx-ipuv3-imx-ldb.c:error:_sel-directive-output-may-be-truncated-writing-bytes-into-a-region-of-size-between-and
|   `-- 
drivers-gpu-drm-nouveau-nouveau_backlight.c:error:d-directive-output-may-be-truncated-writing-between-and-bytes-into-a-region-of-size
|-- microblaze-allmodconfig
|   |-- 
drivers-gpu-drm-imx-ipuv3-imx-ldb.c:error:_sel-directive-output-may-be-truncated-writing-bytes-into-a-region-of-size-between-and
|   `-- 
drivers-gpu-drm-nouveau-nouveau_backlight.c:error:d-directive-output-may-be-truncated-writing-between-and-bytes-into-a-region-of-size
|-- microblaze-allyesconfig
|   |-- 
drivers-gpu-drm-imx-ipuv3-imx-ldb.c:error:_sel-directive-output-may-be-truncated-writing-bytes-into-a-region-of-size-between-and
|   `-- 
drivers-gpu-drm-nouveau-nouveau_backlight.c:error:d-directive-output-may-be-truncated-writing-between-and-bytes-into-a-region-of-size
|-- openrisc-allyesconfig

Re: [PATCH 11/10] MAINTAINERS: update i915 and xe entries for include/drm/intel

2024-04-11 Thread Andi Shyti
Hi Jani,

On Thu, Apr 11, 2024 at 06:45:03PM +0300, Jani Nikula wrote:
> With all the Intel specific drm files under include/drm/intel, update
> the i915, xe, and the shared display entries. Do not discriminate based
> on file name pattern, just add the entire directory for all three
> entries.
> 
> Cc: Joonas Lahtinen 
> Cc: Lucas De Marchi 
> Cc: Oded Gabbay 
> Cc: Rodrigo Vivi 
> Cc: Thomas Hellström 
> Cc: Tvrtko Ursulin 
> Signed-off-by: Jani Nikula 

Reviewed-by: Andi Shyti 

Thanks,
Andi


Re: [PATCH 11/10] MAINTAINERS: update i915 and xe entries for include/drm/intel

2024-04-11 Thread Rodrigo Vivi
On Thu, Apr 11, 2024 at 06:45:03PM +0300, Jani Nikula wrote:
> With all the Intel specific drm files under include/drm/intel, update
> the i915, xe, and the shared display entries. Do not discriminate based
> on file name pattern, just add the entire directory for all three
> entries.
> 
> Cc: Joonas Lahtinen 
> Cc: Lucas De Marchi 
> Cc: Oded Gabbay 
> Cc: Rodrigo Vivi 
> Cc: Thomas Hellström 
> Cc: Tvrtko Ursulin 
> Signed-off-by: Jani Nikula 
> ---
>  MAINTAINERS | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/MAINTAINERS b/MAINTAINERS
> index e7a511b443af..a71254fdbf4c 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -10841,6 +10841,7 @@ S:Supported
>  F:   drivers/gpu/drm/i915/display/
>  F:   drivers/gpu/drm/xe/display/
>  F:   drivers/gpu/drm/xe/compat-i915-headers
> +F:   include/drm/intel/
>  
>  INTEL DRM I915 DRIVER (Meteor Lake, DG2 and older excluding Poulsbo, 
> Moorestown and derivative)
>  M:   Jani Nikula 
> @@ -10858,7 +10859,7 @@ F:
> Documentation/ABI/testing/sysfs-driver-intel-i915-hwmon
>  F:   Documentation/gpu/i915.rst
>  F:   drivers/gpu/drm/ci/xfails/i915*
>  F:   drivers/gpu/drm/i915/
> -F:   include/drm/i915*
> +F:   include/drm/intel/
>  F:   include/uapi/drm/i915_drm.h

Acked-by: Rodrigo Vivi 
on the whole series

>  
>  INTEL DRM XE DRIVER (Lunar Lake and newer)
> @@ -10875,7 +10876,7 @@ T:git 
> https://gitlab.freedesktop.org/drm/xe/kernel.git
>  F:   Documentation/ABI/testing/sysfs-driver-intel-xe-hwmon
>  F:   Documentation/gpu/xe/
>  F:   drivers/gpu/drm/xe/
> -F:   include/drm/xe*
> +F:   include/drm/intel/
>  F:   include/uapi/drm/xe_drm.h
>  
>  INTEL ETHERNET DRIVERS
> -- 
> 2.39.2
> 


[PULL] drm-xe-fixes

2024-04-11 Thread Lucas De Marchi

Hi Dave and Sima,

Please pull the drm-xe-fixes for this week targeting v6.9-rc4.

Just some trivial fixes, mostly from code analysis.  The last one
doesn't trigger any issue for now since the register is not used for
mmio. I decided to include it, because it would be a silent prereq of
any future commit making use of that register.

thanks
Lucas De Marchi

drm-xe-fixes-2024-04-11:
- Fix double display mutex initializations
- Fix u32 -> u64 implicit conversions
- Fix RING_CONTEXT_CONTROL not marked as masked
The following changes since commit fec50db7033ea478773b159e0e2efb135270e3b7:

  Linux 6.9-rc3 (2024-04-07 13:22:46 -0700)

are available in the Git repository at:

  https://gitlab.freedesktop.org/drm/xe/kernel.git tags/drm-xe-fixes-2024-04-11

for you to fetch changes up to f76646c83f028c62853c23dac49204232e903597:

  drm/xe: Label RING_CONTEXT_CONTROL as masked (2024-04-11 08:41:54 -0500)


- Fix double display mutex initializations
- Fix u32 -> u64 implicit conversions
- Fix RING_CONTEXT_CONTROL not marked as masked


Ashutosh Dixit (1):
  drm/xe: Label RING_CONTEXT_CONTROL as masked

Himal Prasad Ghimiray (1):
  drm/xe/xe_migrate: Cast to output precision before multiplying operands

Karthik Poosa (1):
  drm/xe/hwmon: Cast result to output precision on left shift of operand

Lucas De Marchi (1):
  drm/xe/display: Fix double mutex initialization

 drivers/gpu/drm/xe/display/xe_display.c  | 5 -
 drivers/gpu/drm/xe/regs/xe_engine_regs.h | 2 +-
 drivers/gpu/drm/xe/xe_hwmon.c| 4 ++--
 drivers/gpu/drm/xe/xe_lrc.c  | 5 ++---
 drivers/gpu/drm/xe/xe_migrate.c  | 8 
 5 files changed, 9 insertions(+), 15 deletions(-)


RE: [PATCH] drm/dp: correct struct member name in documentation

2024-04-11 Thread Golani, Mitulkumar Ajitkumar



> -Original Message-
> From: Vivi, Rodrigo 
> Sent: Wednesday, April 10, 2024 9:49 PM
> To: Golani, Mitulkumar Ajitkumar ;
> tzimmerm...@suse.de; mrip...@kernel.org;
> maarten.lankho...@linux.intel.com
> Cc: dri-de...@lists.freedesktop.org; intel-gfx@lists.freedesktop.org; 
> Nautiyal,
> Ankit K ; Nikula, Jani ;
> s...@canb.auug.org.au
> Subject: Re: [PATCH] drm/dp: correct struct member name in documentation
> 
> On Fri, Apr 05, 2024 at 12:21:59PM +0530, Mitul Golani wrote:
> > Correct struct member name to 'mode' instead of 'operation mode'
> > in 'drm_dp_as_sdp' structure description.
> >
> > Fixes: 0bbb8f594e33 ("drm/dp: Add Adaptive Sync SDP logging")
> 
> Probably good to avoid this 'Fixes:' tag, and only use that for real code 
> bugs.

Thank you for inputs.. I understood and I will take the future note. Please 
suggest if required to update the change with new revision or we can take care 
while merge.. ?

> 
> Cc: Maarten Lankhorst 
> Cc: Maxime Ripard 
> Cc: Thomas Zimmermann 
> 
> drm-misc folks, ack to get this through drm-intel-next, where the original 
> patch
> is?
> 
> Thanks,
> Rodrigo
> 
> > Cc: Mitul Golani 
> > Cc: Ankit Nautiyal 
> > Cc: Jani Nikula 
> > Signed-off-by: Mitul Golani 
> 
> > ---
> >  include/drm/display/drm_dp_helper.h | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/include/drm/display/drm_dp_helper.h
> > b/include/drm/display/drm_dp_helper.h
> > index baf9949ff96f..6799f57d635c 100644
> > --- a/include/drm/display/drm_dp_helper.h
> > +++ b/include/drm/display/drm_dp_helper.h
> > @@ -112,7 +112,7 @@ struct drm_dp_vsc_sdp {
> >   * @target_rr: Target Refresh
> >   * @duration_incr_ms: Successive frame duration increase
> >   * @duration_decr_ms: Successive frame duration decrease
> > - * @operation_mode: Adaptive Sync Operation Mode
> > + * @mode: Adaptive Sync Operation Mode
> >   */
> >  struct drm_dp_as_sdp {
> > unsigned char sdp_type;
> > --
> > 2.25.1
> >


Re: [PATCH] treewide: Fix common grammar mistake "the the"

2024-04-11 Thread Robin Murphy

On 11/04/2024 4:04 pm, Thorsten Blum wrote:

Use `find . -type f -exec sed -i 's/\/the/g' {} +` to find all
occurrences of "the the" and replace them with a single "the".


[...]

diff --git a/arch/arm/include/asm/unwind.h b/arch/arm/include/asm/unwind.h
index d60b09a5acfc..a75da9a01f91 100644
--- a/arch/arm/include/asm/unwind.h
+++ b/arch/arm/include/asm/unwind.h
@@ -10,7 +10,7 @@
  
  #ifndef __ASSEMBLY__
  
-/* Unwind reason code according the the ARM EABI documents */

+/* Unwind reason code according the ARM EABI documents */


Well, that's clearly still not right... repeated words aren't *always* 
redundant, sometimes they're meant to be other words ;)


Thanks,
Robin.


✓ Fi.CI.BAT: success for drm: move Intel drm headers to a subdirectory (rev3)

2024-04-11 Thread Patchwork
== Series Details ==

Series: drm: move Intel drm headers to a subdirectory (rev3)
URL   : https://patchwork.freedesktop.org/series/132264/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_14566 -> Patchwork_132264v3


Summary
---

  **SUCCESS**

  No regressions found.

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

Participating hosts (37 -> 38)
--

  Additional (4): bat-mtlp-8 fi-elk-e7500 bat-rpls-4 bat-arls-3 
  Missing(3): bat-dg1-7 bat-dg2-11 bat-arls-2 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@debugfs_test@basic-hwmon:
- bat-mtlp-8: NOTRUN -> [SKIP][1] ([i915#9318])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-mtlp-8/igt@debugfs_t...@basic-hwmon.html
- bat-arls-3: NOTRUN -> [SKIP][2] ([i915#9318])
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-arls-3/igt@debugfs_t...@basic-hwmon.html

  * igt@gem_lmem_swapping@parallel-random-engines:
- bat-arls-3: NOTRUN -> [SKIP][3] ([i915#10213]) +3 other tests skip
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-arls-3/igt@gem_lmem_swapp...@parallel-random-engines.html

  * igt@gem_lmem_swapping@verify-random:
- bat-mtlp-8: NOTRUN -> [SKIP][4] ([i915#4613]) +3 other tests skip
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-mtlp-8/igt@gem_lmem_swapp...@verify-random.html

  * igt@gem_mmap@basic:
- bat-mtlp-8: NOTRUN -> [SKIP][5] ([i915#4083])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-mtlp-8/igt@gem_m...@basic.html
- bat-arls-3: NOTRUN -> [SKIP][6] ([i915#4083])
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-arls-3/igt@gem_m...@basic.html

  * igt@gem_mmap_gtt@basic:
- bat-mtlp-8: NOTRUN -> [SKIP][7] ([i915#4077]) +2 other tests skip
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-mtlp-8/igt@gem_mmap_...@basic.html

  * igt@gem_render_tiled_blits@basic:
- bat-mtlp-8: NOTRUN -> [SKIP][8] ([i915#4079]) +1 other test skip
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-mtlp-8/igt@gem_render_tiled_bl...@basic.html
- bat-arls-3: NOTRUN -> [SKIP][9] ([i915#10197] / [i915#10211] / 
[i915#4079])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-arls-3/igt@gem_render_tiled_bl...@basic.html

  * igt@gem_tiled_blits@basic:
- bat-arls-3: NOTRUN -> [SKIP][10] ([i915#10196] / [i915#4077]) +2 
other tests skip
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-arls-3/igt@gem_tiled_bl...@basic.html

  * igt@gem_tiled_pread_basic:
- bat-arls-3: NOTRUN -> [SKIP][11] ([i915#10206] / [i915#4079])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-arls-3/igt@gem_tiled_pread_basic.html

  * igt@i915_pm_rps@basic-api:
- bat-mtlp-8: NOTRUN -> [SKIP][12] ([i915#6621])
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-mtlp-8/igt@i915_pm_...@basic-api.html
- bat-arls-3: NOTRUN -> [SKIP][13] ([i915#10209])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-arls-3/igt@i915_pm_...@basic-api.html

  * igt@kms_addfb_basic@addfb25-x-tiled-legacy:
- bat-arls-3: NOTRUN -> [SKIP][14] ([i915#10200]) +9 other tests 
skip
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-arls-3/igt@kms_addfb_ba...@addfb25-x-tiled-legacy.html

  * igt@kms_addfb_basic@addfb25-y-tiled-small-legacy:
- bat-mtlp-8: NOTRUN -> [SKIP][15] ([i915#5190])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-mtlp-8/igt@kms_addfb_ba...@addfb25-y-tiled-small-legacy.html

  * igt@kms_addfb_basic@basic-y-tiled-legacy:
- bat-mtlp-8: NOTRUN -> [SKIP][16] ([i915#4212]) +8 other tests skip
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-mtlp-8/igt@kms_addfb_ba...@basic-y-tiled-legacy.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- bat-arls-3: NOTRUN -> [SKIP][17] ([i915#10202]) +1 other test skip
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-arls-3/igt@kms_cursor_leg...@basic-busy-flip-before-cursor-atomic.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- bat-mtlp-8: NOTRUN -> [SKIP][18] ([i915#4213]) +1 other test skip
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v3/bat-mtlp-8/igt@kms_cursor_leg...@basic-busy-flip-before-cursor-legacy.html

  * igt@kms_dsc@dsc-basic:
- bat-arls-3: NOTRUN -> [SKIP][19] ([i915#9886])
   [19]: 

✗ Fi.CI.SPARSE: warning for drm: move Intel drm headers to a subdirectory (rev3)

2024-04-11 Thread Patchwork
== Series Details ==

Series: drm: move Intel drm headers to a subdirectory (rev3)
URL   : https://patchwork.freedesktop.org/series/132264/
State : warning

== Summary ==

Error: dim sparse failed
Sparse version: v0.6.2
Fast mode used, each commit won't be checked separately.
-
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'

✗ Fi.CI.CHECKPATCH: warning for drm: move Intel drm headers to a subdirectory (rev3)

2024-04-11 Thread Patchwork
== Series Details ==

Series: drm: move Intel drm headers to a subdirectory (rev3)
URL   : https://patchwork.freedesktop.org/series/132264/
State : warning

== Summary ==

Error: dim checkpatch failed
6b9aabd29159 drm/i915: use system include for drm headers
895cd387cdbc drm: move intel-gtt.h under include/drm/intel
-:82: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does 
MAINTAINERS need updating?
#82: 
rename from include/drm/intel-gtt.h

total: 0 errors, 1 warnings, 0 checks, 40 lines checked
6055229c1c5b drm: move i915_gsc_proxy_mei_interface.h under include/drm/intel
-:58: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does 
MAINTAINERS need updating?
#58: 
rename from include/drm/i915_gsc_proxy_mei_interface.h

total: 0 errors, 1 warnings, 0 checks, 24 lines checked
0fbcc72aba8b drm: move i915_component.h under include/drm/intel
-:138: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does 
MAINTAINERS need updating?
#138: 
rename from include/drm/i915_component.h

total: 0 errors, 1 warnings, 0 checks, 80 lines checked
7e0c9dcba464 drm: move intel_lpe_audio.h under include/drm/intel
-:45: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does 
MAINTAINERS need updating?
#45: 
rename from include/drm/intel_lpe_audio.h

total: 0 errors, 1 warnings, 0 checks, 24 lines checked
19bb3752dd65 drm: move i915_drm.h under include/drm/intel
-:128: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does 
MAINTAINERS need updating?
#128: 
rename from include/drm/i915_drm.h

total: 0 errors, 1 warnings, 0 checks, 64 lines checked
d547ad30ba83 drm: move i915_pxp_tee_interface.h under include/drm/intel
-:43: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does 
MAINTAINERS need updating?
#43: 
rename from include/drm/i915_pxp_tee_interface.h

total: 0 errors, 1 warnings, 0 checks, 16 lines checked
4e6569dffaaf drm: move i915_pciids.h under include/drm/intel
-:69: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does 
MAINTAINERS need updating?
#69: 
rename from include/drm/i915_pciids.h

total: 0 errors, 1 warnings, 0 checks, 32 lines checked
c998b92bcaa2 drm: move xe_pciids.h under include/drm/intel
-:29: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does 
MAINTAINERS need updating?
#29: 
rename from include/drm/xe_pciids.h

total: 0 errors, 1 warnings, 0 checks, 8 lines checked
2bf484b61dd1 drm: move i915_hdcp_interface.h under include/drm/intel
-:82: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does 
MAINTAINERS need updating?
#82: 
rename from include/drm/i915_hdcp_interface.h

total: 0 errors, 1 warnings, 0 checks, 40 lines checked
577a915bf313 MAINTAINERS: update i915 and xe entries for include/drm/intel




Re: [PATCH] treewide: Fix common grammar mistake "the the"

2024-04-11 Thread Johannes Berg
On Thu, 2024-04-11 at 17:04 +0200, Thorsten Blum wrote:
> Use `find . -type f -exec sed -i 's/\/the/g' {} +` to find all
> occurrences of "the the" and replace them with a single "the".

I estimated that this misses at least ~50 instances split across lines:

$ git grep -ih -A1 -e 'the$'|grep -vi 'the$'|grep -E -- '^[^a-zA-Z0-9]*the '|wc 
-l
51

And a bunch that have more than one space:

$ git grep -E '\'|wc -l
20

So not sure you should claim "all" ;-)

johannes


[PATCH 11/10] MAINTAINERS: update i915 and xe entries for include/drm/intel

2024-04-11 Thread Jani Nikula
With all the Intel specific drm files under include/drm/intel, update
the i915, xe, and the shared display entries. Do not discriminate based
on file name pattern, just add the entire directory for all three
entries.

Cc: Joonas Lahtinen 
Cc: Lucas De Marchi 
Cc: Oded Gabbay 
Cc: Rodrigo Vivi 
Cc: Thomas Hellström 
Cc: Tvrtko Ursulin 
Signed-off-by: Jani Nikula 
---
 MAINTAINERS | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index e7a511b443af..a71254fdbf4c 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -10841,6 +10841,7 @@ S:  Supported
 F: drivers/gpu/drm/i915/display/
 F: drivers/gpu/drm/xe/display/
 F: drivers/gpu/drm/xe/compat-i915-headers
+F: include/drm/intel/
 
 INTEL DRM I915 DRIVER (Meteor Lake, DG2 and older excluding Poulsbo, 
Moorestown and derivative)
 M: Jani Nikula 
@@ -10858,7 +10859,7 @@ F:  
Documentation/ABI/testing/sysfs-driver-intel-i915-hwmon
 F: Documentation/gpu/i915.rst
 F: drivers/gpu/drm/ci/xfails/i915*
 F: drivers/gpu/drm/i915/
-F: include/drm/i915*
+F: include/drm/intel/
 F: include/uapi/drm/i915_drm.h
 
 INTEL DRM XE DRIVER (Lunar Lake and newer)
@@ -10875,7 +10876,7 @@ T:  git 
https://gitlab.freedesktop.org/drm/xe/kernel.git
 F: Documentation/ABI/testing/sysfs-driver-intel-xe-hwmon
 F: Documentation/gpu/xe/
 F: drivers/gpu/drm/xe/
-F: include/drm/xe*
+F: include/drm/intel/
 F: include/uapi/drm/xe_drm.h
 
 INTEL ETHERNET DRIVERS
-- 
2.39.2



[PATCH v2] drm: move i915_component.h under include/drm/intel

2024-04-11 Thread Jani Nikula
Clean up the top level include/drm directory by grouping all the Intel
specific files under a common subdirectory.

v2: Also change Documentation/gpu/i915.rst (Andi)

Cc: Daniel Vetter 
Cc: Dave Airlie 
Cc: Lucas De Marchi 
Cc: Tomas Winkler 
Cc: Jaroslav Kysela 
Cc: Takashi Iwai 
Signed-off-by: Jani Nikula 
---
 Documentation/gpu/i915.rst   | 2 +-
 drivers/gpu/drm/i915/display/intel_audio.c   | 2 +-
 drivers/gpu/drm/i915/display/intel_hdcp.c| 2 +-
 drivers/gpu/drm/i915/gt/uc/intel_gsc_proxy.c | 2 +-
 drivers/gpu/drm/i915/pxp/intel_pxp_tee.c | 2 +-
 drivers/gpu/drm/xe/xe_gsc_proxy.c| 2 +-
 drivers/misc/mei/gsc_proxy/mei_gsc_proxy.c   | 2 +-
 drivers/misc/mei/hdcp/mei_hdcp.c | 2 +-
 drivers/misc/mei/pxp/mei_pxp.c   | 2 +-
 include/drm/{ => intel}/i915_component.h | 0
 include/sound/hdaudio.h  | 2 +-
 11 files changed, 10 insertions(+), 10 deletions(-)
 rename include/drm/{ => intel}/i915_component.h (100%)

diff --git a/Documentation/gpu/i915.rst b/Documentation/gpu/i915.rst
index 0ca1550fd9dc..fcb7a74506a2 100644
--- a/Documentation/gpu/i915.rst
+++ b/Documentation/gpu/i915.rst
@@ -150,7 +150,7 @@ High Definition Audio
 .. kernel-doc:: drivers/gpu/drm/i915/display/intel_audio.c
:internal:
 
-.. kernel-doc:: include/drm/i915_component.h
+.. kernel-doc:: include/drm/intel/i915_component.h
:internal:
 
 Intel HDMI LPE Audio Support
diff --git a/drivers/gpu/drm/i915/display/intel_audio.c 
b/drivers/gpu/drm/i915/display/intel_audio.c
index 07e0c73204f3..53951c50b504 100644
--- a/drivers/gpu/drm/i915/display/intel_audio.c
+++ b/drivers/gpu/drm/i915/display/intel_audio.c
@@ -26,7 +26,7 @@
 
 #include 
 #include 
-#include 
+#include 
 
 #include "i915_drv.h"
 #include "intel_atomic.h"
diff --git a/drivers/gpu/drm/i915/display/intel_hdcp.c 
b/drivers/gpu/drm/i915/display/intel_hdcp.c
index d5ed4c7dfbc0..183ea437d623 100644
--- a/drivers/gpu/drm/i915/display/intel_hdcp.c
+++ b/drivers/gpu/drm/i915/display/intel_hdcp.c
@@ -13,7 +13,7 @@
 #include 
 
 #include 
-#include 
+#include 
 
 #include "i915_drv.h"
 #include "i915_reg.h"
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_gsc_proxy.c 
b/drivers/gpu/drm/i915/gt/uc/intel_gsc_proxy.c
index e7619d81353c..d8edd7c054c8 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_gsc_proxy.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_gsc_proxy.c
@@ -5,7 +5,7 @@
 
 #include 
 
-#include 
+#include 
 #include 
 
 #include "gt/intel_gt.h"
diff --git a/drivers/gpu/drm/i915/pxp/intel_pxp_tee.c 
b/drivers/gpu/drm/i915/pxp/intel_pxp_tee.c
index b00d6c280159..051b6cdcf721 100644
--- a/drivers/gpu/drm/i915/pxp/intel_pxp_tee.c
+++ b/drivers/gpu/drm/i915/pxp/intel_pxp_tee.c
@@ -6,7 +6,7 @@
 #include 
 
 #include 
-#include 
+#include 
 
 #include "gem/i915_gem_lmem.h"
 #include "gt/intel_gt_print.h"
diff --git a/drivers/gpu/drm/xe/xe_gsc_proxy.c 
b/drivers/gpu/drm/xe/xe_gsc_proxy.c
index ea7b5ffb8954..a278d08b343c 100644
--- a/drivers/gpu/drm/xe/xe_gsc_proxy.c
+++ b/drivers/gpu/drm/xe/xe_gsc_proxy.c
@@ -9,7 +9,7 @@
 #include 
 
 #include 
-#include 
+#include 
 #include 
 
 #include "abi/gsc_proxy_commands_abi.h"
diff --git a/drivers/misc/mei/gsc_proxy/mei_gsc_proxy.c 
b/drivers/misc/mei/gsc_proxy/mei_gsc_proxy.c
index d5fbaf5d0c8e..f52fe23a6c0b 100644
--- a/drivers/misc/mei/gsc_proxy/mei_gsc_proxy.c
+++ b/drivers/misc/mei/gsc_proxy/mei_gsc_proxy.c
@@ -17,7 +17,7 @@
 #include 
 #include 
 #include 
-#include 
+#include 
 #include 
 
 /**
diff --git a/drivers/misc/mei/hdcp/mei_hdcp.c b/drivers/misc/mei/hdcp/mei_hdcp.c
index f8759a6c9ed3..e43ea536c947 100644
--- a/drivers/misc/mei/hdcp/mei_hdcp.c
+++ b/drivers/misc/mei/hdcp/mei_hdcp.c
@@ -23,7 +23,7 @@
 #include 
 #include 
 #include 
-#include 
+#include 
 #include 
 
 #include "mei_hdcp.h"
diff --git a/drivers/misc/mei/pxp/mei_pxp.c b/drivers/misc/mei/pxp/mei_pxp.c
index b1e4c23b31a3..5a7a4d8b0e23 100644
--- a/drivers/misc/mei/pxp/mei_pxp.c
+++ b/drivers/misc/mei/pxp/mei_pxp.c
@@ -19,7 +19,7 @@
 #include 
 #include 
 #include 
-#include 
+#include 
 #include 
 
 #include "mei_pxp.h"
diff --git a/include/drm/i915_component.h b/include/drm/intel/i915_component.h
similarity index 100%
rename from include/drm/i915_component.h
rename to include/drm/intel/i915_component.h
diff --git a/include/sound/hdaudio.h b/include/sound/hdaudio.h
index a73d7f34f4e5..00d1ab6936dd 100644
--- a/include/sound/hdaudio.h
+++ b/include/sound/hdaudio.h
@@ -18,7 +18,7 @@
 #include 
 #include 
 #include 
-#include 
+#include 
 
 /* codec node id */
 typedef u16 hda_nid_t;
-- 
2.39.2



Re: [PATCH v2] drm: move i915_drm.h under include/drm/intel

2024-04-11 Thread Jani Nikula
On Thu, 11 Apr 2024, Andi Shyti  wrote:
> Hi Jani,
>
> On Wed, Apr 10, 2024 at 01:26:15PM +0300, Jani Nikula wrote:
>> Clean up the top level include/drm directory by grouping all the Intel
>> specific files under a common subdirectory.
>> 
>> v2: Also fix comment in intel_pci_config.h (Ilpo)
>> 
>> Cc: Daniel Vetter 
>> Cc: Dave Airlie 
>> Cc: Lucas De Marchi 
>> Cc: Bjorn Helgaas 
>> Cc: Hans de Goede 
>> Cc: Ilpo Järvinen 
>> Signed-off-by: Jani Nikula 
>> ---
>>  arch/x86/kernel/early-quirks.c | 2 +-
>>  drivers/gpu/drm/i915/gem/i915_gem_stolen.c | 2 +-
>>  drivers/gpu/drm/i915/gt/intel_ggtt.c   | 2 +-
>>  drivers/gpu/drm/i915/gt/intel_rps.c| 2 +-
>>  drivers/gpu/drm/i915/intel_pci_config.h| 2 +-
>>  drivers/gpu/drm/i915/soc/intel_gmch.c  | 2 +-
>>  drivers/gpu/drm/xe/xe_ggtt.c   | 2 +-
>>  drivers/platform/x86/intel_ips.c   | 2 +-
>>  include/drm/{ => intel}/i915_drm.h | 0
>>  9 files changed, 8 insertions(+), 8 deletions(-)
>>  rename include/drm/{ => intel}/i915_drm.h (100%)
>
> Am I seeing wrong or are you missing a bunch of them, like
> Documentation, MAINTAINERS and many more?

uapi/drm/i915_drm.h is different!

But good point about MAINTAINERS, I'll add a separate patch on top.

BR,
Jani.

>
> Andi

-- 
Jani Nikula, Intel


✓ Fi.CI.BAT: success for Add support for partial mapping (rev3)

2024-04-11 Thread Patchwork
== Series Details ==

Series: Add support for partial mapping (rev3)
URL   : https://patchwork.freedesktop.org/series/131817/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_14566 -> Patchwork_131817v3


Summary
---

  **SUCCESS**

  No regressions found.

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

Participating hosts (37 -> 38)
--

  Additional (4): bat-mtlp-8 bat-kbl-2 bat-rpls-4 bat-arls-3 
  Missing(3): fi-glk-j4005 fi-apl-guc fi-bsw-n3050 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@debugfs_test@basic-hwmon:
- bat-mtlp-8: NOTRUN -> [SKIP][1] ([i915#9318])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-mtlp-8/igt@debugfs_t...@basic-hwmon.html
- bat-arls-3: NOTRUN -> [SKIP][2] ([i915#9318])
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-arls-3/igt@debugfs_t...@basic-hwmon.html

  * igt@fbdev@info:
- bat-kbl-2:  NOTRUN -> [SKIP][3] ([i915#1849])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-kbl-2/igt@fb...@info.html

  * igt@gem_lmem_swapping@parallel-random-engines:
- bat-kbl-2:  NOTRUN -> [SKIP][4] +39 other tests skip
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-kbl-2/igt@gem_lmem_swapp...@parallel-random-engines.html
- bat-arls-3: NOTRUN -> [SKIP][5] ([i915#10213]) +3 other tests skip
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-arls-3/igt@gem_lmem_swapp...@parallel-random-engines.html

  * igt@gem_lmem_swapping@verify-random:
- bat-mtlp-8: NOTRUN -> [SKIP][6] ([i915#4613]) +3 other tests skip
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-mtlp-8/igt@gem_lmem_swapp...@verify-random.html

  * igt@gem_mmap@basic:
- bat-mtlp-8: NOTRUN -> [SKIP][7] ([i915#4083])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-mtlp-8/igt@gem_m...@basic.html
- bat-arls-3: NOTRUN -> [SKIP][8] ([i915#4083])
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-arls-3/igt@gem_m...@basic.html

  * igt@gem_mmap_gtt@basic:
- bat-mtlp-8: NOTRUN -> [SKIP][9] ([i915#4077]) +2 other tests skip
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-mtlp-8/igt@gem_mmap_...@basic.html

  * igt@gem_render_tiled_blits@basic:
- bat-mtlp-8: NOTRUN -> [SKIP][10] ([i915#4079]) +1 other test skip
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-mtlp-8/igt@gem_render_tiled_bl...@basic.html
- bat-arls-3: NOTRUN -> [SKIP][11] ([i915#10197] / [i915#10211] / 
[i915#4079])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-arls-3/igt@gem_render_tiled_bl...@basic.html

  * igt@gem_tiled_blits@basic:
- bat-arls-3: NOTRUN -> [SKIP][12] ([i915#10196] / [i915#4077]) +2 
other tests skip
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-arls-3/igt@gem_tiled_bl...@basic.html

  * igt@gem_tiled_pread_basic:
- bat-arls-3: NOTRUN -> [SKIP][13] ([i915#10206] / [i915#4079])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-arls-3/igt@gem_tiled_pread_basic.html

  * igt@i915_pm_rps@basic-api:
- bat-mtlp-8: NOTRUN -> [SKIP][14] ([i915#6621])
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-mtlp-8/igt@i915_pm_...@basic-api.html
- bat-arls-3: NOTRUN -> [SKIP][15] ([i915#10209])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-arls-3/igt@i915_pm_...@basic-api.html

  * igt@i915_selftest@live@hangcheck:
- bat-dg2-8:  [PASS][16] -> [ABORT][17] ([i915#9840])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14566/bat-dg2-8/igt@i915_selftest@l...@hangcheck.html
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-dg2-8/igt@i915_selftest@l...@hangcheck.html

  * igt@kms_addfb_basic@addfb25-x-tiled-legacy:
- bat-arls-3: NOTRUN -> [SKIP][18] ([i915#10200]) +9 other tests 
skip
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-arls-3/igt@kms_addfb_ba...@addfb25-x-tiled-legacy.html

  * igt@kms_addfb_basic@addfb25-y-tiled-small-legacy:
- bat-mtlp-8: NOTRUN -> [SKIP][19] ([i915#5190])
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-mtlp-8/igt@kms_addfb_ba...@addfb25-y-tiled-small-legacy.html

  * igt@kms_addfb_basic@basic-y-tiled-legacy:
- bat-mtlp-8: NOTRUN -> [SKIP][20] ([i915#4212]) +8 other tests skip
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131817v3/bat-mtlp-8/igt@kms_addfb_ba...@basic-y-tiled-legacy.html

  * 

Re: [PATCH] treewide: Fix common grammar mistake "the the"

2024-04-11 Thread Dan Carpenter
On Thu, Apr 11, 2024 at 05:04:40PM +0200, Thorsten Blum wrote:
> Use `find . -type f -exec sed -i 's/\/the/g' {} +` to find all
> occurrences of "the the" and replace them with a single "the".
> 
> Changes only comments and documentation - no code changes.
> 
> Signed-off-by: Thorsten Blum 
> ---

It's tricky to know which tree a patch like this would go through.  We
used to have a trivial tree for this stuff but I guess that didn't work.
It's possible that it could go through linux-doc, but probably it has to
go as a set of patches through each of the trees in the CC list.

regards,
dan carpenter



Re: [PATCH 05/10] drm: move intel_lpe_audio.h under include/drm/intel

2024-04-11 Thread Jani Nikula
On Thu, 11 Apr 2024, Andi Shyti  wrote:
> Hi Jani,
>
> On Wed, Apr 10, 2024 at 01:05:12PM +0300, Jani Nikula wrote:
>> Clean up the top level include/drm directory by grouping all the Intel
>> specific files under a common subdirectory.
>> 
>> Cc: Daniel Vetter 
>> Cc: Dave Airlie 
>> Cc: Lucas De Marchi 
>> Cc: Jaroslav Kysela 
>> Cc: Takashi Iwai 
>> Signed-off-by: Jani Nikula 
>> ---
>>  drivers/gpu/drm/i915/display/intel_hdmi.c  | 2 +-
>>  drivers/gpu/drm/i915/display/intel_lpe_audio.c | 2 +-
>>  include/drm/{ => intel}/intel_lpe_audio.h  | 0
>
> strange thing here is that we have two different
> intel_lpe_audio.h. Can't they be merged?

Not so strange. The one in i915 is internal to i915, and the one in
include/drm is shared with sound/x86/intel_hdmi_audio.c.

> And, perhaps, we could also think of dropping the intel_ prefix
> for the files inside drm/intel/.

This series was scripted, so I didn't go into manual stuff like that
(yet). :)

BR,
Jani.

>
> In any case,
>
> Reviewed-by: Andi Shyti 
>
> Thanks,
> Andi

-- 
Jani Nikula, Intel


✗ Fi.CI.CHECKPATCH: warning for Add support for partial mapping (rev3)

2024-04-11 Thread Patchwork
== Series Details ==

Series: Add support for partial mapping (rev3)
URL   : https://patchwork.freedesktop.org/series/131817/
State : warning

== Summary ==

Error: dim checkpatch failed
734f6a3e8287 drm/i915/gem: Increment vma offset when mapping fb objects
a1d766621566 drm/i915/gem: Calculate object page offset for partial memory 
mapping
-:67: WARNING:LONG_LINE: line length of 108 exceeds 100 columns
#67: FILE: drivers/gpu/drm/i915/gem/i915_gem_mman.c:411:
+  area->vm_start + ((vma->gtt_view.partial.offset 
- obj_offset) << PAGE_SHIFT),

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




Re: [PATCH] treewide: Fix common grammar mistake "the the"

2024-04-11 Thread Randy Dunlap



On 4/11/24 8:04 AM, Thorsten Blum wrote:
> Use `find . -type f -exec sed -i 's/\/the/g' {} +` to find all
> occurrences of "the the" and replace them with a single "the".
> 
> Changes only comments and documentation - no code changes.
> 
> Signed-off-by: Thorsten Blum 
> ---
>  Documentation/trace/histogram.rst | 2 +-
>  arch/arm/Kconfig  | 4 ++--
>  arch/arm/include/asm/unwind.h | 2 +-
>  arch/arm64/Kconfig| 2 +-
>  arch/arm64/kernel/entry-ftrace.S  | 2 +-
>  arch/s390/kernel/perf_cpum_sf.c   | 2 +-
>  arch/s390/kernel/sthyi.c  | 2 +-
>  drivers/accessibility/speakup/speakup_soft.c  | 2 +-
>  drivers/gpu/drm/i915/display/intel_crt.c  | 2 +-
>  drivers/gpu/drm/i915/i915_request.c   | 2 +-
>  drivers/mailbox/Kconfig   | 2 +-
>  drivers/net/wireless/intel/iwlwifi/fw/api/tx.h| 4 ++--
>  drivers/net/wireless/intel/iwlwifi/mvm/phy-ctxt.c | 2 +-
>  drivers/scsi/bfa/bfa_fcs_rport.c  | 2 +-
>  drivers/scsi/fcoe/fcoe_ctlr.c | 2 +-
>  drivers/scsi/isci/host.h  | 2 +-
>  drivers/scsi/isci/remote_device.h | 2 +-
>  drivers/scsi/isci/remote_node_context.h   | 2 +-
>  drivers/scsi/isci/task.c  | 2 +-
>  fs/afs/flock.c| 2 +-
>  fs/ecryptfs/keystore.c| 2 +-
>  fs/netfs/direct_read.c| 2 +-
>  fs/netfs/direct_write.c   | 2 +-
>  fs/overlayfs/super.c  | 2 +-
>  include/uapi/asm-generic/fcntl.h  | 2 +-
>  io_uring/kbuf.c   | 2 +-
>  lib/zstd/common/fse_decompress.c  | 2 +-
>  lib/zstd/decompress/zstd_decompress_block.c   | 2 +-
>  scripts/coccinelle/misc/badty.cocci   | 2 +-
>  tools/perf/Documentation/perf-diff.txt| 2 +-
>  30 files changed, 32 insertions(+), 32 deletions(-)
> 

Reviewed-by: Randy Dunlap 

Thanks.

-- 
#Randy


Re: [PATCH v2 2/2] drm/i915/gem: Calculate object page offset for partial memory mapping

2024-04-11 Thread Andi Shyti
Hi Nirmoy,

On Thu, Apr 11, 2024 at 04:18:41PM +0200, Nirmoy Das wrote:
> Hi Andi,
> 
> On 3/29/2024 5:39 PM, Andi Shyti wrote:
> > To enable partial memory mapping of GPU virtual memory, it's
> > necessary to introduce an offset to the object's memory
> > (obj->mm.pages) scatterlist. This adjustment compensates for
> > instances when userspace mappings do not start from the beginning
> > of the object.
> 
> I quickly tried 
> https://gitlab.freedesktop.org/llandwerlin/igt-gpu-tools/-/tree/wip/gem_mmap_offset-partial-unmap?ref_type=heads
> that didn't work for GTT.
> 
> Please make sure a proper IGT test is available for this as this looks very
> risky change.

Yes, I have igt's ready and a new v3.

Thanks for trying this out.

Andi


Re: [PATCH v2] drm: move i915_drm.h under include/drm/intel

2024-04-11 Thread Andi Shyti
Hi Jani,

On Wed, Apr 10, 2024 at 01:26:15PM +0300, Jani Nikula wrote:
> Clean up the top level include/drm directory by grouping all the Intel
> specific files under a common subdirectory.
> 
> v2: Also fix comment in intel_pci_config.h (Ilpo)
> 
> Cc: Daniel Vetter 
> Cc: Dave Airlie 
> Cc: Lucas De Marchi 
> Cc: Bjorn Helgaas 
> Cc: Hans de Goede 
> Cc: Ilpo Järvinen 
> Signed-off-by: Jani Nikula 
> ---
>  arch/x86/kernel/early-quirks.c | 2 +-
>  drivers/gpu/drm/i915/gem/i915_gem_stolen.c | 2 +-
>  drivers/gpu/drm/i915/gt/intel_ggtt.c   | 2 +-
>  drivers/gpu/drm/i915/gt/intel_rps.c| 2 +-
>  drivers/gpu/drm/i915/intel_pci_config.h| 2 +-
>  drivers/gpu/drm/i915/soc/intel_gmch.c  | 2 +-
>  drivers/gpu/drm/xe/xe_ggtt.c   | 2 +-
>  drivers/platform/x86/intel_ips.c   | 2 +-
>  include/drm/{ => intel}/i915_drm.h | 0
>  9 files changed, 8 insertions(+), 8 deletions(-)
>  rename include/drm/{ => intel}/i915_drm.h (100%)

Am I seeing wrong or are you missing a bunch of them, like
Documentation, MAINTAINERS and many more?

Andi


Re: [PATCH 05/10] drm: move intel_lpe_audio.h under include/drm/intel

2024-04-11 Thread Andi Shyti
Hi Jani,

On Wed, Apr 10, 2024 at 01:05:12PM +0300, Jani Nikula wrote:
> Clean up the top level include/drm directory by grouping all the Intel
> specific files under a common subdirectory.
> 
> Cc: Daniel Vetter 
> Cc: Dave Airlie 
> Cc: Lucas De Marchi 
> Cc: Jaroslav Kysela 
> Cc: Takashi Iwai 
> Signed-off-by: Jani Nikula 
> ---
>  drivers/gpu/drm/i915/display/intel_hdmi.c  | 2 +-
>  drivers/gpu/drm/i915/display/intel_lpe_audio.c | 2 +-
>  include/drm/{ => intel}/intel_lpe_audio.h  | 0

strange thing here is that we have two different
intel_lpe_audio.h. Can't they be merged?

And, perhaps, we could also think of dropping the intel_ prefix
for the files inside drm/intel/.

In any case,

Reviewed-by: Andi Shyti 

Thanks,
Andi


Re: [PATCH v2 2/2] drm/i915/gem: Calculate object page offset for partial memory mapping

2024-04-11 Thread Nirmoy Das

Hi Andi,

On 3/29/2024 5:39 PM, Andi Shyti wrote:

To enable partial memory mapping of GPU virtual memory, it's
necessary to introduce an offset to the object's memory
(obj->mm.pages) scatterlist. This adjustment compensates for
instances when userspace mappings do not start from the beginning
of the object.


I quickly tried 
https://gitlab.freedesktop.org/llandwerlin/igt-gpu-tools/-/tree/wip/gem_mmap_offset-partial-unmap?ref_type=heads 
that didn't work for GTT.


Please make sure a proper IGT test is available for this as this looks 
very risky change.



Regards,

Nirmoy



Based on a patch by Chris Wilson.

Signed-off-by: Andi Shyti 
Cc: Chris Wilson 
Cc: Lionel Landwerlin 
---
  drivers/gpu/drm/i915/gem/i915_gem_mman.c | 10 +++---
  drivers/gpu/drm/i915/i915_mm.c   | 12 +++-
  drivers/gpu/drm/i915/i915_mm.h   |  3 ++-
  3 files changed, 20 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/i915/gem/i915_gem_mman.c 
b/drivers/gpu/drm/i915/gem/i915_gem_mman.c
index ce10dd259812..9bd2b4c2e501 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_mman.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_mman.c
@@ -252,6 +252,7 @@ static vm_fault_t vm_fault_cpu(struct vm_fault *vmf)
struct vm_area_struct *area = vmf->vma;
struct i915_mmap_offset *mmo = area->vm_private_data;
struct drm_i915_gem_object *obj = mmo->obj;
+   unsigned long obj_offset;
resource_size_t iomap;
int err;
  
@@ -273,10 +274,11 @@ static vm_fault_t vm_fault_cpu(struct vm_fault *vmf)

iomap -= obj->mm.region->region.start;
}
  
+	obj_offset = area->vm_pgoff - drm_vma_node_start(>vma_node);

/* PTEs are revoked in obj->ops->put_pages() */
err = remap_io_sg(area,
  area->vm_start, area->vm_end - area->vm_start,
- obj->mm.pages->sgl, iomap);
+ obj->mm.pages->sgl, obj_offset, iomap);
  
  	if (area->vm_flags & VM_WRITE) {

GEM_BUG_ON(!i915_gem_object_has_pinned_pages(obj));
@@ -302,14 +304,16 @@ static vm_fault_t vm_fault_gtt(struct vm_fault *vmf)
struct i915_ggtt *ggtt = to_gt(i915)->ggtt;
bool write = area->vm_flags & VM_WRITE;
struct i915_gem_ww_ctx ww;
+   unsigned long obj_offset;
intel_wakeref_t wakeref;
struct i915_vma *vma;
pgoff_t page_offset;
int srcu;
int ret;
  
-	/* We don't use vmf->pgoff since that has the fake offset */

+   obj_offset = area->vm_pgoff - drm_vma_node_start(>vma_node);
page_offset = (vmf->address - area->vm_start) >> PAGE_SHIFT;
+   page_offset += obj_offset;
  
  	trace_i915_gem_object_fault(obj, page_offset, true, write);
  
@@ -404,7 +408,7 @@ static vm_fault_t vm_fault_gtt(struct vm_fault *vmf)
  
  	/* Finally, remap it using the new GTT offset */

ret = remap_io_mapping(area,
-  area->vm_start + (vma->gtt_view.partial.offset 
<< PAGE_SHIFT),
+  area->vm_start + ((vma->gtt_view.partial.offset - 
obj_offset) << PAGE_SHIFT),
   (ggtt->gmadr.start + i915_ggtt_offset(vma)) >> 
PAGE_SHIFT,
   min_t(u64, vma->size, area->vm_end - 
area->vm_start),
   >iomap);
diff --git a/drivers/gpu/drm/i915/i915_mm.c b/drivers/gpu/drm/i915/i915_mm.c
index 7998bc74ab49..f5c97a620962 100644
--- a/drivers/gpu/drm/i915/i915_mm.c
+++ b/drivers/gpu/drm/i915/i915_mm.c
@@ -122,13 +122,15 @@ int remap_io_mapping(struct vm_area_struct *vma,
   * @addr: target user address to start at
   * @size: size of map area
   * @sgl: Start sg entry
+ * @offset: offset from the start of the page
   * @iobase: Use stored dma address offset by this address or pfn if -1
   *
   *  Note: this is only safe if the mm semaphore is held when called.
   */
  int remap_io_sg(struct vm_area_struct *vma,
unsigned long addr, unsigned long size,
-   struct scatterlist *sgl, resource_size_t iobase)
+   struct scatterlist *sgl, unsigned long offset,
+   resource_size_t iobase)
  {
struct remap_pfn r = {
.mm = vma->vm_mm,
@@ -141,6 +143,14 @@ int remap_io_sg(struct vm_area_struct *vma,
/* We rely on prevalidation of the io-mapping to skip track_pfn(). */
GEM_BUG_ON((vma->vm_flags & EXPECTED_FLAGS) != EXPECTED_FLAGS);
  
+	while (offset >= sg_dma_len(r.sgt.sgp) >> PAGE_SHIFT) {

+   offset -= sg_dma_len(r.sgt.sgp) >> PAGE_SHIFT;
+   r.sgt = __sgt_iter(__sg_next(r.sgt.sgp), use_dma(iobase));
+   if (!r.sgt.sgp)
+   return -EINVAL;
+   }
+   r.sgt.curr = offset << PAGE_SHIFT;
+
if (!use_dma(iobase))
flush_cache_range(vma, addr, size);
  
diff --git a/drivers/gpu/drm/i915/i915_mm.h b/drivers/gpu/drm/i915/i915_mm.h

index 04c8974d822b..69f9351b1a1c 100644
--- 

Re: [PATCH 04/10] drm: move i915_component.h under include/drm/intel

2024-04-11 Thread Andi Shyti
Hi Jani,

On Wed, Apr 10, 2024 at 01:05:11PM +0300, Jani Nikula wrote:
> Clean up the top level include/drm directory by grouping all the Intel
> specific files under a common subdirectory.
> 
> Cc: Daniel Vetter 
> Cc: Dave Airlie 
> Cc: Lucas De Marchi 
> Cc: Tomas Winkler 
> Cc: Jaroslav Kysela 
> Cc: Takashi Iwai 
> Signed-off-by: Jani Nikula 
> ---
>  drivers/gpu/drm/i915/display/intel_audio.c   | 2 +-
>  drivers/gpu/drm/i915/display/intel_hdcp.c| 2 +-
>  drivers/gpu/drm/i915/gt/uc/intel_gsc_proxy.c | 2 +-
>  drivers/gpu/drm/i915/pxp/intel_pxp_tee.c | 2 +-
>  drivers/gpu/drm/xe/xe_gsc_proxy.c| 2 +-
>  drivers/misc/mei/gsc_proxy/mei_gsc_proxy.c   | 2 +-
>  drivers/misc/mei/hdcp/mei_hdcp.c | 2 +-
>  drivers/misc/mei/pxp/mei_pxp.c   | 2 +-
>  include/drm/{ => intel}/i915_component.h | 0
>  include/sound/hdaudio.h  | 2 +-

Please update also Documentation/gpu/i915.rst.

Andi


Re: [PATCH 03/10] drm: move i915_gsc_proxy_mei_interface.h under include/drm/intel

2024-04-11 Thread Andi Shyti
Hi Jani,

On Wed, Apr 10, 2024 at 01:05:10PM +0300, Jani Nikula wrote:
> Clean up the top level include/drm directory by grouping all the Intel
> specific files under a common subdirectory.
> 
> Cc: Daniel Vetter 
> Cc: Dave Airlie 
> Cc: Lucas De Marchi 
> Cc: Tomas Winkler 
> Signed-off-by: Jani Nikula 

Reviewed-by: Andi Shyti 

Thanks,
Andi


RE: [PATCH 01/13] spi: add auxiliary device for intel dg spi

2024-04-11 Thread Usyskin, Alexander
> -Original Message-
> From: Krzysztof Kozlowski 
> Sent: Friday, March 29, 2024 15:47
> To: Usyskin, Alexander ; Miquel Raynal
> ; Richard Weinberger ; Vignesh
> Raghavendra ; Jani Nikula ;
> Joonas Lahtinen ; Vivi, Rodrigo
> 
> Cc: Lubart, Vitaly ; linux-...@lists.infradead.org; 
> intel-
> g...@lists.freedesktop.org
> Subject: Re: [PATCH 01/13] spi: add auxiliary device for intel dg spi
> 
> On 28/03/2024 13:22, Alexander Usyskin wrote:
> > Add auxilary bus device structure for
> > Intel Discrete Graphics SPI device.
> >
> > Signed-off-by: Alexander Usyskin 
> > ---
> >  include/linux/intel_dg_spi_aux.h | 27 +++
> 
> There is no user of this header. Please add it in the patch which uses it.
> 
This header describes auxiliary device that bridges between
i915 or Xe driver with spi-intel-dg driver.
This header included in both drivers; this is the reason this header
has its own patch.

> It will also justify why you use this or other subject prefix. Now, it
> looks just wrong: it's not a patch for spi.
> 
Can you suggest what subject prefix to use?
Like: "auxiliary:"? Something else?

> If it was a patch for spi, then:
> 
> Please use scripts/get_maintainers.pl to get a list of necessary people
> and lists to CC (and consider --no-git-fallback argument). It might
> happen, that command when run on an older kernel, gives you outdated
> entries. Therefore please be sure you base your patches on recent Linux
> kernel.
> 
Sorry for that, will run this script to pick the fresh maintainers list and
push v2 with a new list.


> Best regards,
> Krzysztof

-- 
Thanks,
Sasha




Re: [PATCH V2] drm/ttm: remove unused paramter

2024-04-11 Thread Christian König

Am 01.04.24 um 05:04 schrieb jesse.zh...@amd.com:

From: Jesse Zhang 

remove the unsed the paramter in the function
ttm_bo_bounce_temp_buffer and ttm_bo_add_move_fence.
  V2:rebase the patch on top of drm-misc-next (Christian)


And pushed to drm-misc-next.

Thanks,
Christian.



Signed-off-by: Jesse Zhang 
Reviewed-by: Christian König 
---
  drivers/gpu/drm/ttm/ttm_bo.c | 8 +++-
  1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/ttm/ttm_bo.c b/drivers/gpu/drm/ttm/ttm_bo.c
index e059b1e1b13b..6396dece0db1 100644
--- a/drivers/gpu/drm/ttm/ttm_bo.c
+++ b/drivers/gpu/drm/ttm/ttm_bo.c
@@ -402,7 +402,6 @@ void ttm_bo_put(struct ttm_buffer_object *bo)
  EXPORT_SYMBOL(ttm_bo_put);
  
  static int ttm_bo_bounce_temp_buffer(struct ttm_buffer_object *bo,

-struct ttm_resource **mem,
 struct ttm_operation_ctx *ctx,
 struct ttm_place *hop)
  {
@@ -469,7 +468,7 @@ static int ttm_bo_evict(struct ttm_buffer_object *bo,
if (ret != -EMULTIHOP)
break;
  
-		ret = ttm_bo_bounce_temp_buffer(bo, _mem, ctx, );

+   ret = ttm_bo_bounce_temp_buffer(bo, ctx, );
} while (!ret);
  
  	if (ret) {

@@ -698,7 +697,6 @@ EXPORT_SYMBOL(ttm_bo_unpin);
   */
  static int ttm_bo_add_move_fence(struct ttm_buffer_object *bo,
 struct ttm_resource_manager *man,
-struct ttm_resource *mem,
 bool no_wait_gpu)
  {
struct dma_fence *fence;
@@ -787,7 +785,7 @@ static int ttm_bo_alloc_resource(struct ttm_buffer_object 
*bo,
if (ret)
continue;
  
-		ret = ttm_bo_add_move_fence(bo, man, *res, ctx->no_wait_gpu);

+   ret = ttm_bo_add_move_fence(bo, man, ctx->no_wait_gpu);
if (unlikely(ret)) {
ttm_resource_free(bo, res);
if (ret == -EBUSY)
@@ -894,7 +892,7 @@ int ttm_bo_validate(struct ttm_buffer_object *bo,
  bounce:
ret = ttm_bo_handle_move_mem(bo, res, false, ctx, );
if (ret == -EMULTIHOP) {
-   ret = ttm_bo_bounce_temp_buffer(bo, , ctx, );
+   ret = ttm_bo_bounce_temp_buffer(bo, ctx, );
/* try and move to final place now. */
if (!ret)
goto bounce;




Re: [PATCH] drm/i915: Don't enable hwmon for selftests

2024-04-11 Thread Ville Syrjälä
On Wed, Apr 10, 2024 at 10:09:32PM -0700, Dixit, Ashutosh wrote:
> On Wed, 10 Apr 2024 04:42:46 -0700, Ville Syrjälä wrote:
> >
> > On Tue, Apr 09, 2024 at 09:28:55PM -0700, Ashutosh Dixit wrote:
> > > There are no hwmon selftests so there is no need to enable hwmon for
> > > selftests. So enable hwmon only for real driver load.
> > >
> > > Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/10366
> > > Signed-off-by: Ashutosh Dixit 
> >
> > Why are we adding duct tape instead of fixing it properly?
> 
> Yeah pretty much what I said here myself:
> 
> https://patchwork.freedesktop.org/patch/588585/?series=132243=1#comment_1071014
> 
> The issue has been difficult to root-cause. My last effort can be seen here:
> 
> https://patchwork.freedesktop.org/patch/584859/?series=131630=1#comment_1067888
> 
> Though Badal went further and saw that occasionaly the memory would get
> freed first and hwmon would get unregistered as much as 2 seconds later,
> which will cause the crash if anyone touched hwmon sysfs in those final 2
> seconds. So not sure what is causing that 2 second delay.

Sounds like someone holding a sysfs file/etc. open. Should be trivial
to do that by hand and see what happens.

> 
> I am not sure if it is worth root-causing further. I am pretty sure if we
> get rid of the devm_ stuff, that will fix the issue too. So if this patch
> is not acceptable, we could just go that route (get rid of devm_ in hwmon).
> 
> Thanks.
> --
> Ashutosh
> 
> > > ---
> > >  drivers/gpu/drm/i915/i915_driver.c | 16 ++--
> > >  1 file changed, 14 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/drivers/gpu/drm/i915/i915_driver.c 
> > > b/drivers/gpu/drm/i915/i915_driver.c
> > > index 9ee902d5b72c..6fa6d2c8109f 100644
> > > --- a/drivers/gpu/drm/i915/i915_driver.c
> > > +++ b/drivers/gpu/drm/i915/i915_driver.c
> > > @@ -94,6 +94,7 @@
> > >  #include "i915_memcpy.h"
> > >  #include "i915_perf.h"
> > >  #include "i915_query.h"
> > > +#include "i915_selftest.h"
> > >  #include "i915_suspend.h"
> > >  #include "i915_switcheroo.h"
> > >  #include "i915_sysfs.h"
> > > @@ -589,6 +590,15 @@ static void i915_driver_hw_remove(struct 
> > > drm_i915_private *dev_priv)
> > >   pci_disable_msi(pdev);
> > >  }
> > >
> > > +static bool is_selftest(void)
> > > +{
> > > +#if IS_ENABLED(CONFIG_DRM_I915_SELFTEST)
> > > + return i915_selftest.live || i915_selftest.perf || i915_selftest.mock;
> > > +#else
> > > + return false;
> > > +#endif
> > > +}
> > > +
> > >  /**
> > >   * i915_driver_register - register the driver with the rest of the system
> > >   * @dev_priv: device private
> > > @@ -624,7 +634,8 @@ static void i915_driver_register(struct 
> > > drm_i915_private *dev_priv)
> > >
> > >   intel_pxp_debugfs_register(dev_priv->pxp);
> > >
> > > - i915_hwmon_register(dev_priv);
> > > + if (!is_selftest())
> > > + i915_hwmon_register(dev_priv);
> > >
> > >   intel_display_driver_register(dev_priv);
> > >
> > > @@ -660,7 +671,8 @@ static void i915_driver_unregister(struct 
> > > drm_i915_private *dev_priv)
> > >   for_each_gt(gt, dev_priv, i)
> > >   intel_gt_driver_unregister(gt);
> > >
> > > - i915_hwmon_unregister(dev_priv);
> > > + if (!is_selftest())
> > > + i915_hwmon_unregister(dev_priv);
> > >
> > >   i915_perf_unregister(dev_priv);
> > >   i915_pmu_unregister(dev_priv);
> > > --
> > > 2.41.0
> >
> > --
> > Ville Syrjälä
> > Intel

-- 
Ville Syrjälä
Intel


RE: [PATCH v4 4/4] drm/i915/display: tie DMC wakelock to DC5/6 state transitions

2024-04-11 Thread Shankar, Uma



> -Original Message-
> From: Coelho, Luciano 
> Sent: Thursday, April 4, 2024 5:12 PM
> To: intel-gfx@lists.freedesktop.org
> Cc: intel...@lists.freedesktop.org; Shankar, Uma ;
> ville.syrj...@linux.intel.com; Nikula, Jani 
> Subject: [PATCH v4 4/4] drm/i915/display: tie DMC wakelock to DC5/6 state
> transitions
> 
> We only need DMC wakelocks when we allow DC5 and DC6 states.  Add the calls
> to enable and disable DMC wakelock accordingly.

Looks Good to me.
Reviewed-by: Uma Shankar 

> Signed-off-by: Luca Coelho 
> ---
>  drivers/gpu/drm/i915/display/intel_display_power_well.c | 7 +++
>  drivers/gpu/drm/i915/display/intel_dmc.c| 4 
>  2 files changed, 11 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display_power_well.c
> b/drivers/gpu/drm/i915/display/intel_display_power_well.c
> index e4de40228997..7f4b7602cf02 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_power_well.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_power_well.c
> @@ -17,6 +17,7 @@
>  #include "intel_dkl_phy.h"
>  #include "intel_dkl_phy_regs.h"
>  #include "intel_dmc.h"
> +#include "intel_dmc_wl.h"
>  #include "intel_dp_aux_regs.h"
>  #include "intel_dpio_phy.h"
>  #include "intel_dpll.h"
> @@ -821,6 +822,8 @@ void gen9_enable_dc5(struct drm_i915_private
> *dev_priv)
>   intel_de_rmw(dev_priv, GEN8_CHICKEN_DCPR_1,
>0, SKL_SELECT_ALTERNATE_DC_EXIT);
> 
> + intel_dmc_wl_enable(dev_priv);
> +
>   gen9_set_dc_state(dev_priv, DC_STATE_EN_UPTO_DC5);  }
> 
> @@ -850,6 +853,8 @@ void skl_enable_dc6(struct drm_i915_private *dev_priv)
>   intel_de_rmw(dev_priv, GEN8_CHICKEN_DCPR_1,
>0, SKL_SELECT_ALTERNATE_DC_EXIT);
> 
> + intel_dmc_wl_enable(dev_priv);
> +
>   gen9_set_dc_state(dev_priv, DC_STATE_EN_UPTO_DC6);  }
> 
> @@ -970,6 +975,8 @@ void gen9_disable_dc_states(struct drm_i915_private
> *dev_priv)
>   if (!HAS_DISPLAY(dev_priv))
>   return;
> 
> + intel_dmc_wl_disable(dev_priv);
> +
>   intel_cdclk_get_cdclk(dev_priv, _config);
>   /* Can't read out voltage_level so can't use intel_cdclk_changed() */
>   drm_WARN_ON(_priv->drm,
> diff --git a/drivers/gpu/drm/i915/display/intel_dmc.c
> b/drivers/gpu/drm/i915/display/intel_dmc.c
> index 3fa851b5c7a6..b20cc018b9a8 100644
> --- a/drivers/gpu/drm/i915/display/intel_dmc.c
> +++ b/drivers/gpu/drm/i915/display/intel_dmc.c
> @@ -550,6 +550,8 @@ void intel_dmc_disable_program(struct
> drm_i915_private *i915)
>   pipedmc_clock_gating_wa(i915, true);
>   disable_all_event_handlers(i915);
>   pipedmc_clock_gating_wa(i915, false);
> +
> + intel_dmc_wl_disable(i915);
>  }
> 
>  void assert_dmc_loaded(struct drm_i915_private *i915) @@ -1079,6 +1081,8
> @@ void intel_dmc_suspend(struct drm_i915_private *i915)
>   if (dmc)
>   flush_work(>work);
> 
> + intel_dmc_wl_disable(i915);
> +
>   /* Drop the reference held in case DMC isn't loaded. */
>   if (!intel_dmc_has_payload(i915))
>   intel_dmc_runtime_pm_put(i915);
> --
> 2.39.2



RE: [PATCH v4 2/4] drm/i915/display: don't allow DMC wakelock on older hardware

2024-04-11 Thread Shankar, Uma



> -Original Message-
> From: Coelho, Luciano 
> Sent: Thursday, April 4, 2024 5:12 PM
> To: intel-gfx@lists.freedesktop.org
> Cc: intel...@lists.freedesktop.org; Shankar, Uma ;
> ville.syrj...@linux.intel.com; Nikula, Jani 
> Subject: [PATCH v4 2/4] drm/i915/display: don't allow DMC wakelock on older
> hardware
> 
> Only allow running DMC wakelock code if the display version is 20 or greater. 
>  Also
> check if DMC is loaded before enabling.

Looks Good to me.
Reviewed-by: Uma Shankar 

> Signed-off-by: Luca Coelho 
> ---
>  .../drm/i915/display/intel_display_driver.c   |  1 +
>  drivers/gpu/drm/i915/display/intel_dmc_wl.c   | 26 +++
>  2 files changed, 27 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display_driver.c
> b/drivers/gpu/drm/i915/display/intel_display_driver.c
> index 87dd07e0d138..e4015557af6a 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_driver.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_driver.c
> @@ -198,6 +198,7 @@ void intel_display_driver_early_probe(struct
> drm_i915_private *i915)
>   intel_dpll_init_clock_hook(i915);
>   intel_init_display_hooks(i915);
>   intel_fdi_init_hook(i915);
> + intel_dmc_wl_init(i915);
>  }
> 
>  /* part #1: call before irq install */
> diff --git a/drivers/gpu/drm/i915/display/intel_dmc_wl.c
> b/drivers/gpu/drm/i915/display/intel_dmc_wl.c
> index 3d7cf47321c2..065652fc475c 100644
> --- a/drivers/gpu/drm/i915/display/intel_dmc_wl.c
> +++ b/drivers/gpu/drm/i915/display/intel_dmc_wl.c
> @@ -6,6 +6,7 @@
>  #include 
> 
>  #include "intel_de.h"
> +#include "intel_dmc.h"
>  #include "intel_dmc_regs.h"
>  #include "intel_dmc_wl.h"
> 
> @@ -110,10 +111,23 @@ static bool intel_dmc_wl_check_range(u32 address)
>   return wl_needed;
>  }
> 
> +static bool __intel_dmc_wl_supported(struct drm_i915_private *i915) {
> + if (DISPLAY_VER(i915) < 20 ||
> + !intel_dmc_has_payload(i915))
> + return false;
> +
> + return true;
> +}
> +
>  void intel_dmc_wl_init(struct drm_i915_private *i915)  {
>   struct intel_dmc_wl *wl = >display.wl;
> 
> + /* don't call __intel_dmc_wl_supported(), DMC is not loaded yet */
> + if (DISPLAY_VER(i915) < 20)
> + return;
> +
>   INIT_DELAYED_WORK(>work, intel_dmc_wl_work);
>   spin_lock_init(>lock);
>   refcount_set(>refcount, 0);
> @@ -124,6 +138,9 @@ void intel_dmc_wl_enable(struct drm_i915_private
> *i915)
>   struct intel_dmc_wl *wl = >display.wl;
>   unsigned long flags;
> 
> + if (!__intel_dmc_wl_supported(i915))
> + return;
> +
>   spin_lock_irqsave(>lock, flags);
> 
>   if (wl->enabled)
> @@ -148,6 +165,9 @@ void intel_dmc_wl_disable(struct drm_i915_private
> *i915)
>   struct intel_dmc_wl *wl = >display.wl;
>   unsigned long flags;
> 
> + if (!__intel_dmc_wl_supported(i915))
> + return;
> +
>   flush_delayed_work(>work);
> 
>   spin_lock_irqsave(>lock, flags);
> @@ -171,6 +191,9 @@ void intel_dmc_wl_get(struct drm_i915_private *i915,
> i915_reg_t reg)
>   struct intel_dmc_wl *wl = >display.wl;
>   unsigned long flags;
> 
> + if (!__intel_dmc_wl_supported(i915))
> + return;
> +
>   if (!intel_dmc_wl_check_range(reg.reg))
>   return;
> 
> @@ -215,6 +238,9 @@ void intel_dmc_wl_put(struct drm_i915_private *i915,
> i915_reg_t reg)
>   struct intel_dmc_wl *wl = >display.wl;
>   unsigned long flags;
> 
> + if (!__intel_dmc_wl_supported(i915))
> + return;
> +
>   if (!intel_dmc_wl_check_range(reg.reg))
>   return;
> 
> --
> 2.39.2



RE: [PATCH v4 1/4] drm/i915/display: add support for DMC wakelocks

2024-04-11 Thread Shankar, Uma



> -Original Message-
> From: Coelho, Luciano 
> Sent: Thursday, April 4, 2024 5:12 PM
> To: intel-gfx@lists.freedesktop.org
> Cc: intel...@lists.freedesktop.org; Shankar, Uma ;
> ville.syrj...@linux.intel.com; Nikula, Jani 
> Subject: [PATCH v4 1/4] drm/i915/display: add support for DMC wakelocks
> 
> In order to reduce the DC5->DC2 restore time, wakelocks have been introduced
> in DMC so the driver can tell it when registers and other memory areas are 
> going
> to be accessed and keep their respective blocks awake.
> 
> Implement this in the driver by adding the concept of DMC wakelocks.
> When the driver needs to access memory which lies inside pre-defined ranges, 
> it
> will tell DMC to set the wakelock, access the memory, then wait for a while 
> and
> clear the wakelock.
> 
> The wakelock state is protected in the driver with spinlocks to prevent
> concurrency issues.
> 
> BSpec: 71583
> Signed-off-by: Luca Coelho 
> ---
>  drivers/gpu/drm/i915/Makefile |   1 +
>  drivers/gpu/drm/i915/display/intel_de.h   |  97 ++-
>  .../gpu/drm/i915/display/intel_display_core.h |   2 +
>  drivers/gpu/drm/i915/display/intel_dmc_regs.h |   6 +
>  drivers/gpu/drm/i915/display/intel_dmc_wl.c   | 238 ++
>  drivers/gpu/drm/i915/display/intel_dmc_wl.h   |  31 +++
>  drivers/gpu/drm/xe/Makefile   |   1 +
>  7 files changed, 368 insertions(+), 8 deletions(-)  create mode 100644
> drivers/gpu/drm/i915/display/intel_dmc_wl.c
>  create mode 100644 drivers/gpu/drm/i915/display/intel_dmc_wl.h
> 
> diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
> index af9e871daf1d..7cad944b825c 100644
> --- a/drivers/gpu/drm/i915/Makefile
> +++ b/drivers/gpu/drm/i915/Makefile
> @@ -266,6 +266,7 @@ i915-y += \
>   display/intel_display_rps.o \
>   display/intel_display_wa.o \
>   display/intel_dmc.o \
> + display/intel_dmc_wl.o \
>   display/intel_dpio_phy.o \
>   display/intel_dpll.o \
>   display/intel_dpll_mgr.o \
> diff --git a/drivers/gpu/drm/i915/display/intel_de.h
> b/drivers/gpu/drm/i915/display/intel_de.h
> index ba7a1c6ebc2a..0a0fba81e7af 100644
> --- a/drivers/gpu/drm/i915/display/intel_de.h
> +++ b/drivers/gpu/drm/i915/display/intel_de.h
> @@ -13,52 +13,125 @@
>  static inline u32
>  intel_de_read(struct drm_i915_private *i915, i915_reg_t reg)  {
> - return intel_uncore_read(>uncore, reg);
> + u32 val;
> +
> + intel_dmc_wl_get(i915, reg);
> +
> + val = intel_uncore_read(>uncore, reg);
> +
> + intel_dmc_wl_put(i915, reg);
> +
> + return val;
>  }
> 
>  static inline u8
>  intel_de_read8(struct drm_i915_private *i915, i915_reg_t reg)  {
> - return intel_uncore_read8(>uncore, reg);
> + u8 val;
> +
> + intel_dmc_wl_get(i915, reg);
> +
> + val = intel_uncore_read8(>uncore, reg);
> +
> + intel_dmc_wl_put(i915, reg);
> +
> + return val;
>  }
> 
>  static inline u64
>  intel_de_read64_2x32(struct drm_i915_private *i915,
>i915_reg_t lower_reg, i915_reg_t upper_reg)  {
> - return intel_uncore_read64_2x32(>uncore, lower_reg,
> upper_reg);
> + u64 val;
> +
> + intel_dmc_wl_get(i915, lower_reg);
> + intel_dmc_wl_get(i915, upper_reg);
> +
> + val = intel_uncore_read64_2x32(>uncore, lower_reg, upper_reg);
> +
> + intel_dmc_wl_put(i915, upper_reg);
> + intel_dmc_wl_put(i915, lower_reg);
> +
> + return val;
>  }
> 
>  static inline void
>  intel_de_posting_read(struct drm_i915_private *i915, i915_reg_t reg)  {
> + intel_dmc_wl_get(i915, reg);
> +
>   intel_uncore_posting_read(>uncore, reg);
> +
> + intel_dmc_wl_put(i915, reg);
>  }
> 
>  static inline void
>  intel_de_write(struct drm_i915_private *i915, i915_reg_t reg, u32 val)  {
> + intel_dmc_wl_get(i915, reg);
> +
>   intel_uncore_write(>uncore, reg, val);
> +
> + intel_dmc_wl_put(i915, reg);
>  }
> 
>  static inline u32
> -intel_de_rmw(struct drm_i915_private *i915, i915_reg_t reg, u32 clear, u32 
> set)
> +__intel_de_rmw_nowl(struct drm_i915_private *i915, i915_reg_t reg,
> + u32 clear, u32 set)
>  {
>   return intel_uncore_rmw(>uncore, reg, clear, set);  }
> 
> +static inline u32
> +intel_de_rmw(struct drm_i915_private *i915, i915_reg_t reg, u32 clear,
> +u32 set) {
> + u32 val;
> +
> + intel_dmc_wl_get(i915, reg);
> +
> + val = __intel_de_rmw_nowl(i915, reg, clear, set);
> +
> + intel_dmc_wl_put(i915, reg);
> +
> + return val;
> +}
> +
> +static inline int
> +__intel_wait_for_register_nowl(struct drm_i915_private *i915, i915_reg_t reg,
> +u32 mask, u32 value, unsigned int timeout) {
> + return intel_wait_for_register(>uncore, reg, mask,
> +value, timeout);
> +}
> +
>  static inline int
>  intel_de_wait(struct drm_i915_private *i915, i915_reg_t reg,
> u32 mask, u32 value, unsigned int timeout)  {
> - return 

Re: [PATCH] drm/i915/psr: Use crtc_state->port_clock instead of intel_dp->link_rate

2024-04-11 Thread Hogander, Jouni
On Thu, 2024-04-11 at 05:32 +, Manna, Animesh wrote:
> 
> 
> > -Original Message-
> > From: Hogander, Jouni 
> > Sent: Tuesday, April 9, 2024 2:28 PM
> > To: intel-gfx@lists.freedesktop.org
> > Cc: Manna, Animesh ; Hogander, Jouni
> > 
> > Subject: [PATCH] drm/i915/psr: Use crtc_state->port_clock instead
> > of
> > intel_dp->link_rate
> > 
> > Intel_dp->link_rate is not yet set at this point. Instead use
> > crtc_state-
> > > port_clock.
> > 
> > Fixes: 0dd21f836983 ("drm/i915/psr: Silence period and lfps half
> > cycle")
> > Signed-off-by: Jouni Högander 
> 
> Reviewed-by: Animesh Manna 

Thank you Animesh for your review. This is now pushed to drm-intel-
next.

BR,

Jouni Högander

> 
> > ---
> >  drivers/gpu/drm/i915/display/intel_psr.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/drivers/gpu/drm/i915/display/intel_psr.c
> > b/drivers/gpu/drm/i915/display/intel_psr.c
> > index 7af974bb41ca..f5b5a9ae 100644
> > --- a/drivers/gpu/drm/i915/display/intel_psr.c
> > +++ b/drivers/gpu/drm/i915/display/intel_psr.c
> > @@ -1276,7 +1276,7 @@ static int
> > _lnl_compute_aux_less_alpm_params(struct intel_dp *intel_dp,
> > aux_less_wake_lines = intel_usecs_to_scanlines(_state-
> > > hw.adjusted_mode,
> >   
> > aux_less_wake_time);
> > 
> > -   if (!_lnl_get_silence_period_and_lfps_half_cycle(intel_dp-
> > >link_rate,
> > +   if
> > +(!_lnl_get_silence_period_and_lfps_half_cycle(crtc_state-
> > >port_clock,
> > 
> > _period,
> > 
> > _half_cycle))
> > return false;
> > --
> > 2.34.1
> 



RE: ✗ Fi.CI.BAT: failure for drm/edid & drm/i915: vendor and product id logging improvements (rev3)

2024-04-11 Thread Illipilli, TejasreeX
Hi,

https://patchwork.freedesktop.org/series/131414/ - Re-reported.

Thanks,
Tejasree

-Original Message-
From: Nikula, Jani  
Sent: Wednesday, April 10, 2024 3:38 PM
To: Patchwork ; LGCI Bug Filing 

Cc: intel-gfx@lists.freedesktop.org
Subject: Re: ✗ Fi.CI.BAT: failure for drm/edid & drm/i915: vendor and product 
id logging improvements (rev3)

On Wed, 10 Apr 2024, Patchwork  wrote:
> == Series Details ==
>
> Series: drm/edid & drm/i915: vendor and product id logging improvements (rev3)
> URL   : https://patchwork.freedesktop.org/series/131414/
> State : failure
>
> == Summary ==
>
> CI Bug Log - changes from CI_DRM_14552 -> Patchwork_131414v3 
> 
>
> Summary
> ---
>
>   **FAILURE**
>
>   Serious unknown changes coming with Patchwork_131414v3 absolutely need to be
>   verified manually.
>   
>   If you think the reported changes have nothing to do with the changes
>   introduced in Patchwork_131414v3, please notify your bug team 
> (i915-ci-in...@lists.freedesktop.org) 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_131414v3/index.html
>
> Participating hosts (37 -> 34)
> --
>
>   Additional (2): fi-rkl-11600 fi-cfl-8109u 
>   Missing(5): bat-dg1-7 fi-elk-e7500 fi-blb-e6850 bat-jsl-1 bat-arls-3 
>
> Possible new issues
> ---
>
>   Here are the unknown changes that may have been introduced in 
> Patchwork_131414v3:
>
> ### IGT changes ###
>
>  Possible regressions 
>
>   * igt@i915_selftest@live@gt_timelines:
> - bat-arls-2: [PASS][1] -> [ABORT][2]
>[1]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/bat-arls-2/igt@i915_selftest@live@gt_timelines.html
>[2]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/bat-arls-2
> /igt@i915_selftest@live@gt_timelines.html

I don't see how this could result from the changes. Please re-report.

Thanks,
Jani.

>
>   
> Known issues
> 
>
>   Here are the changes found in Patchwork_131414v3 that come from known 
> issues:
>
> ### IGT changes ###
>
>  Issues hit 
>
>   * igt@debugfs_test@basic-hwmon:
> - fi-rkl-11600:   NOTRUN -> [SKIP][3] ([i915#9318])
>[3]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-rkl-116
> 00/igt@debugfs_t...@basic-hwmon.html
>
>   * igt@gem_huc_copy@huc-copy:
> - fi-cfl-8109u:   NOTRUN -> [SKIP][4] ([i915#2190])
>[4]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-cfl-8109u/igt@gem_huc_c...@huc-copy.html
> - fi-rkl-11600:   NOTRUN -> [SKIP][5] ([i915#2190])
>[5]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-rkl-116
> 00/igt@gem_huc_c...@huc-copy.html
>
>   * igt@gem_lmem_swapping@basic@lmem0:
> - bat-dg2-8:  [PASS][6] -> [FAIL][7] ([i915#10378])
>[6]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/bat-dg2-8/igt@gem_lmem_swapping@ba...@lmem0.html
>[7]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/bat-dg2-8/
> igt@gem_lmem_swapping@ba...@lmem0.html
>
>   * igt@gem_lmem_swapping@parallel-random-engines:
> - fi-rkl-11600:   NOTRUN -> [SKIP][8] ([i915#4613]) +3 other tests 
> skip
>[8]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-rkl-116
> 00/igt@gem_lmem_swapp...@parallel-random-engines.html
>
>   * igt@gem_lmem_swapping@verify-random:
> - fi-cfl-8109u:   NOTRUN -> [SKIP][9] ([i915#4613]) +3 other tests 
> skip
>[9]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-cfl-810
> 9u/igt@gem_lmem_swapp...@verify-random.html
>
>   * igt@gem_tiled_pread_basic:
> - fi-rkl-11600:   NOTRUN -> [SKIP][10] ([i915#3282])
>[10]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-rkl-116
> 00/igt@gem_tiled_pread_basic.html
>
>   * igt@i915_selftest@live@gt_engines:
> - bat-adls-6: [PASS][11] -> [TIMEOUT][12] ([i915#10026])
>[11]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/bat-adls-6/igt@i915_selftest@live@gt_engines.html
>[12]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/bat-adls-6
> /igt@i915_selftest@live@gt_engines.html
>
>   * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
> - fi-rkl-11600:   NOTRUN -> [SKIP][13] ([i915#4103]) +1 other test 
> skip
>[13]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-rkl-116
> 00/igt@kms_cursor_leg...@basic-busy-flip-before-cursor-legacy.html
>
>   * igt@kms_dsc@dsc-basic:
> - fi-rkl-11600:   NOTRUN -> [SKIP][14] ([i915#3555] / [i915#3840])
>[14]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-rkl-116
> 00/igt@kms_...@dsc-basic.html
>
>   * igt@kms_force_connector_basic@force-load-detect:
> - fi-rkl-11600:   NOTRUN -> [SKIP][15]
>[15]: 
> 

✓ Fi.CI.BAT: success for drm/edid & drm/i915: vendor and product id logging improvements (rev3)

2024-04-11 Thread Patchwork
== Series Details ==

Series: drm/edid & drm/i915: vendor and product id logging improvements (rev3)
URL   : https://patchwork.freedesktop.org/series/131414/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_14552 -> Patchwork_131414v3


Summary
---

  **SUCCESS**

  No regressions found.

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

Participating hosts (37 -> 34)
--

  Additional (2): fi-rkl-11600 fi-cfl-8109u 
  Missing(5): bat-dg1-7 fi-elk-e7500 fi-blb-e6850 bat-jsl-1 bat-arls-3 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@debugfs_test@basic-hwmon:
- fi-rkl-11600:   NOTRUN -> [SKIP][1] ([i915#9318])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-rkl-11600/igt@debugfs_t...@basic-hwmon.html

  * igt@gem_huc_copy@huc-copy:
- fi-cfl-8109u:   NOTRUN -> [SKIP][2] ([i915#2190])
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-cfl-8109u/igt@gem_huc_c...@huc-copy.html
- fi-rkl-11600:   NOTRUN -> [SKIP][3] ([i915#2190])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-rkl-11600/igt@gem_huc_c...@huc-copy.html

  * igt@gem_lmem_swapping@basic@lmem0:
- bat-dg2-8:  [PASS][4] -> [FAIL][5] ([i915#10378])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/bat-dg2-8/igt@gem_lmem_swapping@ba...@lmem0.html
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/bat-dg2-8/igt@gem_lmem_swapping@ba...@lmem0.html

  * igt@gem_lmem_swapping@parallel-random-engines:
- fi-rkl-11600:   NOTRUN -> [SKIP][6] ([i915#4613]) +3 other tests skip
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-rkl-11600/igt@gem_lmem_swapp...@parallel-random-engines.html

  * igt@gem_lmem_swapping@verify-random:
- fi-cfl-8109u:   NOTRUN -> [SKIP][7] ([i915#4613]) +3 other tests skip
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-cfl-8109u/igt@gem_lmem_swapp...@verify-random.html

  * igt@gem_tiled_pread_basic:
- fi-rkl-11600:   NOTRUN -> [SKIP][8] ([i915#3282])
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-rkl-11600/igt@gem_tiled_pread_basic.html

  * igt@i915_selftest@live@gt_engines:
- bat-adls-6: [PASS][9] -> [TIMEOUT][10] ([i915#10026])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/bat-adls-6/igt@i915_selftest@live@gt_engines.html
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/bat-adls-6/igt@i915_selftest@live@gt_engines.html

  * igt@i915_selftest@live@gt_timelines:
- bat-arls-2: [PASS][11] -> [ABORT][12] ([i915#10798])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/bat-arls-2/igt@i915_selftest@live@gt_timelines.html
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/bat-arls-2/igt@i915_selftest@live@gt_timelines.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- fi-rkl-11600:   NOTRUN -> [SKIP][13] ([i915#4103]) +1 other test skip
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-rkl-11600/igt@kms_cursor_leg...@basic-busy-flip-before-cursor-legacy.html

  * igt@kms_dsc@dsc-basic:
- fi-rkl-11600:   NOTRUN -> [SKIP][14] ([i915#3555] / [i915#3840])
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-rkl-11600/igt@kms_...@dsc-basic.html

  * igt@kms_force_connector_basic@force-load-detect:
- fi-rkl-11600:   NOTRUN -> [SKIP][15]
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-rkl-11600/igt@kms_force_connector_ba...@force-load-detect.html

  * igt@kms_pm_backlight@basic-brightness:
- fi-rkl-11600:   NOTRUN -> [SKIP][16] ([i915#5354])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-rkl-11600/igt@kms_pm_backli...@basic-brightness.html
- fi-cfl-8109u:   NOTRUN -> [SKIP][17] +11 other tests skip
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-cfl-8109u/igt@kms_pm_backli...@basic-brightness.html

  * igt@kms_psr@psr-sprite-plane-onoff:
- fi-rkl-11600:   NOTRUN -> [SKIP][18] ([i915#1072] / [i915#9732]) +3 
other tests skip
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-rkl-11600/igt@kms_...@psr-sprite-plane-onoff.html

  * igt@kms_setmode@basic-clone-single-crtc:
- fi-rkl-11600:   NOTRUN -> [SKIP][19] ([i915#3555])
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131414v3/fi-rkl-11600/igt@kms_setm...@basic-clone-single-crtc.html

  * igt@prime_vgem@basic-read:
- fi-rkl-11600:   NOTRUN -> [SKIP][20] ([i915#3291] / [i915#3708]) +2 
other tests skip
   [20]: 

[PULL] drm-misc-fixes

2024-04-11 Thread Thomas Zimmermann
Hi Dave, Sima,

here's the PR for drm-misc-fixes for this week.

Best regards
Thomas

drm-misc-fixes-2024-04-11:
Short summary of fixes pull:

ast:
- Fix soft lockup

client:
- Protect connector modes with mode_config mutex

host1x:
- Do not setup DMA for virtual addresses

ivpu:
- Fix deadlock in context_xa
- PCI fixes
- Fixes to error handling

nouveau:
- gsp: Fix OOB access
- Fix casting

panfrost:
- Fix error path in MMU code

qxl:
- Revert "drm/qxl: simplify qxl_fence_wait"

vmwgfx:
- Enable DMA for SEV mappings
The following changes since commit fddf09273807bf6e51537823aaae896e05f147f9:

  drm/display: fix typo (2024-04-01 22:35:16 +0300)

are available in the Git repository at:

  https://gitlab.freedesktop.org/drm/misc/kernel.git 
tags/drm-misc-fixes-2024-04-11

for you to fetch changes up to 4c08f01934ab67d1d283d5cbaa52b923abcfe4cd:

  drm/vmwgfx: Enable DMA mappings with SEV (2024-04-09 13:36:05 -0400)


Short summary of fixes pull:

ast:
- Fix soft lockup

client:
- Protect connector modes with mode_config mutex

host1x:
- Do not setup DMA for virtual addresses

ivpu:
- Fix deadlock in context_xa
- PCI fixes
- Fixes to error handling

nouveau:
- gsp: Fix OOB access
- Fix casting

panfrost:
- Fix error path in MMU code

qxl:
- Revert "drm/qxl: simplify qxl_fence_wait"

vmwgfx:
- Enable DMA for SEV mappings


Alex Constantino (1):
  Revert "drm/qxl: simplify qxl_fence_wait"

Arnd Bergmann (1):
  nouveau: fix function cast warning

Boris Brezillon (1):
  drm/panfrost: Fix the error path in panfrost_mmu_map_fault_addr()

Jacek Lawrynowicz (5):
  accel/ivpu: Remove d3hot_after_power_off WA
  accel/ivpu: Put NPU back to D3hot after failed resume
  accel/ivpu: Return max freq for DRM_IVPU_PARAM_CORE_CLOCK_RATE
  accel/ivpu: Fix missed error message after VPU rename
  accel/ivpu: Fix deadlock in context_xa

Jammy Huang (1):
  drm/ast: Fix soft lockup

Kees Cook (1):
  nouveau/gsp: Avoid addressing beyond end of rpc->entries

Thierry Reding (1):
  gpu: host1x: Do not setup DMA for virtual devices

Ville Syrjälä (1):
  drm/client: Fully protect modes[] with dev->mode_config.mutex

Wachowski, Karol (3):
  accel/ivpu: Check return code of ipc->lock init
  accel/ivpu: Fix PCI D0 state entry in resume
  accel/ivpu: Improve clarity of MMU error messages

Zack Rusin (1):
  drm/vmwgfx: Enable DMA mappings with SEV

 drivers/accel/ivpu/ivpu_drv.c  | 40 ++---
 drivers/accel/ivpu/ivpu_drv.h  |  3 +-
 drivers/accel/ivpu/ivpu_hw.h   |  6 +++
 drivers/accel/ivpu/ivpu_hw_37xx.c  | 11 +++--
 drivers/accel/ivpu/ivpu_hw_40xx.c  |  6 +++
 drivers/accel/ivpu/ivpu_ipc.c  |  8 +++-
 drivers/accel/ivpu/ivpu_mmu.c  |  8 ++--
 drivers/accel/ivpu/ivpu_pm.c   | 14 +++---
 drivers/gpu/drm/ast/ast_dp.c   |  3 ++
 drivers/gpu/drm/drm_client_modeset.c   |  3 +-
 .../gpu/drm/nouveau/nvkm/subdev/bios/shadowof.c|  7 ++-
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/r535.c |  2 +-
 drivers/gpu/drm/panfrost/panfrost_mmu.c| 13 --
 drivers/gpu/drm/qxl/qxl_release.c  | 50 +++---
 drivers/gpu/drm/vmwgfx/vmwgfx_drv.c| 11 ++---
 drivers/gpu/host1x/bus.c   |  8 
 include/linux/dma-fence.h  |  7 +++
 17 files changed, 125 insertions(+), 75 deletions(-)

-- 
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstrasse 146, 90461 Nuernberg, Germany
GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman
HRB 36809 (AG Nuernberg)


RE: ✗ Fi.CI.BAT: failure for drm/i915: Bigjoiner modeset sequence redesign and MST support (rev4)

2024-04-11 Thread Illipilli, TejasreeX
Hi,

https://patchwork.freedesktop.org/series/131797/ - Re-reported.

Thanks,
Tejasree

-Original Message-
From: I915-ci-infra  On Behalf Of 
Ville Syrjälä
Sent: Wednesday, April 10, 2024 8:04 PM
To: intel-gfx@lists.freedesktop.org
Cc: i915-ci-in...@lists.freedesktop.org
Subject: Re: ✗ Fi.CI.BAT: failure for drm/i915: Bigjoiner modeset sequence 
redesign and MST support (rev4)

On Tue, Apr 09, 2024 at 06:12:09PM -, Patchwork wrote:
> == Series Details ==
> 
> Series: drm/i915: Bigjoiner modeset sequence redesign and MST support (rev4)
> URL   : https://patchwork.freedesktop.org/series/131797/
> State : failure
> 
> == Summary ==
> 
> CI Bug Log - changes from CI_DRM_14550 -> Patchwork_131797v4 
> 
> 
> Summary
> ---
> 
>   **FAILURE**
> 
>   Serious unknown changes coming with Patchwork_131797v4 absolutely need to be
>   verified manually.
>   
>   If you think the reported changes have nothing to do with the changes
>   introduced in Patchwork_131797v4, please notify your bug team 
> (i915-ci-in...@lists.freedesktop.org) 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_131797v4/index.html
> 
> Participating hosts (36 -> 36)
> --
> 
>   Additional (4): bat-kbl-2 bat-dg2-11 fi-kbl-8809g fi-bsw-n3050 
>   Missing(4): bat-arls-4 bat-dg1-7 bat-atsm-1 bat-mtlp-8 
> 
> Possible new issues
> ---
> 
>   Here are the unknown changes that may have been introduced in 
> Patchwork_131797v4:
> 
> ### IGT changes ###
> 
>  Possible regressions 
> 
>   * igt@i915_selftest@live@active:
> - bat-jsl-1:  [PASS][1] -> [DMESG-FAIL][2]
>[1]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14550/bat-jsl-1/igt@i915_selftest@l...@active.html
>[2]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-jsl-1/
> igt@i915_selftest@l...@active.html

<6> [396.898275] i915: Running i915_active_live_selftests/live_active_wait
<3> [396.902316] i915 :00:02.0: [drm] *ERROR* live_active_wait i915_active 
not retired after waiting!
<3> [396.902334] i915 :00:02.0: [drm] *ERROR* live_active_wait active 
__live_active [i915]:__live_retire [i915]
<3> [396.903434] i915 :00:02.0: [drm] *ERROR* live_active_wait  count: 0
<3> [396.903443] i915 :00:02.0: [drm] *ERROR* live_active_wait  
preallocated barriers? no
<3> [396.904085] i915/i915_active_live_selftests: live_active_wait failed with 
error -22

Looks very much unrelated to these changes. Please wave this one through.

--
Ville Syrjälä
Intel


✓ Fi.CI.BAT: success for Enable Aux Based EDP HDR (rev3)

2024-04-11 Thread Patchwork
== Series Details ==

Series: Enable Aux Based EDP HDR (rev3)
URL   : https://patchwork.freedesktop.org/series/132009/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_14562 -> Patchwork_132009v3


Summary
---

  **SUCCESS**

  No regressions found.

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

Participating hosts (39 -> 37)
--

  Additional (3): bat-dg1-7 bat-dg2-11 bat-atsm-1 
  Missing(5): fi-kbl-7567u bat-mtlp-9 fi-snb-2520m fi-elk-e7500 bat-arls-3 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@gem_huc_copy@huc-copy:
- bat-atsm-1: NOTRUN -> [FAIL][1] ([i915#10563])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-atsm-1/igt@gem_huc_c...@huc-copy.html

  * igt@gem_lmem_swapping@basic@lmem0:
- bat-dg2-9:  [PASS][2] -> [FAIL][3] ([i915#10378])
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14562/bat-dg2-9/igt@gem_lmem_swapping@ba...@lmem0.html
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-dg2-9/igt@gem_lmem_swapping@ba...@lmem0.html

  * igt@gem_mmap@basic:
- bat-atsm-1: NOTRUN -> [SKIP][4] ([i915#4083])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-atsm-1/igt@gem_m...@basic.html
- bat-dg1-7:  NOTRUN -> [SKIP][5] ([i915#4083])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-dg1-7/igt@gem_m...@basic.html
- bat-dg2-11: NOTRUN -> [SKIP][6] ([i915#4083])
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-dg2-11/igt@gem_m...@basic.html

  * igt@gem_tiled_fence_blits@basic:
- bat-dg1-7:  NOTRUN -> [SKIP][7] ([i915#4077]) +2 other tests skip
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-dg1-7/igt@gem_tiled_fence_bl...@basic.html
- bat-dg2-11: NOTRUN -> [SKIP][8] ([i915#4077]) +2 other tests skip
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-dg2-11/igt@gem_tiled_fence_bl...@basic.html

  * igt@gem_tiled_pread_basic:
- bat-atsm-1: NOTRUN -> [SKIP][9] ([i915#4079]) +1 other test skip
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-atsm-1/igt@gem_tiled_pread_basic.html
- bat-dg1-7:  NOTRUN -> [SKIP][10] ([i915#4079]) +1 other test skip
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-dg1-7/igt@gem_tiled_pread_basic.html
- bat-dg2-11: NOTRUN -> [SKIP][11] ([i915#4079]) +1 other test skip
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-dg2-11/igt@gem_tiled_pread_basic.html

  * igt@i915_module_load@reload:
- bat-dg2-11: NOTRUN -> [ABORT][12] ([i915#10366])
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-dg2-11/igt@i915_module_l...@reload.html

  * igt@i915_pm_rps@basic-api:
- bat-dg1-7:  NOTRUN -> [SKIP][13] ([i915#6621])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-dg1-7/igt@i915_pm_...@basic-api.html
- bat-atsm-1: NOTRUN -> [SKIP][14] ([i915#6621])
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-atsm-1/igt@i915_pm_...@basic-api.html
- bat-dg2-11: NOTRUN -> [SKIP][15] ([i915#6621])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-dg2-11/igt@i915_pm_...@basic-api.html

  * igt@i915_selftest@live@gem:
- bat-atsm-1: NOTRUN -> [ABORT][16] ([i915#10182] / [i915#10564])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-atsm-1/igt@i915_selftest@l...@gem.html

  * igt@kms_addfb_basic@addfb25-x-tiled-mismatch-legacy:
- bat-dg1-7:  NOTRUN -> [SKIP][17] ([i915#4212]) +7 other tests skip
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-dg1-7/igt@kms_addfb_ba...@addfb25-x-tiled-mismatch-legacy.html
- bat-dg2-11: NOTRUN -> [SKIP][18] ([i915#4212]) +7 other tests skip
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-dg2-11/igt@kms_addfb_ba...@addfb25-x-tiled-mismatch-legacy.html

  * igt@kms_addfb_basic@addfb25-y-tiled-small-legacy:
- bat-dg2-11: NOTRUN -> [SKIP][19] ([i915#5190])
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-dg2-11/igt@kms_addfb_ba...@addfb25-y-tiled-small-legacy.html

  * igt@kms_addfb_basic@basic-y-tiled-legacy:
- bat-dg1-7:  NOTRUN -> [SKIP][20] ([i915#4215])
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132009v3/bat-dg1-7/igt@kms_addfb_ba...@basic-y-tiled-legacy.html
- bat-dg2-11: NOTRUN -> [SKIP][21] ([i915#4215] / [i915#5190])
   [21]: 

✗ Fi.CI.SPARSE: warning for Enable Aux Based EDP HDR (rev3)

2024-04-11 Thread Patchwork
== Series Details ==

Series: Enable Aux Based EDP HDR (rev3)
URL   : https://patchwork.freedesktop.org/series/132009/
State : warning

== Summary ==

Error: dim sparse failed
Sparse version: v0.6.2
Fast mode used, each commit won't be checked separately.
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:116:1: warning: unreplaced symbol 'return'

✓ Fi.CI.BAT: success for drm/i915: Bigjoiner modeset sequence redesign and MST support (rev4)

2024-04-11 Thread Patchwork
== Series Details ==

Series: drm/i915: Bigjoiner modeset sequence redesign and MST support (rev4)
URL   : https://patchwork.freedesktop.org/series/131797/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_14550 -> Patchwork_131797v4


Summary
---

  **SUCCESS**

  No regressions found.

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

Participating hosts (36 -> 36)
--

  Additional (4): bat-kbl-2 bat-dg2-11 fi-kbl-8809g fi-bsw-n3050 
  Missing(4): bat-arls-4 bat-dg1-7 bat-atsm-1 bat-mtlp-8 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@fbdev@info:
- bat-kbl-2:  NOTRUN -> [SKIP][1] ([i915#1849])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-kbl-2/igt@fb...@info.html

  * igt@gem_lmem_swapping@parallel-random-engines:
- bat-kbl-2:  NOTRUN -> [SKIP][2] +39 other tests skip
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-kbl-2/igt@gem_lmem_swapp...@parallel-random-engines.html
- bat-dg2-8:  NOTRUN -> [SKIP][3] ([i915#9643])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-dg2-8/igt@gem_lmem_swapp...@parallel-random-engines.html

  * igt@gem_lmem_swapping@random-engines:
- bat-arls-1: NOTRUN -> [SKIP][4] ([i915#10213]) +3 other tests skip
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-arls-1/igt@gem_lmem_swapp...@random-engines.html
- fi-bsw-n3050:   NOTRUN -> [SKIP][5] +19 other tests skip
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/fi-bsw-n3050/igt@gem_lmem_swapp...@random-engines.html

  * igt@gem_mmap@basic:
- bat-dg2-11: NOTRUN -> [SKIP][6] ([i915#4083])
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-dg2-11/igt@gem_m...@basic.html

  * igt@gem_tiled_blits@basic:
- bat-arls-1: NOTRUN -> [SKIP][7] ([i915#10196] / [i915#4077]) +1 
other test skip
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-arls-1/igt@gem_tiled_bl...@basic.html

  * igt@gem_tiled_fence_blits@basic:
- bat-dg2-11: NOTRUN -> [SKIP][8] ([i915#4077]) +2 other tests skip
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-dg2-11/igt@gem_tiled_fence_bl...@basic.html

  * igt@gem_tiled_pread_basic:
- bat-dg2-11: NOTRUN -> [SKIP][9] ([i915#4079]) +1 other test skip
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-dg2-11/igt@gem_tiled_pread_basic.html
- bat-arls-1: NOTRUN -> [SKIP][10] ([i915#10206] / [i915#4079])
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-arls-1/igt@gem_tiled_pread_basic.html

  * igt@i915_pm_rps@basic-api:
- bat-dg2-11: NOTRUN -> [SKIP][11] ([i915#6621])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-dg2-11/igt@i915_pm_...@basic-api.html
- bat-arls-1: NOTRUN -> [SKIP][12] ([i915#10209])
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-arls-1/igt@i915_pm_...@basic-api.html

  * igt@i915_selftest@live@active:
- bat-jsl-1:  [PASS][13] -> [DMESG-FAIL][14] ([i915#10606])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14550/bat-jsl-1/igt@i915_selftest@l...@active.html
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-jsl-1/igt@i915_selftest@l...@active.html

  * igt@kms_addfb_basic@addfb25-x-tiled-legacy:
- bat-arls-1: NOTRUN -> [SKIP][15] ([i915#10200]) +9 other tests 
skip
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-arls-1/igt@kms_addfb_ba...@addfb25-x-tiled-legacy.html

  * igt@kms_addfb_basic@addfb25-x-tiled-mismatch-legacy:
- bat-dg2-11: NOTRUN -> [SKIP][16] ([i915#4212]) +7 other tests skip
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-dg2-11/igt@kms_addfb_ba...@addfb25-x-tiled-mismatch-legacy.html

  * igt@kms_addfb_basic@addfb25-y-tiled-small-legacy:
- bat-dg2-11: NOTRUN -> [SKIP][17] ([i915#5190])
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-dg2-11/igt@kms_addfb_ba...@addfb25-y-tiled-small-legacy.html

  * igt@kms_addfb_basic@basic-y-tiled-legacy:
- bat-dg2-11: NOTRUN -> [SKIP][18] ([i915#4215] / [i915#5190])
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-dg2-11/igt@kms_addfb_ba...@basic-y-tiled-legacy.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- bat-dg2-11: NOTRUN -> [SKIP][19] ([i915#4103] / [i915#4213]) +1 
other test skip
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_131797v4/bat-dg2-11/igt@kms_cursor_leg...@basic-busy-flip-before-cursor-atomic.html

  * 

✓ Fi.CI.BAT: success for iommu/vt-d: Fix WARN_ON in iommu probe path

2024-04-11 Thread Patchwork
== Series Details ==

Series: iommu/vt-d: Fix WARN_ON in iommu probe path
URL   : https://patchwork.freedesktop.org/series/132199/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_14548 -> Patchwork_132199v1


Summary
---

  **SUCCESS**

  No regressions found.

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

Participating hosts (39 -> 35)
--

  Missing(4): fi-blb-e6850 fi-glk-j4005 bat-dg1-7 fi-apl-guc 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@i915_selftest@live@gt_timelines:
- bat-arls-2: [PASS][1] -> [ABORT][2] ([i915#10797])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14548/bat-arls-2/igt@i915_selftest@live@gt_timelines.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132199v1/bat-arls-2/igt@i915_selftest@live@gt_timelines.html

  
 Possible fixes 

  * igt@i915_selftest@live@perf:
- bat-dg2-9:  [ABORT][3] ([i915#10366]) -> [PASS][4]
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14548/bat-dg2-9/igt@i915_selftest@l...@perf.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132199v1/bat-dg2-9/igt@i915_selftest@l...@perf.html

  
  [i915#10366]: https://gitlab.freedesktop.org/drm/intel/issues/10366
  [i915#10797]: https://gitlab.freedesktop.org/drm/intel/issues/10797


Build changes
-

  * Linux: CI_DRM_14548 -> Patchwork_132199v1

  CI-20190529: 20190529
  CI_DRM_14548: d2e6568486674a4a3a4455df449d80a038f11e10 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_7802: 7802
  Patchwork_132199v1: d2e6568486674a4a3a4455df449d80a038f11e10 @ 
git://anongit.freedesktop.org/gfx-ci/linux


### Linux commits

9aa4557bf2e3 iommu/vt-d: Fix WARN_ON in iommu probe path

== Logs ==

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


[PATCH 6/6] drm/i915/dp: Write panel override luminance values

2024-04-11 Thread Suraj Kandpal
Write panel override luminance values which helps the TCON decide
if tone mapping needs to be enabled or not.

Signed-off-by: Suraj Kandpal 
---
 .../drm/i915/display/intel_dp_aux_backlight.c | 25 +++
 1 file changed, 25 insertions(+)

diff --git a/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c 
b/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
index b13eee250dc4..cb6f01daae42 100644
--- a/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
+++ b/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
@@ -381,6 +381,29 @@ static const char *dpcd_vs_pwm_str(bool aux)
return aux ? "DPCD" : "PWM";
 }
 
+static void
+intel_dp_aux_write_panel_luminance_override(struct intel_connector *connector)
+{
+   struct drm_i915_private *i915 = to_i915(connector->base.dev);
+   struct intel_panel *panel = >panel;
+   struct intel_dp *intel_dp = enc_to_intel_dp(connector->encoder);
+   int ret;
+   u8 buf[4] = {};
+
+   buf[0] = panel->backlight.min & 0xFF;
+   buf[1] = (panel->backlight.min & 0xFF00) >> 8;
+   buf[2] = panel->backlight.max & 0xFF;
+   buf[3] = (panel->backlight.max & 0xFF00) >> 8;
+
+   ret = drm_dp_dpcd_write(_dp->aux,
+   INTEL_EDP_HDR_PANEL_LUMINANCE_OVERRIDE,
+   buf, sizeof(buf));
+   if (ret < 0)
+   drm_dbg_kms(>drm,
+   "Panel Luminance DPCD reg write failed, err:-%d\n",
+   ret);
+}
+
 static int
 intel_dp_aux_hdr_setup_backlight(struct intel_connector *connector, enum pipe 
pipe)
 {
@@ -412,6 +435,8 @@ intel_dp_aux_hdr_setup_backlight(struct intel_connector 
*connector, enum pipe pi
panel->backlight.min = 0;
}
 
+   intel_dp_aux_write_panel_luminance_override(connector);
+
drm_dbg_kms(>drm, "[CONNECTOR:%d:%s] Using AUX HDR interface for 
backlight control (range %d..%d)\n",
connector->base.base.id, connector->base.name,
panel->backlight.min, panel->backlight.max);
-- 
2.43.2



[PATCH 5/6] drm/i915/dp: Enable AUX based backlight for HDR

2024-04-11 Thread Suraj Kandpal
As of now whenerver HDR is switched on we use the PWM to change the
backlight as opposed to AUX based backlight changes in terms of nits.
This patch writes to the appropriate DPCD registers to enable aux
based backlight using values in nits.

--v2
-Fix max_cll and max_fall assignment [Jani]
-Fix the size sent in drm_dpcd_write [Jani]

--v3
-Content Luminance needs to be sent only for pre-ICL after that
it is directly picked up from hdr metadata [Ville]

--v4
-Add checks for HDR TCON cap bits [Ville]
-Check eotf of hdr_output_data and sets bits base of that value.

--v5
-Fix capability check bits.
-Check colorspace before setting BT2020

--v6
-Use intel_dp_has_gamut_dip to check if we have capability
to send sdp [Ville]
-Seprate filling of all hdr tcon related bits into it's
own function.
-Check eotf data to make sure we are in HDR mode [Sebastian]

--v7
-Fix confusion function name for hdr mode check [Jani]
-Fix the condition which tells us if we are in HDR mode or not
[Sebastian]

Signed-off-by: Suraj Kandpal 
---
 .../drm/i915/display/intel_dp_aux_backlight.c | 105 --
 1 file changed, 94 insertions(+), 11 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c 
b/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
index b61bad218994..b13eee250dc4 100644
--- a/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
+++ b/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
@@ -40,11 +40,6 @@
 #include "intel_dp.h"
 #include "intel_dp_aux_backlight.h"
 
-/* TODO:
- * Implement HDR, right now we just implement the bare minimum to bring us 
back into SDR mode so we
- * can make people's backlights work in the mean time
- */
-
 /*
  * DP AUX registers for Intel's proprietary HDR backlight interface. We define
  * them here since we'll likely be the only driver to ever use these.
@@ -127,9 +122,6 @@ intel_dp_aux_supports_hdr_backlight(struct intel_connector 
*connector)
if (ret != sizeof(tcon_cap))
return false;
 
-   if (!(tcon_cap[1] & INTEL_EDP_HDR_TCON_BRIGHTNESS_NITS_CAP))
-   return false;
-
drm_dbg_kms(>drm, "[CONNECTOR:%d:%s] Detected %s HDR backlight 
interface version %d\n",
connector->base.base.id, connector->base.name,
is_intel_tcon_cap(tcon_cap) ? "Intel" : "unsupported", 
tcon_cap[0]);
@@ -137,6 +129,9 @@ intel_dp_aux_supports_hdr_backlight(struct intel_connector 
*connector)
if (!is_intel_tcon_cap(tcon_cap))
return false;
 
+   if (!(tcon_cap[1] & INTEL_EDP_HDR_TCON_BRIGHTNESS_NITS_CAP))
+   return false;
+
/*
 * If we don't have HDR static metadata there is no way to
 * runtime detect used range for nits based control. For now
@@ -225,13 +220,27 @@ intel_dp_aux_hdr_set_aux_backlight(const struct 
drm_connector_state *conn_state,
connector->base.base.id, connector->base.name);
 }
 
+static bool
+intel_dp_in_hdr_mode(const struct drm_connector_state *conn_state)
+{
+   struct hdr_output_metadata *hdr_metadata;
+
+   if (!conn_state->hdr_output_metadata)
+   return false;
+
+   hdr_metadata = conn_state->hdr_output_metadata->data;
+
+   return hdr_metadata->hdmi_metadata_type1.eotf == HDMI_EOTF_SMPTE_ST2084;
+}
+
 static void
 intel_dp_aux_hdr_set_backlight(const struct drm_connector_state *conn_state, 
u32 level)
 {
struct intel_connector *connector = 
to_intel_connector(conn_state->connector);
struct intel_panel *panel = >panel;
 
-   if (panel->backlight.edp.intel.sdr_uses_aux) {
+   if (intel_dp_in_hdr_mode(conn_state) ||
+   panel->backlight.edp.intel.sdr_uses_aux) {
intel_dp_aux_hdr_set_aux_backlight(conn_state, level);
} else {
const u32 pwm_level = intel_backlight_level_to_pwm(connector, 
level);
@@ -240,6 +249,70 @@ intel_dp_aux_hdr_set_backlight(const struct 
drm_connector_state *conn_state, u32
}
 }
 
+static void
+intel_dp_aux_write_content_luminance(struct intel_connector *connector,
+struct hdr_output_metadata *hdr_metadata)
+{
+   struct intel_dp *intel_dp = enc_to_intel_dp(connector->encoder);
+   struct drm_i915_private *i915 = to_i915(connector->base.dev);
+   int ret;
+   u8 buf[4];
+
+   if (!intel_dp_has_gamut_metadata_dip(connector->encoder))
+   return;
+
+   buf[0] = hdr_metadata->hdmi_metadata_type1.max_cll & 0xFF;
+   buf[1] = (hdr_metadata->hdmi_metadata_type1.max_cll & 0xFF00) >> 8;
+   buf[2] = hdr_metadata->hdmi_metadata_type1.max_fall & 0xFF;
+   buf[3] = (hdr_metadata->hdmi_metadata_type1.max_fall & 0xFF00) >> 8;
+
+   ret = drm_dp_dpcd_write(_dp->aux,
+   INTEL_EDP_HDR_CONTENT_LUMINANCE,
+   buf, sizeof(buf));
+   if (ret < 0)
+   drm_dbg_kms(>drm,
+   "Content 

[PATCH 3/6] drm/i915/dp: Fix Register bit naming

2024-04-11 Thread Suraj Kandpal
Change INTEL_EDP_HDR_TCON_SDP_COLORIMETRY enable to
INTEL_EDP_HDR_TCON_SDP_OVERRIDE_AUX as this bit is tells TCON to
ignore DPCD colorimetry values and take the one's sent through
SDP.

Signed-off-by: Suraj Kandpal 
---
 drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c 
b/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
index 94edf982eff8..3d9723714c96 100644
--- a/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
+++ b/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
@@ -74,7 +74,7 @@
 # define INTEL_EDP_HDR_TCON_BRIGHTNESS_AUX_ENABLE BIT(4)
 # define INTEL_EDP_HDR_TCON_SRGB_TO_PANEL_GAMUT_ENABLEBIT(5)
 /* Bit 6 is reserved */
-# define INTEL_EDP_HDR_TCON_SDP_COLORIMETRY_ENABLEBIT(7)
+# define INTEL_EDP_HDR_TCON_SDP_OVERRIDE_AUX BIT(7)
 
 #define INTEL_EDP_HDR_CONTENT_LUMINANCE0x346 
/* Pre-TGL+ */
 #define INTEL_EDP_HDR_PANEL_LUMINANCE_OVERRIDE 0x34A
-- 
2.43.2



[PATCH 4/6] drm/i915/dp: Drop comments on EDP HDR DPCD registers

2024-04-11 Thread Suraj Kandpal
Drop comments for EDP HDR DPCD registers as the code and
conditions will tell us what can be written where.

--v2
-Drop the comments altogether instead of just renaming them
[Sebastian]

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

diff --git a/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c 
b/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
index 3d9723714c96..b61bad218994 100644
--- a/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
+++ b/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
@@ -69,14 +69,14 @@
 #define INTEL_EDP_HDR_GETSET_CTRL_PARAMS   0x344
 # define INTEL_EDP_HDR_TCON_2084_DECODE_ENABLEBIT(0)
 # define INTEL_EDP_HDR_TCON_2020_GAMUT_ENABLE BIT(1)
-# define INTEL_EDP_HDR_TCON_TONE_MAPPING_ENABLE   BIT(2) 
/* Pre-TGL+ */
+# define INTEL_EDP_HDR_TCON_TONE_MAPPING_ENABLE   BIT(2)
 # define INTEL_EDP_HDR_TCON_SEGMENTED_BACKLIGHT_ENABLEBIT(3)
 # define INTEL_EDP_HDR_TCON_BRIGHTNESS_AUX_ENABLE BIT(4)
 # define INTEL_EDP_HDR_TCON_SRGB_TO_PANEL_GAMUT_ENABLEBIT(5)
 /* Bit 6 is reserved */
 # define INTEL_EDP_HDR_TCON_SDP_OVERRIDE_AUX BIT(7)
 
-#define INTEL_EDP_HDR_CONTENT_LUMINANCE0x346 
/* Pre-TGL+ */
+#define INTEL_EDP_HDR_CONTENT_LUMINANCE0x346
 #define INTEL_EDP_HDR_PANEL_LUMINANCE_OVERRIDE 0x34A
 #define INTEL_EDP_SDR_LUMINANCE_LEVEL  0x352
 #define INTEL_EDP_BRIGHTNESS_NITS_LSB  0x354
-- 
2.43.2



[PATCH 1/6] drm/i915/dp: Make has_gamut_metadata_dip() non static

2024-04-11 Thread Suraj Kandpal
Make has_gamut_metadata_dip() non static so it can also be used to
at other places eg in intel_dp_aux_backlight.

Signed-off-by: Suraj Kandpal 
---
 drivers/gpu/drm/i915/display/intel_dp.c | 6 +++---
 drivers/gpu/drm/i915/display/intel_dp.h | 1 +
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_dp.c 
b/drivers/gpu/drm/i915/display/intel_dp.c
index 163da48bc406..8b105efd4de9 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -6365,8 +6365,8 @@ bool intel_dp_is_port_edp(struct drm_i915_private *i915, 
enum port port)
return _intel_dp_is_port_edp(i915, devdata, port);
 }
 
-static bool
-has_gamut_metadata_dip(struct intel_encoder *encoder)
+bool
+intel_dp_has_gamut_metadata_dip(struct intel_encoder *encoder)
 {
struct drm_i915_private *i915 = to_i915(encoder->base.dev);
enum port port = encoder->port;
@@ -6413,7 +6413,7 @@ intel_dp_add_properties(struct intel_dp *intel_dp, struct 
drm_connector *connect
intel_attach_dp_colorspace_property(connector);
}
 
-   if (has_gamut_metadata_dip(_to_dig_port(intel_dp)->base))
+   if (intel_dp_has_gamut_metadata_dip(_to_dig_port(intel_dp)->base))
drm_connector_attach_hdr_output_metadata_property(connector);
 
if (HAS_VRR(dev_priv))
diff --git a/drivers/gpu/drm/i915/display/intel_dp.h 
b/drivers/gpu/drm/i915/display/intel_dp.h
index 106ecfde36d9..aad2223df2a3 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.h
+++ b/drivers/gpu/drm/i915/display/intel_dp.h
@@ -196,5 +196,6 @@ intel_dp_compute_config_link_bpp_limits(struct intel_dp 
*intel_dp,
struct link_config_limits *limits);
 
 void intel_dp_get_dsc_sink_cap(u8 dpcd_rev, struct intel_connector *connector);
+bool intel_dp_has_gamut_metadata_dip(struct intel_encoder *encoder);
 
 #endif /* __INTEL_DP_H__ */
-- 
2.43.2



[PATCH 2/6] drm/i915/dp: Add TCON HDR capability checks

2024-04-11 Thread Suraj Kandpal
Add checks to see the HDR capability of TCON panel.

Signed-off-by: Suraj Kandpal 
---
 drivers/gpu/drm/i915/display/intel_display_types.h|  5 +
 drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c | 10 ++
 2 files changed, 15 insertions(+)

diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h 
b/drivers/gpu/drm/i915/display/intel_display_types.h
index 0f4bd5710796..ef28eee05ec6 100644
--- a/drivers/gpu/drm/i915/display/intel_display_types.h
+++ b/drivers/gpu/drm/i915/display/intel_display_types.h
@@ -401,6 +401,11 @@ struct intel_panel {
} vesa;
struct {
bool sdr_uses_aux;
+   bool supports_2084_decode;
+   bool supports_2020_gamut;
+   bool supports_segmented_backlight;
+   bool supports_sdp_colorimetry;
+   bool supports_tone_mapping;
} intel;
} edp;
 
diff --git a/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c 
b/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
index 4f58efdc688a..94edf982eff8 100644
--- a/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
+++ b/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
@@ -158,6 +158,16 @@ intel_dp_aux_supports_hdr_backlight(struct intel_connector 
*connector)
 
panel->backlight.edp.intel.sdr_uses_aux =
tcon_cap[2] & INTEL_EDP_SDR_TCON_BRIGHTNESS_AUX_CAP;
+   panel->backlight.edp.intel.supports_2084_decode =
+   tcon_cap[1] & INTEL_EDP_HDR_TCON_2084_DECODE_CAP;
+   panel->backlight.edp.intel.supports_2020_gamut =
+   tcon_cap[1] & INTEL_EDP_HDR_TCON_2020_GAMUT_CAP;
+   panel->backlight.edp.intel.supports_segmented_backlight =
+   tcon_cap[1] & INTEL_EDP_HDR_TCON_SEGMENTED_BACKLIGHT_CAP;
+   panel->backlight.edp.intel.supports_sdp_colorimetry =
+   tcon_cap[1] & INTEL_EDP_HDR_TCON_SDP_COLORIMETRY_CAP;
+   panel->backlight.edp.intel.supports_tone_mapping =
+   tcon_cap[1] & INTEL_EDP_HDR_TCON_TONE_MAPPING_CAP;
 
return true;
 }
-- 
2.43.2



[PATCH 0/6] Enable Aux Based EDP HDR

2024-04-11 Thread Suraj Kandpal
This series enables Aux based EDP HDR and backlight controls.
The DPCD written to are intel proprietary and are filled
based on the specs that were provided to TCON vendors.

Signed-off-by: Suraj Kandpal 

Suraj Kandpal (6):
  drm/i915/dp: Make has_gamut_metadata_dip() non static
  drm/i915/dp: Add TCON HDR capability checks
  drm/i915/dp: Fix Register bit naming
  drm/i915/dp: Drop comments on EDP HDR DPCD registers
  drm/i915/dp: Enable AUX based backlight for HDR
  drm/i915/dp: Write panel override luminance values

 .../drm/i915/display/intel_display_types.h|   5 +
 drivers/gpu/drm/i915/display/intel_dp.c   |   6 +-
 drivers/gpu/drm/i915/display/intel_dp.h   |   1 +
 .../drm/i915/display/intel_dp_aux_backlight.c | 146 --
 4 files changed, 141 insertions(+), 17 deletions(-)

-- 
2.43.2