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

2024-04-10 Thread Manna, Animesh


> -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 

> ---
>  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: [PATCH] drm/i915: Don't enable hwmon for selftests

2024-04-10 Thread Dixit, Ashutosh
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.

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


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

2024-04-10 Thread Dixit, Ashutosh
On Wed, 10 Apr 2024 06:53:15 -0700, Andi Shyti wrote:
>

Hi Andi,

> please use "git format-patch -v 3 ..." which generates subject
> [PATCH v3] ...". Otherwise it gets confusing to see the patch
> that needs to be reviewed.

Sure, sorry!

>
> On Tue, Apr 09, 2024 at 11:05:49PM -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.
> >
> > v2: Move the logic inside i915_hwmon.c
> > v3: Move is_i915_selftest definition to i915_selftest.h (Badal)
> >
> > Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/10366
> > Signed-off-by: Ashutosh Dixit 
> > ---
> >  drivers/gpu/drm/i915/i915_hwmon.c|  3 ++-
> >  drivers/gpu/drm/i915/i915_selftest.h | 10 ++
> >  2 files changed, 12 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/i915/i915_hwmon.c 
> > b/drivers/gpu/drm/i915/i915_hwmon.c
> > index 8c3f443c8347..cf1689333ebf 100644
> > --- a/drivers/gpu/drm/i915/i915_hwmon.c
> > +++ b/drivers/gpu/drm/i915/i915_hwmon.c
> > @@ -10,6 +10,7 @@
> >  #include "i915_drv.h"
> >  #include "i915_hwmon.h"
> >  #include "i915_reg.h"
> > +#include "i915_selftest.h"
> >  #include "intel_mchbar_regs.h"
> >  #include "intel_pcode.h"
> >  #include "gt/intel_gt.h"
> > @@ -789,7 +790,7 @@ void i915_hwmon_register(struct drm_i915_private *i915)
> > int i;
> >
> > /* hwmon is available only for dGfx */
> > -   if (!IS_DGFX(i915))
> > +   if (!IS_DGFX(i915) || is_i915_selftest())
> > return;
>
> I wonder if this is the right place to put it or rather place it
> in i915_driver.c and avoid calling i915_hwmon_register() at all.

I thought it was better put it here rather than clutter up common code in
i915_driver.c.

>
> In any case, it's good:
>
> Reviewed-by: Andi Shyti 

Thanks.
--
Ashutosh


✗ Fi.CI.BAT: failure for drm/i915/dg2: wait for HuC load completion before running selftests

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

Series: drm/i915/dg2: wait for HuC load completion before running selftests
URL   : https://patchwork.freedesktop.org/series/132300/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_14561 -> Patchwork_132300v1


Summary
---

  **FAILURE**

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

Participating hosts (39 -> 37)
--

  Additional (2): bat-jsl-1 bat-arls-3 
  Missing(4): bat-dg2-11 fi-kbl-8809g fi-snb-2520m fi-bsw-n3050 

Possible new issues
---

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

### IGT changes ###

 Possible regressions 

  * igt@dmabuf@all-tests@dma_fence:
- bat-dg1-7:  [PASS][1] -> [DMESG-FAIL][2]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14561/bat-dg1-7/igt@dmabuf@all-tests@dma_fence.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132300v1/bat-dg1-7/igt@dmabuf@all-tests@dma_fence.html

  * igt@dmabuf@all-tests@sanitycheck:
- bat-dg1-7:  [PASS][3] -> [ABORT][4]
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14561/bat-dg1-7/igt@dmabuf@all-te...@sanitycheck.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132300v1/bat-dg1-7/igt@dmabuf@all-te...@sanitycheck.html

  * igt@i915_pm_rpm@module-reload:
- bat-adlm-1: [PASS][5] -> [INCOMPLETE][6]
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14561/bat-adlm-1/igt@i915_pm_...@module-reload.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132300v1/bat-adlm-1/igt@i915_pm_...@module-reload.html

  * igt@i915_selftest@live@dmabuf:
- bat-arls-2: [PASS][7] -> [DMESG-WARN][8]
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14561/bat-arls-2/igt@i915_selftest@l...@dmabuf.html
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132300v1/bat-arls-2/igt@i915_selftest@l...@dmabuf.html

  
Known issues


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

### IGT changes ###

 Issues hit 

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

  * igt@gem_huc_copy@huc-copy:
- bat-jsl-1:  NOTRUN -> [SKIP][11] ([i915#2190])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132300v1/bat-jsl-1/igt@gem_huc_c...@huc-copy.html

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

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

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

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

  * igt@gem_render_tiled_blits@basic:
- bat-arls-3: NOTRUN -> [SKIP][17] ([i915#10197] / [i915#10211] / 
[i915#4079])
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132300v1/bat-arls-3/igt@gem_render_tiled_bl...@basic.html

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

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

  * igt@i915_pm_rps@basic-api:
- bat-arls-3: NOTRUN -> [SKIP][20] ([i915#10209])
   

Re: [PATCH i-g-t v2] lib/kunit: Read results from debugfs

2024-04-10 Thread Lucas De Marchi

On Wed, Apr 10, 2024 at 08:28:40PM +0200, Janusz Krzysztofik wrote:

Hi Lucas,

On Friday, 5 April 2024 19:54:53 CEST Janusz Krzysztofik wrote:

KUnit can provide KTAP reports from test modules via debugfs files, one
per test suite.  Using that source of test results instead of extracting
them from dmesg, where they may be interleaved with other kernel messages,
seems more easy to handle and less error prone.  Switch to it.

If KUnit debugfs support is found not configured then fall back to legacy
processing path.

v2: Check validity of debugfs argument before calling kunit_get_tests()
(Kamil),
  - replace multiple openat() + fdopen/fdopendir(), each followed by an
error check, with less expensive fopen/opendir() of file/dir pathname
components concatentated to a local buffer, protected from buffer
overflow or truncation with a single check for enough buffer space
(Lucas),
  - avoid confusing 'if' statement condition (Lucas).


Could you please confirm if your R-b still applies?


yes, LGTM.


Reviewed-by: Lucas De Marchi 

thanks
Lucas De Marchi


Re: [PATCH 00/10] drm: move Intel drm headers to a subdirectory

2024-04-10 Thread Lucas De Marchi

On Wed, Apr 10, 2024 at 01:05:07PM +0300, Jani Nikula wrote:

We've accumulated enough Intel specific header files under include/drm
that they warrant a subdirectory of their own. Clean up the top drm
header directory by moving the Intel files under include/drm/intel.

Since i915 is most impacted, I suggest merging the lot via
drm-intel-next. Please ack if this is fine for you.



Acked-by: Lucas De Marchi 

Lucas De Marchi


✗ Fi.CI.BAT: failure for drm/i915: Don't enable hwmon for selftests (rev4)

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

Series: drm/i915: Don't enable hwmon for selftests (rev4)
URL   : https://patchwork.freedesktop.org/series/132243/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_14561 -> Patchwork_132243v4


Summary
---

  **FAILURE**

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

Participating hosts (39 -> 38)
--

  Additional (2): bat-jsl-1 bat-arls-3 
  Missing(3): bat-dg2-11 bat-atsm-1 fi-snb-2520m 

Possible new issues
---

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

### IGT changes ###

 Possible regressions 

  * igt@i915_selftest@live@active:
- bat-jsl-1:  NOTRUN -> [DMESG-FAIL][1]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132243v4/bat-jsl-1/igt@i915_selftest@l...@active.html

  
Known issues


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

### IGT changes ###

 Issues hit 

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

  * igt@gem_huc_copy@huc-copy:
- bat-jsl-1:  NOTRUN -> [SKIP][4] ([i915#2190])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132243v4/bat-jsl-1/igt@gem_huc_c...@huc-copy.html

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

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

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

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

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

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

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

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

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- bat-arls-3: NOTRUN -> [SKIP][13] ([i915#10202]) +1 other test skip
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132243v4/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-jsl-1:  NOTRUN -> [SKIP][14] ([i915#4103]) +1 other test skip
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132243v4/bat-jsl-1/igt@kms_cursor_leg...@basic-busy-flip-before-cursor-legacy.html

  * igt@kms_dsc@dsc-basic:
- bat-arls-3: NOTRUN -> [SKIP][15] ([i915#9886])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132243v4/bat-arls-3/igt@kms_...@dsc-basic.html
- bat-jsl-1:  NOTRUN -> [SKIP][16] ([i915#3555] / [i915#9886])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132243v4/bat-jsl-1/igt@kms_...@dsc-basic.html

  * igt@kms_force_connector_basic@force-load-detect:
- bat-arls-3: NOTRUN -> [SKIP][17] ([i915#10207])
  

[PULL] drm-intel-fixes

2024-04-10 Thread Rodrigo Vivi
Hi Dave and Sima,

Here goes drm-intel-fixes-2024-04-10:

Display fixes:
- Couple CDCLK programming fixes (Ville)
- HDCP related fix (Suraj)
- 4 Bigjoiner related fixes (Ville)

Core fix:
- Fix for a circular locking around GuC on reset+wedged case (John)

Thanks,
Rodrigo.

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://anongit.freedesktop.org/git/drm/drm-intel 
tags/drm-intel-fixes-2024-04-10

for you to fetch changes up to dcd8992e47f13afb5c11a61e8d9c141c35e23751:

  drm/i915/vrr: Disable VRR when using bigjoiner (2024-04-08 13:10:10 -0400)


Display fixes:
- Couple CDCLK programming fixes (Ville)
- HDCP related fix (Suraj)
- 4 Bigjoiner related fixes (Ville)

Core fix:
- Fix for a circular locking around GuC on reset+wedged case (John)


John Harrison (1):
  drm/i915/guc: Fix the fix for reset lock confusion

Suraj Kandpal (1):
  drm/i915/hdcp: Fix get remote hdcp capability function

Ville Syrjälä (6):
  drm/i915/cdclk: Fix CDCLK programming order when pipes are active
  drm/i915/cdclk: Fix voltage_level programming edge case
  drm/i915/psr: Disable PSR when bigjoiner is used
  drm/i915: Disable port sync when bigjoiner is used
  drm/i915: Disable live M/N updates when using bigjoiner
  drm/i915/vrr: Disable VRR when using bigjoiner

 drivers/gpu/drm/i915/display/intel_cdclk.c| 42 +--
 drivers/gpu/drm/i915/display/intel_cdclk.h|  3 ++
 drivers/gpu/drm/i915/display/intel_ddi.c  |  5 +++
 drivers/gpu/drm/i915/display/intel_dp.c   |  6 +++-
 drivers/gpu/drm/i915/display/intel_dp_hdcp.c  |  5 ++-
 drivers/gpu/drm/i915/display/intel_psr.c  | 11 ++
 drivers/gpu/drm/i915/display/intel_vrr.c  |  7 
 drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c | 23 +
 drivers/gpu/drm/i915/gt/uc/intel_uc.c |  4 +++
 9 files changed, 79 insertions(+), 27 deletions(-)


✗ Fi.CI.SPARSE: warning for drm/i915: Don't enable hwmon for selftests (rev4)

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

Series: drm/i915: Don't enable hwmon for selftests (rev4)
URL   : https://patchwork.freedesktop.org/series/132243/
State : warning

== Summary ==

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




✗ Fi.CI.BAT: failure for drm/edid: Parse topology block for all DispID structure v1.x

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

Series: drm/edid: Parse topology block for all DispID structure v1.x
URL   : https://patchwork.freedesktop.org/series/132292/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_14561 -> Patchwork_132292v1


Summary
---

  **FAILURE**

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

Participating hosts (39 -> 36)
--

  Additional (2): bat-jsl-1 bat-arls-3 
  Missing(5): bat-dg1-7 fi-apl-guc fi-snb-2520m fi-glk-j4005 fi-kbl-8809g 

Possible new issues
---

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

### IGT changes ###

 Possible regressions 

  * igt@i915_selftest@live@hugepages:
- bat-mtlp-8: [PASS][1] -> [INCOMPLETE][2]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14561/bat-mtlp-8/igt@i915_selftest@l...@hugepages.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132292v1/bat-mtlp-8/igt@i915_selftest@l...@hugepages.html

  
Known issues


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

### IGT changes ###

 Issues hit 

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

  * igt@gem_huc_copy@huc-copy:
- bat-jsl-1:  NOTRUN -> [SKIP][5] ([i915#2190])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132292v1/bat-jsl-1/igt@gem_huc_c...@huc-copy.html

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

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

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

  * igt@gem_render_tiled_blits@basic:
- bat-arls-3: NOTRUN -> [SKIP][9] ([i915#10197] / [i915#10211] / 
[i915#4079])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132292v1/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_132292v1/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_132292v1/bat-arls-3/igt@gem_tiled_pread_basic.html

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

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

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
- bat-arls-3: NOTRUN -> [SKIP][14] ([i915#10202]) +1 other test skip
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132292v1/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-jsl-1:  NOTRUN -> [SKIP][15] ([i915#4103]) +1 other test skip
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132292v1/bat-jsl-1/igt@kms_cursor_leg...@basic-busy-flip-before-cursor-legacy.html

  * igt@kms_dsc@dsc-basic:
- bat-arls-3: NOTRUN -> [SKIP][16] ([i915#9886])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132292v1/bat-arls-3/igt@kms_...@dsc-basic.html
- bat-jsl-1:  NOTRUN -> [SKIP][17] ([i915#3555] / [i915#9886])
   [17]: 

[PATCH] drm/i915/dg2: wait for HuC load completion before running selftests

2024-04-10 Thread Daniele Ceraolo Spurio
On DG2, submissions to VCS engines tied to a gem context are blocked
until the HuC is loaded. Since some selftests do use a gem context,
wait for the HuC load to complete before running the tests to avoid
contamination.

Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/10564
Signed-off-by: Daniele Ceraolo Spurio 
Cc: John Harrison 
---
 .../gpu/drm/i915/selftests/i915_selftest.c| 36 ---
 1 file changed, 32 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/i915/selftests/i915_selftest.c 
b/drivers/gpu/drm/i915/selftests/i915_selftest.c
index ee79e0809a6d..fee76c1d2f45 100644
--- a/drivers/gpu/drm/i915/selftests/i915_selftest.c
+++ b/drivers/gpu/drm/i915/selftests/i915_selftest.c
@@ -154,6 +154,30 @@ __wait_gsc_proxy_completed(struct drm_i915_private *i915)
pr_warn(DRIVER_NAME "Timed out waiting for 
gsc_proxy_completion!\n");
 }
 
+static void
+__wait_gsc_huc_load_completed(struct drm_i915_private *i915)
+{
+   /* this only applies to DG2, so we only care about GT0 */
+   struct intel_huc *huc = _gt(i915)->uc.huc;
+   bool need_to_wait = (IS_ENABLED(CONFIG_INTEL_MEI_PXP) &&
+intel_huc_wait_required(huc));
+   /*
+* The GSC and PXP mei bringup depends on the kernel boot ordering, so
+* to account for the worst case scenario the HuC code waits for up to
+* 10s for the GSC driver to load and then another 5s for the PXP
+* component to bind before giving up, even though those steps normally
+* complete in less than a second from the i915 load. We match that
+* timeout here, but we expect to bail early due to the fence being
+* signalled even in a failure case, as it is extremely unlikely that
+* both components will use their full timeout.
+*/
+   unsigned long timeout_ms = 15000;
+
+   if (need_to_wait &&
+   wait_for(i915_sw_fence_done(>delayed_load.fence), timeout_ms))
+   pr_warn(DRIVER_NAME "Timed out waiting for huc load via 
GSC!\n");
+}
+
 static int __run_selftests(const char *name,
   struct selftest *st,
   unsigned int count,
@@ -228,14 +252,16 @@ int i915_mock_selftests(void)
 
 int i915_live_selftests(struct pci_dev *pdev)
 {
+   struct drm_i915_private *i915 = pdev_to_i915(pdev);
int err;
 
if (!i915_selftest.live)
return 0;
 
-   __wait_gsc_proxy_completed(pdev_to_i915(pdev));
+   __wait_gsc_proxy_completed(i915);
+   __wait_gsc_huc_load_completed(i915);
 
-   err = run_selftests(live, pdev_to_i915(pdev));
+   err = run_selftests(live, i915);
if (err) {
i915_selftest.live = err;
return err;
@@ -251,14 +277,16 @@ int i915_live_selftests(struct pci_dev *pdev)
 
 int i915_perf_selftests(struct pci_dev *pdev)
 {
+   struct drm_i915_private *i915 = pdev_to_i915(pdev);
int err;
 
if (!i915_selftest.perf)
return 0;
 
-   __wait_gsc_proxy_completed(pdev_to_i915(pdev));
+   __wait_gsc_proxy_completed(i915);
+   __wait_gsc_huc_load_completed(i915);
 
-   err = run_selftests(perf, pdev_to_i915(pdev));
+   err = run_selftests(perf, i915);
if (err) {
i915_selftest.perf = err;
return err;
-- 
2.43.0



✗ Fi.CI.BAT: failure for drm/i915/pps: pass display to PPS register macros (rev2)

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

Series: drm/i915/pps: pass display to PPS register macros (rev2)
URL   : https://patchwork.freedesktop.org/series/132286/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_14560 -> Patchwork_132286v2


Summary
---

  **FAILURE**

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

Participating hosts (39 -> 34)
--

  Missing(5): fi-kbl-7567u fi-snb-2520m fi-elk-e7500 fi-kbl-8809g 
bat-dg2-11 

Possible new issues
---

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

### IGT changes ###

 Possible regressions 

  * igt@i915_selftest@live@requests:
- bat-arls-2: NOTRUN -> [ABORT][1]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132286v2/bat-arls-2/igt@i915_selftest@l...@requests.html

  
Known issues


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

### IGT changes ###

 Issues hit 

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

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

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

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

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

  * igt@gem_render_tiled_blits@basic:
- bat-arls-2: NOTRUN -> [SKIP][8] ([i915#10197] / [i915#10211] / 
[i915#4079])
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132286v2/bat-arls-2/igt@gem_render_tiled_bl...@basic.html

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

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

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

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

  * igt@kms_dsc@dsc-basic:
- bat-arls-2: NOTRUN -> [SKIP][13] ([i915#9886])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132286v2/bat-arls-2/igt@kms_...@dsc-basic.html

  * igt@kms_force_connector_basic@force-load-detect:
- bat-arls-2: NOTRUN -> [SKIP][14] ([i915#10207])
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132286v2/bat-arls-2/igt@kms_force_connector_ba...@force-load-detect.html

  * igt@kms_psr@psr-primary-mmap-gtt@edp-1:
- bat-arls-2: NOTRUN -> [SKIP][15] ([i915#10196] / [i915#4077] / 
[i915#9688])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132286v2/bat-arls-2/igt@kms_psr@psr-primary-mmap-...@edp-1.html

  * igt@kms_setmode@basic-clone-single-crtc:
- bat-arls-2: NOTRUN -> [SKIP][16] ([i915#10208] / [i915#8809])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132286v2/bat-arls-2/igt@kms_setm...@basic-clone-single-crtc.html

  * igt@prime_vgem@basic-fence-mmap:
- bat-arls-2: NOTRUN -> [SKIP][17] ([i915#10196] / [i915#3708] / 
[i915#4077]) +1 

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

2024-04-10 Thread Ashutosh Dixit
There are no hwmon selftests so there is no need to enable hwmon for
selftests. So enable hwmon only for real driver load.

v2: Move the logic inside i915_hwmon.c
v3: Move is_i915_selftest definition to i915_selftest.h (Badal)
v4: s/is_i915_selftest/is_i915_selftest_module/

Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/10366
Signed-off-by: Ashutosh Dixit 
Reviewed-by: Badal Nilawar 
Reviewed-by: Andi Shyti 
---
 drivers/gpu/drm/i915/i915_hwmon.c| 3 ++-
 drivers/gpu/drm/i915/i915_selftest.h | 9 +
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/i915_hwmon.c 
b/drivers/gpu/drm/i915/i915_hwmon.c
index 8c3f443c8347..86d7cd1ef45e 100644
--- a/drivers/gpu/drm/i915/i915_hwmon.c
+++ b/drivers/gpu/drm/i915/i915_hwmon.c
@@ -10,6 +10,7 @@
 #include "i915_drv.h"
 #include "i915_hwmon.h"
 #include "i915_reg.h"
+#include "i915_selftest.h"
 #include "intel_mchbar_regs.h"
 #include "intel_pcode.h"
 #include "gt/intel_gt.h"
@@ -789,7 +790,7 @@ void i915_hwmon_register(struct drm_i915_private *i915)
int i;
 
/* hwmon is available only for dGfx */
-   if (!IS_DGFX(i915))
+   if (!IS_DGFX(i915) || is_i915_selftest_module())
return;
 
hwmon = devm_kzalloc(dev, sizeof(*hwmon), GFP_KERNEL);
diff --git a/drivers/gpu/drm/i915/i915_selftest.h 
b/drivers/gpu/drm/i915/i915_selftest.h
index bdf3e22c0a34..bba3fafaac8d 100644
--- a/drivers/gpu/drm/i915/i915_selftest.h
+++ b/drivers/gpu/drm/i915/i915_selftest.h
@@ -123,6 +123,15 @@ static inline int i915_perf_selftests(struct pci_dev 
*pdev) { return 0; }
 
 #endif
 
+static inline bool is_i915_selftest_module(void)
+{
+#if IS_ENABLED(CONFIG_DRM_I915_SELFTEST)
+   return i915_selftest.live || i915_selftest.perf || i915_selftest.mock;
+#else
+   return false;
+#endif
+}
+
 /* Using the i915_selftest_ prefix becomes a little unwieldy with the helpers.
  * Instead we use the igt_ shorthand, in reference to the intel-gpu-tools
  * suite of uabi test cases (which includes a test runner for our selftests).
-- 
2.41.0



✗ Fi.CI.CHECKPATCH: warning for drm/i915/pps: pass display to PPS register macros (rev2)

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

Series: drm/i915/pps: pass display to PPS register macros (rev2)
URL   : https://patchwork.freedesktop.org/series/132286/
State : warning

== Summary ==

Error: dim checkpatch failed
760f2ae26bc9 drm/i915/pps: pass display to PPS register macros
-:57: WARNING:LONG_LINE: line length of 102 exceeds 100 columns
#57: FILE: drivers/gpu/drm/i915/display/intel_lvds.c:165:
+   pps->powerdown_on_reset = intel_de_read(dev_priv, PP_CONTROL(display, 
0)) & PANEL_POWER_RESET;

-:142: WARNING:LONG_LINE: line length of 109 exceeds 100 columns
#142: FILE: drivers/gpu/drm/i915/display/intel_lvds.c:386:
+   if (intel_de_wait_for_clear(dev_priv, PP_STATUS(_priv->display, 0), 
PP_CYCLE_DELAY_ACTIVE, 5000))

-:238: WARNING:LONG_LINE: line length of 102 exceeds 100 columns
#238: FILE: drivers/gpu/drm/i915/display/intel_pps.c:1720:
+   port_sel = intel_de_read(dev_priv, PP_ON_DELAYS(display, 0)) & 
PANEL_PORT_SELECT_MASK;

-:255: WARNING:LONG_LINE: line length of 102 exceeds 100 columns
#255: FILE: drivers/gpu/drm/i915/display/intel_pps.c:1747:
+   port_sel = intel_de_read(dev_priv, PP_ON_DELAYS(display, 0)) & 
PANEL_PORT_SELECT_MASK;

total: 0 errors, 4 warnings, 0 checks, 262 lines checked




✓ Fi.CI.BAT: success for drm/i915/dsi: stop relying on implicit dev_priv variable

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

Series: drm/i915/dsi: stop relying on implicit dev_priv variable
URL   : https://patchwork.freedesktop.org/series/132285/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_14559 -> Patchwork_132285v1


Summary
---

  **SUCCESS**

  No regressions found.

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

Participating hosts (39 -> 36)
--

  Missing(3): fi-kbl-7567u fi-snb-2520m fi-kbl-8809g 

Known issues


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

### IGT changes ###

 Issues hit 

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

  
 Possible fixes 

  * igt@i915_pm_rpm@module-reload:
- {bat-mtlp-9}:   [WARN][3] ([i915#10436]) -> [PASS][4]
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14559/bat-mtlp-9/igt@i915_pm_...@module-reload.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132285v1/bat-mtlp-9/igt@i915_pm_...@module-reload.html

  * igt@i915_selftest@live@gtt:
- bat-arls-2: [ABORT][5] -> [PASS][6]
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14559/bat-arls-2/igt@i915_selftest@l...@gtt.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132285v1/bat-arls-2/igt@i915_selftest@l...@gtt.html

  * igt@i915_selftest@live@uncore:
- bat-dg2-14: [ABORT][7] ([i915#10366]) -> [PASS][8]
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14559/bat-dg2-14/igt@i915_selftest@l...@uncore.html
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132285v1/bat-dg2-14/igt@i915_selftest@l...@uncore.html

  
  {name}: This element is suppressed. This means it is ignored when computing
  the status of the difference (SUCCESS, WARNING, or FAILURE).

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


Build changes
-

  * Linux: CI_DRM_14559 -> Patchwork_132285v1

  CI-20190529: 20190529
  CI_DRM_14559: 3658e2ec471a1d67baa30a554583bcdd4be55857 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_7804: 7804
  Patchwork_132285v1: 3658e2ec471a1d67baa30a554583bcdd4be55857 @ 
git://anongit.freedesktop.org/gfx-ci/linux


### Linux commits

a456ef6d0d79 drm/i915/dsi: pass i915 to register macros instead of implicit 
variable
9024f5184152 drm/i915/dsi: add VLV_ prefix to VLV only register macros
bcea19177b09 drm/i915/dsi: remove unused _MIPIA_AUTOPWG register definition

== Logs ==

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


✗ Fi.CI.CHECKPATCH: warning for drm/i915/dsi: stop relying on implicit dev_priv variable

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

Series: drm/i915/dsi: stop relying on implicit dev_priv variable
URL   : https://patchwork.freedesktop.org/series/132285/
State : warning

== Summary ==

Error: dim checkpatch failed
02b70fe522db drm/i915/dsi: remove unused _MIPIA_AUTOPWG register definition
1b83a12b11bd drm/i915/dsi: add VLV_ prefix to VLV only register macros
-:60: WARNING:LONG_LINE: line length of 106 exceeds 100 columns
#60: FILE: drivers/gpu/drm/i915/display/vlv_dsi_regs.h:92:
+#define VLV_MIPI_TEARING_CTRL(port)_MMIO_MIPI(port, 
_MIPIA_TEARING_CTRL, _MIPIC_TEARING_CTRL)

total: 0 errors, 1 warnings, 0 checks, 40 lines checked
277cd13e43bc drm/i915/dsi: pass i915 to register macros instead of implicit 
variable
-:127: WARNING:LINE_SPACING: Missing a blank line after declarations
#127: FILE: drivers/gpu/drm/i915/display/vlv_dsi.c:349:
+   u32 tmp = intel_de_read(dev_priv, MIPI_DEVICE_READY(dev_priv, 
port));
+   intel_de_rmw(dev_priv, MIPI_CTRL(dev_priv, port),

-:143: WARNING:LONG_LINE: line length of 101 exceeds 100 columns
#143: FILE: drivers/gpu/drm/i915/display/vlv_dsi.c:363:
+   !(intel_de_read(dev_priv, MIPI_DEVICE_READY(dev_priv, 
port)) & DEVICE_READY);

-:636: WARNING:LONG_LINE: line length of 129 exceeds 100 columns
#636: FILE: drivers/gpu/drm/i915/display/vlv_dsi_regs.h:22:
+#define  BXT_MIPI_TRANS_HACTIVE(tc)_MMIO_MIPI(BXT_MIPI_BASE, tc, 
_BXT_MIPIA_TRANS_HACTIVE, _BXT_MIPIC_TRANS_HACTIVE)

-:644: WARNING:LONG_LINE: line length of 129 exceeds 100 columns
#644: FILE: drivers/gpu/drm/i915/display/vlv_dsi_regs.h:26:
+#define  BXT_MIPI_TRANS_VACTIVE(tc)_MMIO_MIPI(BXT_MIPI_BASE, tc, 
_BXT_MIPIA_TRANS_VACTIVE, _BXT_MIPIC_TRANS_VACTIVE)

-:652: WARNING:LONG_LINE: line length of 127 exceeds 100 columns
#652: FILE: drivers/gpu/drm/i915/display/vlv_dsi_regs.h:30:
+#define  BXT_MIPI_TRANS_VTOTAL(tc) _MMIO_MIPI(BXT_MIPI_BASE, tc, 
_BXT_MIPIA_TRANS_VTOTAL, _BXT_MIPIC_TRANS_VTOTAL)

-:665: WARNING:LONG_LINE: line length of 115 exceeds 100 columns
#665: FILE: drivers/gpu/drm/i915/display/vlv_dsi_regs.h:40:
+#define VLV_MIPI_PORT_CTRL(port)   _MMIO_MIPI(VLV_MIPI_BASE, port, 
_MIPIA_PORT_CTRL, _MIPIC_PORT_CTRL)

-:673: WARNING:LONG_LINE: line length of 121 exceeds 100 columns
#673: FILE: drivers/gpu/drm/i915/display/vlv_dsi_regs.h:45:
+#define BXT_MIPI_PORT_CTRL(tc) _MMIO_MIPI(BXT_MIPI_BASE, tc, 
_BXT_MIPIA_PORT_CTRL, _BXT_MIPIC_PORT_CTRL)

-:686: WARNING:LONG_LINE: line length of 129 exceeds 100 columns
#686: FILE: drivers/gpu/drm/i915/display/vlv_dsi_regs.h:89:
+#define VLV_MIPI_TEARING_CTRL(port)
_MMIO_MIPI(VLV_MIPI_BASE, port, _MIPIA_TEARING_CTRL, _MIPIC_TEARING_CTRL)

-:697: WARNING:LONG_LINE: line length of 129 exceeds 100 columns
#697: FILE: drivers/gpu/drm/i915/display/vlv_dsi_regs.h:97:
+#define MIPI_DEVICE_READY(i915, port)  
_MMIO_MIPI(_MIPI_MMIO_BASE(i915), port, _MIPIA_DEVICE_READY, 
_MIPIC_DEVICE_READY)

-:713: WARNING:LONG_LINE: line length of 123 exceeds 100 columns
#713: FILE: drivers/gpu/drm/i915/display/vlv_dsi_regs.h:107:
+#define MIPI_INTR_STAT(i915, port) 
_MMIO_MIPI(_MIPI_MMIO_BASE(i915), port, _MIPIA_INTR_STAT, _MIPIC_INTR_STAT)

-:716: WARNING:LONG_LINE: line length of 119 exceeds 100 columns
#716: FILE: drivers/gpu/drm/i915/display/vlv_dsi_regs.h:110:
+#define MIPI_INTR_EN(i915, port)   
_MMIO_MIPI(_MIPI_MMIO_BASE(i915), port, _MIPIA_INTR_EN, _MIPIC_INTR_EN)

-:729: WARNING:LONG_LINE: line length of 129 exceeds 100 columns
#729: FILE: drivers/gpu/drm/i915/display/vlv_dsi_regs.h:146:
+#define MIPI_DSI_FUNC_PRG(i915, port)  
_MMIO_MIPI(_MIPI_MMIO_BASE(i915), port, _MIPIA_DSI_FUNC_PRG, 
_MIPIC_DSI_FUNC_PRG)

-:742: WARNING:LONG_LINE: line length of 131 exceeds 100 columns
#742: FILE: drivers/gpu/drm/i915/display/vlv_dsi_regs.h:169:
+#define MIPI_HS_TX_TIMEOUT(i915, port) 
_MMIO_MIPI(_MIPI_MMIO_BASE(i915), port, _MIPIA_HS_TX_TIMEOUT, 
_MIPIC_HS_TX_TIMEOUT)

-:750: WARNING:LONG_LINE: line length of 131 exceeds 100 columns
#750: FILE: drivers/gpu/drm/i915/display/vlv_dsi_regs.h:174:
+#define MIPI_LP_RX_TIMEOUT(i915, port) 
_MMIO_MIPI(_MIPI_MMIO_BASE(i915), port, _MIPIA_LP_RX_TIMEOUT, 
_MIPIC_LP_RX_TIMEOUT)

-:758: WARNING:LONG_LINE: line length of 143 exceeds 100 columns
#758: FILE: drivers/gpu/drm/i915/display/vlv_dsi_regs.h:179:
+#define MIPI_TURN_AROUND_TIMEOUT(i915, port)   
_MMIO_MIPI(_MIPI_MMIO_BASE(i915), port, _MIPIA_TURN_AROUND_TIMEOUT, 
_MIPIC_TURN_AROUND_TIMEOUT)

-:766: WARNING:LONG_LINE: line length of 141 exceeds 100 columns
#766: FILE: drivers/gpu/drm/i915/display/vlv_dsi_regs.h:184:
+#define MIPI_DEVICE_RESET_TIMER(i915, port)
_MMIO_MIPI(_MIPI_MMIO_BASE(i915), port, _MIPIA_DEVICE_RESET_TIMER, 
_MIPIC_DEVICE_RESET_TIMER)

-:774: WARNING:LONG_LINE: line length of 133 exceeds 100 columns
#774: FILE: drivers/gpu/drm/i915/display/vlv_dsi_regs.h:189:
+#define MIPI_DPI_RESOLUTION(i915, port)  

Re: [PATCH i-g-t v2] lib/kunit: Read results from debugfs

2024-04-10 Thread Janusz Krzysztofik
Hi Lucas,

On Friday, 5 April 2024 19:54:53 CEST Janusz Krzysztofik wrote:
> KUnit can provide KTAP reports from test modules via debugfs files, one
> per test suite.  Using that source of test results instead of extracting
> them from dmesg, where they may be interleaved with other kernel messages,
> seems more easy to handle and less error prone.  Switch to it.
> 
> If KUnit debugfs support is found not configured then fall back to legacy
> processing path.
> 
> v2: Check validity of debugfs argument before calling kunit_get_tests()
> (Kamil),
>   - replace multiple openat() + fdopen/fdopendir(), each followed by an
> error check, with less expensive fopen/opendir() of file/dir pathname
> components concatentated to a local buffer, protected from buffer
> overflow or truncation with a single check for enough buffer space
> (Lucas),
>   - avoid confusing 'if' statement condition (Lucas).

Could you please confirm if your R-b still applies?

Thanks,
Janusz

> 
> Signed-off-by: Janusz Krzysztofik 
> Cc: Kamil Konieczny 
> Cc: Lucas De Marchi 
> ---
>  lib/igt_kmod.c | 131 +++--
>  1 file changed, 94 insertions(+), 37 deletions(-)
> 
> diff --git a/lib/igt_kmod.c b/lib/igt_kmod.c
> index 1ec9c8a602..243785873d 100644
> --- a/lib/igt_kmod.c
> +++ b/lib/igt_kmod.c
> @@ -28,6 +28,7 @@
>  #include 
>  #include 
>  #include 
> +#include 
>  #include 
>  #include 
>  #include 
> @@ -39,6 +40,7 @@
>  
>  #include "igt_aux.h"
>  #include "igt_core.h"
> +#include "igt_debugfs.h"
>  #include "igt_kmod.h"
>  #include "igt_ktap.h"
>  #include "igt_sysfs.h"
> @@ -864,6 +866,19 @@ static int open_parameters(const char *module_name)
>   return open(path, O_RDONLY);
>  }
>  
> +static void kunit_debugfs_path(char *kunit_path)
> +{
> + const char *debugfs_path = igt_debugfs_mount();
> +
> + if (igt_debug_on(!debugfs_path))
> + return;
> +
> + if (igt_debug_on(strlen(debugfs_path) + strlen("/kunit/") >= PATH_MAX))
> + return;
> +
> + strcpy(stpcpy(kunit_path, debugfs_path), "/kunit/");
> +}
> +
>  static bool kunit_set_filtering(const char *filter_glob, const char *filter,
>   const char *filter_action)
>  {
> @@ -1071,21 +1086,41 @@ static void kunit_results_free(struct igt_list_head 
> *results,
>   free(*suite_name);
>  }
>  
> -static int kunit_get_results(struct igt_list_head *results, int kmsg_fd,
> -  struct igt_ktap_results **ktap)
> +static int kunit_get_results(struct igt_list_head *results, const char 
> *debugfs_path,
> +  const char *suite, struct igt_ktap_results **ktap)
>  {
> + char results_path[PATH_MAX];
> + FILE *results_stream;
> + char *buf = NULL;
> + size_t size = 0;
> + ssize_t len;
>   int err;
>  
> + if (igt_debug_on(strlen(debugfs_path) + strlen(suite) + 
> strlen("/results") >= PATH_MAX))
> + return -ENOSPC;
> +
> + strcpy(stpcpy(stpcpy(results_path, debugfs_path), suite), "/results");
> + results_stream = fopen(results_path, "r");
> + if (igt_debug_on(!results_stream))
> + return -errno;
> +
>   *ktap = igt_ktap_alloc(results);
> - if (igt_debug_on(!*ktap))
> - return -ENOMEM;
> + if (igt_debug_on(!*ktap)) {
> + err = -ENOMEM;
> + goto out_fclose;
> + }
>  
> - do
> - igt_debug_on((err = kunit_kmsg_result_get(results, NULL, 
> kmsg_fd, *ktap),
> -   err && err != -EINPROGRESS));
> - while (err == -EINPROGRESS);
> + while (len = getline(, , results_stream), len > 0) {
> + err = igt_ktap_parse(buf, *ktap);
> + if (err != -EINPROGRESS)
> + break;
> + }
> +
> + free(buf);
>  
>   igt_ktap_free(ktap);
> +out_fclose:
> + fclose(results_stream);
>  
>   return err;
>  }
> @@ -1101,7 +1136,13 @@ static void __igt_kunit_legacy(struct igt_ktest *tst,
>   pthread_mutexattr_t attr;
>   IGT_LIST_HEAD(results);
>   unsigned long taints;
> - int ret;
> + int flags, ret;
> +
> + igt_skip_on_f(tst->kmsg < 0, "Could not open /dev/kmsg\n");
> +
> + igt_skip_on((flags = fcntl(tst->kmsg, F_GETFL, 0), flags < 0));
> + igt_skip_on_f(fcntl(tst->kmsg, F_SETFL, flags & ~O_NONBLOCK) == -1,
> +   "Could not set /dev/kmsg to blocking mode\n");
>  
>   igt_skip_on(lseek(tst->kmsg, 0, SEEK_END) < 0);
>  
> @@ -1224,30 +1265,17 @@ static void __igt_kunit_legacy(struct igt_ktest *tst,
>   igt_skip_on_f(ret, "KTAP parser failed\n");
>  }
>  
> -static void kunit_get_tests_timeout(int signal)
> -{
> - igt_skip("Timed out while trying to extract a list of KUnit test cases 
> from /dev/kmsg\n");
> -}
> -
>  static bool kunit_get_tests(struct igt_list_head *tests,
>   struct igt_ktest *tst,
>   const char *suite,
> 

[PATCH] drm/edid: Parse topology block for all DispID structure v1.x

2024-04-10 Thread Ville Syrjala
From: Ville Syrjälä 

DisplayID spec v1.3 revision history notes do claim that
the toplogy block was added in v1.3 so requiring structure
v1.2 would seem correct, but there is at least one EDID in
edid.tv with a topology block and structure v1.0. And
there are also EDIDs with DisplayID structure v1.3 which
seems to be totally incorrect as DisplayID spec v1.3 lists
structure v1.2 as the only legal value.

Unfortunately I couldn't find copies of DisplayID spec
v1.0-v1.2 anywhere (even on vesa.org), so I'll have to
go on empirical evidence alone.

We used to parse the topology block on all v1.x
structures until the check for structure v2.0 was added.
Let's go back to doing that as the evidence does suggest
that there are DisplayIDs in the wild that would miss
out on the topology stuff otherwise.

Also toss out DISPLAY_ID_STRUCTURE_VER_12 entirely as
it doesn't appear we can really use it for anything.

I *think* we could technically skip all the structure
version checks as the block tags shouldn't conflict
between v2.0 and v1.x. But no harm in having a bit of
extra sanity checks I guess.

So far I'm not aware of any user reported regressions
from overly strict check, but I do know that it broke
igt/kms_tiled_display's fake DisplayID as that one
gets generated with structure v1.0.

Cc: Jani Nikula 
Cc: Dmitry Osipenko 
Fixes: c5a486af9df7 ("drm/edid: parse Tiled Display Topology Data Block for 
DisplayID 2.0")
Signed-off-by: Ville Syrjälä 
---
 drivers/gpu/drm/drm_edid.c  | 2 +-
 include/drm/drm_displayid.h | 1 -
 2 files changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index ea77577a3786..f0948ab214b3 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -7405,7 +7405,7 @@ static void drm_parse_tiled_block(struct drm_connector 
*connector,
 static bool displayid_is_tiled_block(const struct displayid_iter *iter,
 const struct displayid_block *block)
 {
-   return (displayid_version(iter) == DISPLAY_ID_STRUCTURE_VER_12 &&
+   return (displayid_version(iter) < DISPLAY_ID_STRUCTURE_VER_20 &&
block->tag == DATA_BLOCK_TILED_DISPLAY) ||
(displayid_version(iter) == DISPLAY_ID_STRUCTURE_VER_20 &&
 block->tag == DATA_BLOCK_2_TILED_DISPLAY_TOPOLOGY);
diff --git a/include/drm/drm_displayid.h b/include/drm/drm_displayid.h
index 566497eeb3b8..bc1f6b378195 100644
--- a/include/drm/drm_displayid.h
+++ b/include/drm/drm_displayid.h
@@ -30,7 +30,6 @@ struct drm_edid;
 #define VESA_IEEE_OUI  0x3a0292
 
 /* DisplayID Structure versions */
-#define DISPLAY_ID_STRUCTURE_VER_120x12
 #define DISPLAY_ID_STRUCTURE_VER_200x20
 
 /* DisplayID Structure v1r2 Data Blocks */
-- 
2.43.2



[linux-next:master] BUILD REGRESSION 6ebf211bb11dfc004a2ff73a9de5386fa309c430

2024-04-10 Thread kernel test robot
tree/branch: 
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
branch HEAD: 6ebf211bb11dfc004a2ff73a9de5386fa309c430  Add linux-next specific 
files for 20240410

Error/Warning reports:

https://lore.kernel.org/oe-kbuild-all/202404102353.cv1gujk3-...@intel.com

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

WARNING: modpost: vmlinux: section mismatch in reference: bitmap_read+0x128 
(section: .text.unlikely) -> __setup_str_initcall_blacklist (section: 
.init.rodata)
drivers/gpu/drm/drm_mm.c:614:20: error: function 'drm_mm_node_scanned_block' is 
not needed and will not be emitted [-Werror,-Wunneeded-internal-declaration]

Unverified Error/Warning (likely false positive, please contact us if 
interested):

fs/exfat/file.c:554 exfat_extend_valid_size() error: uninitialized symbol 'err'.

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-alldefconfig
|   |-- lib-..-mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|   `-- mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|-- 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-20240410
|   |-- lib-..-mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|   `-- mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|-- csky-randconfig-002-20240410
|   |-- lib-..-mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|   `-- mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|-- csky-randconfig-r054-20240410
|   |-- lib-..-mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|   `-- mm-internal.h:warning:suggest-parentheses-around-in-operand-of
|-- i386-randconfig-141-20240410
|   `-- 
fs-exfat-file.c-exfat_extend_valid_size()-error:uninitialized-symbol-err-.
|-- 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-allyescon

Re: [PATCH] drm/i915/pps: pass display to PPS register macros

2024-04-10 Thread Jani Nikula
On Wed, 10 Apr 2024, Jani Nikula  wrote:
> Pass struct intel_display pointer to PPS register macros intead of
> implicitly relying on the dev_priv local variable.
>
> Signed-off-by: Jani Nikula 

Whoops, accidentally sent the same patch twice, with slightly different
commit messages.

-- 
Jani Nikula, Intel


[PATCH] drm/i915/pps: pass display to PPS register macros

2024-04-10 Thread Jani Nikula
Pass struct intel_display pointer to PPS register macros intead of
implicitly relying on the dev_priv local variable.

Signed-off-by: Jani Nikula 

---

Mostly see how this feels. Might be better to wait for [1] to land so we
could more easily pass display pointer everywhere. I don't really want
to promote >display usage all that much. Would be better to get it
via to_intel_display(some_object) instead.

[1] https://lore.kernel.org/r/cover.1712665176.git.jani.nik...@intel.com
---
 .../drm/i915/display/intel_display_power.c|  2 +-
 drivers/gpu/drm/i915/display/intel_dsi_vbt.c  |  4 +--
 drivers/gpu/drm/i915/display/intel_lvds.c | 32 +++
 drivers/gpu/drm/i915/display/intel_pps.c  | 32 ++-
 drivers/gpu/drm/i915/display/intel_pps_regs.h | 16 +-
 5 files changed, 46 insertions(+), 40 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_display_power.c 
b/drivers/gpu/drm/i915/display/intel_display_power.c
index 6fd4fa52253a..1ebdc8527f7f 100644
--- a/drivers/gpu/drm/i915/display/intel_display_power.c
+++ b/drivers/gpu/drm/i915/display/intel_display_power.c
@@ -1213,7 +1213,7 @@ static void assert_can_disable_lcpll(struct 
drm_i915_private *dev_priv)
intel_de_read(dev_priv, WRPLL_CTL(1)) & 
WRPLL_PLL_ENABLE,
"WRPLL2 enabled\n");
I915_STATE_WARN(dev_priv,
-   intel_de_read(dev_priv, PP_STATUS(0)) & PP_ON,
+   intel_de_read(dev_priv, PP_STATUS(_priv->display, 
0)) & PP_ON,
"Panel power on\n");
I915_STATE_WARN(dev_priv,
intel_de_read(dev_priv, BLC_PWM_CPU_CTL2) & 
BLM_PWM_ENABLE,
diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c 
b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c
index a5d7fc8418c9..97dd1fc7fdba 100644
--- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c
+++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c
@@ -353,14 +353,14 @@ static void icl_native_gpio_set_value(struct 
drm_i915_private *dev_priv,
case MIPI_AVDD_EN_2:
index = gpio == MIPI_AVDD_EN_1 ? 0 : 1;
 
-   intel_de_rmw(dev_priv, PP_CONTROL(index), PANEL_POWER_ON,
+   intel_de_rmw(dev_priv, PP_CONTROL(_priv->display, index), 
PANEL_POWER_ON,
 value ? PANEL_POWER_ON : 0);
break;
case MIPI_BKLT_EN_1:
case MIPI_BKLT_EN_2:
index = gpio == MIPI_BKLT_EN_1 ? 0 : 1;
 
-   intel_de_rmw(dev_priv, PP_CONTROL(index), EDP_BLC_ENABLE,
+   intel_de_rmw(dev_priv, PP_CONTROL(_priv->display, index), 
EDP_BLC_ENABLE,
 value ? EDP_BLC_ENABLE : 0);
break;
case MIPI_AVEE_EN_1:
diff --git a/drivers/gpu/drm/i915/display/intel_lvds.c 
b/drivers/gpu/drm/i915/display/intel_lvds.c
index 8b8959073466..5edc5e8da19b 100644
--- a/drivers/gpu/drm/i915/display/intel_lvds.c
+++ b/drivers/gpu/drm/i915/display/intel_lvds.c
@@ -159,20 +159,21 @@ static void intel_lvds_get_config(struct intel_encoder 
*encoder,
 static void intel_lvds_pps_get_hw_state(struct drm_i915_private *dev_priv,
struct intel_lvds_pps *pps)
 {
+   struct intel_display *display = _priv->display;
u32 val;
 
-   pps->powerdown_on_reset = intel_de_read(dev_priv, PP_CONTROL(0)) & 
PANEL_POWER_RESET;
+   pps->powerdown_on_reset = intel_de_read(dev_priv, PP_CONTROL(display, 
0)) & PANEL_POWER_RESET;
 
-   val = intel_de_read(dev_priv, PP_ON_DELAYS(0));
+   val = intel_de_read(dev_priv, PP_ON_DELAYS(display, 0));
pps->port = REG_FIELD_GET(PANEL_PORT_SELECT_MASK, val);
pps->t1_t2 = REG_FIELD_GET(PANEL_POWER_UP_DELAY_MASK, val);
pps->t5 = REG_FIELD_GET(PANEL_LIGHT_ON_DELAY_MASK, val);
 
-   val = intel_de_read(dev_priv, PP_OFF_DELAYS(0));
+   val = intel_de_read(dev_priv, PP_OFF_DELAYS(display, 0));
pps->t3 = REG_FIELD_GET(PANEL_POWER_DOWN_DELAY_MASK, val);
pps->tx = REG_FIELD_GET(PANEL_LIGHT_OFF_DELAY_MASK, val);
 
-   val = intel_de_read(dev_priv, PP_DIVISOR(0));
+   val = intel_de_read(dev_priv, PP_DIVISOR(display, 0));
pps->divider = REG_FIELD_GET(PP_REFERENCE_DIVIDER_MASK, val);
val = REG_FIELD_GET(PANEL_POWER_CYCLE_DELAY_MASK, val);
/*
@@ -207,25 +208,26 @@ static void intel_lvds_pps_get_hw_state(struct 
drm_i915_private *dev_priv,
 static void intel_lvds_pps_init_hw(struct drm_i915_private *dev_priv,
   struct intel_lvds_pps *pps)
 {
+   struct intel_display *display = _priv->display;
u32 val;
 
-   val = intel_de_read(dev_priv, PP_CONTROL(0));
+   val = intel_de_read(dev_priv, PP_CONTROL(display, 0));
drm_WARN_ON(_priv->drm,
(val & PANEL_UNLOCK_MASK) != PANEL_UNLOCK_REGS);
if (pps->powerdown_on_reset)
val |= PANEL_POWER_RESET;
-   

[PATCH] drm/i915/pps: pass display to PPS register macros

2024-04-10 Thread Jani Nikula
Pass struct intel_display pointer to PPS register macros intead of
implicitly relying on the dev_priv local variable.

Signed-off-by: Jani Nikula 

---

Mostly see how this feels. Might be better to wait for [1] to land so we
could more easily pass display pointer everywhere.

[1] https://lore.kernel.org/r/cover.1712665176.git.jani.nik...@intel.com
---
 .../drm/i915/display/intel_display_power.c|  2 +-
 drivers/gpu/drm/i915/display/intel_dsi_vbt.c  |  4 +--
 drivers/gpu/drm/i915/display/intel_lvds.c | 32 +++
 drivers/gpu/drm/i915/display/intel_pps.c  | 32 ++-
 drivers/gpu/drm/i915/display/intel_pps_regs.h | 16 +-
 5 files changed, 46 insertions(+), 40 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_display_power.c 
b/drivers/gpu/drm/i915/display/intel_display_power.c
index 6fd4fa52253a..1ebdc8527f7f 100644
--- a/drivers/gpu/drm/i915/display/intel_display_power.c
+++ b/drivers/gpu/drm/i915/display/intel_display_power.c
@@ -1213,7 +1213,7 @@ static void assert_can_disable_lcpll(struct 
drm_i915_private *dev_priv)
intel_de_read(dev_priv, WRPLL_CTL(1)) & 
WRPLL_PLL_ENABLE,
"WRPLL2 enabled\n");
I915_STATE_WARN(dev_priv,
-   intel_de_read(dev_priv, PP_STATUS(0)) & PP_ON,
+   intel_de_read(dev_priv, PP_STATUS(_priv->display, 
0)) & PP_ON,
"Panel power on\n");
I915_STATE_WARN(dev_priv,
intel_de_read(dev_priv, BLC_PWM_CPU_CTL2) & 
BLM_PWM_ENABLE,
diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c 
b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c
index a5d7fc8418c9..97dd1fc7fdba 100644
--- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c
+++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c
@@ -353,14 +353,14 @@ static void icl_native_gpio_set_value(struct 
drm_i915_private *dev_priv,
case MIPI_AVDD_EN_2:
index = gpio == MIPI_AVDD_EN_1 ? 0 : 1;
 
-   intel_de_rmw(dev_priv, PP_CONTROL(index), PANEL_POWER_ON,
+   intel_de_rmw(dev_priv, PP_CONTROL(_priv->display, index), 
PANEL_POWER_ON,
 value ? PANEL_POWER_ON : 0);
break;
case MIPI_BKLT_EN_1:
case MIPI_BKLT_EN_2:
index = gpio == MIPI_BKLT_EN_1 ? 0 : 1;
 
-   intel_de_rmw(dev_priv, PP_CONTROL(index), EDP_BLC_ENABLE,
+   intel_de_rmw(dev_priv, PP_CONTROL(_priv->display, index), 
EDP_BLC_ENABLE,
 value ? EDP_BLC_ENABLE : 0);
break;
case MIPI_AVEE_EN_1:
diff --git a/drivers/gpu/drm/i915/display/intel_lvds.c 
b/drivers/gpu/drm/i915/display/intel_lvds.c
index 8b8959073466..5edc5e8da19b 100644
--- a/drivers/gpu/drm/i915/display/intel_lvds.c
+++ b/drivers/gpu/drm/i915/display/intel_lvds.c
@@ -159,20 +159,21 @@ static void intel_lvds_get_config(struct intel_encoder 
*encoder,
 static void intel_lvds_pps_get_hw_state(struct drm_i915_private *dev_priv,
struct intel_lvds_pps *pps)
 {
+   struct intel_display *display = _priv->display;
u32 val;
 
-   pps->powerdown_on_reset = intel_de_read(dev_priv, PP_CONTROL(0)) & 
PANEL_POWER_RESET;
+   pps->powerdown_on_reset = intel_de_read(dev_priv, PP_CONTROL(display, 
0)) & PANEL_POWER_RESET;
 
-   val = intel_de_read(dev_priv, PP_ON_DELAYS(0));
+   val = intel_de_read(dev_priv, PP_ON_DELAYS(display, 0));
pps->port = REG_FIELD_GET(PANEL_PORT_SELECT_MASK, val);
pps->t1_t2 = REG_FIELD_GET(PANEL_POWER_UP_DELAY_MASK, val);
pps->t5 = REG_FIELD_GET(PANEL_LIGHT_ON_DELAY_MASK, val);
 
-   val = intel_de_read(dev_priv, PP_OFF_DELAYS(0));
+   val = intel_de_read(dev_priv, PP_OFF_DELAYS(display, 0));
pps->t3 = REG_FIELD_GET(PANEL_POWER_DOWN_DELAY_MASK, val);
pps->tx = REG_FIELD_GET(PANEL_LIGHT_OFF_DELAY_MASK, val);
 
-   val = intel_de_read(dev_priv, PP_DIVISOR(0));
+   val = intel_de_read(dev_priv, PP_DIVISOR(display, 0));
pps->divider = REG_FIELD_GET(PP_REFERENCE_DIVIDER_MASK, val);
val = REG_FIELD_GET(PANEL_POWER_CYCLE_DELAY_MASK, val);
/*
@@ -207,25 +208,26 @@ static void intel_lvds_pps_get_hw_state(struct 
drm_i915_private *dev_priv,
 static void intel_lvds_pps_init_hw(struct drm_i915_private *dev_priv,
   struct intel_lvds_pps *pps)
 {
+   struct intel_display *display = _priv->display;
u32 val;
 
-   val = intel_de_read(dev_priv, PP_CONTROL(0));
+   val = intel_de_read(dev_priv, PP_CONTROL(display, 0));
drm_WARN_ON(_priv->drm,
(val & PANEL_UNLOCK_MASK) != PANEL_UNLOCK_REGS);
if (pps->powerdown_on_reset)
val |= PANEL_POWER_RESET;
-   intel_de_write(dev_priv, PP_CONTROL(0), val);
+   intel_de_write(dev_priv, PP_CONTROL(display, 0), val);
 
-   intel_de_write(dev_priv, 

[PATCH 3/3] drm/i915/dsi: pass i915 to register macros instead of implicit variable

2024-04-10 Thread Jani Nikula
Stop relying on the dev_priv local variable in the DSI register
macros. Pass i915 pointer to the macros. Move the MIPI DSI MMIO base
selection to a different level, passing it to _MMIO_MIPI() and doing the
addition there.

Signed-off-by: Jani Nikula 

---

Tip: Applying the patch and using 'git show --color-words' is probably
the easiest way to review.
---
 drivers/gpu/drm/i915/display/intel_display.c |   2 +-
 drivers/gpu/drm/i915/display/vlv_dsi.c   | 186 +--
 drivers/gpu/drm/i915/display/vlv_dsi_pll.c   |   6 +-
 drivers/gpu/drm/i915/display/vlv_dsi_regs.h  | 322 +--
 4 files changed, 256 insertions(+), 260 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_display.c 
b/drivers/gpu/drm/i915/display/intel_display.c
index 912213ee0250..f17c2ba537f6 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -3742,7 +3742,7 @@ static bool bxt_get_dsi_transcoder_state(struct 
intel_crtc *crtc,
if (!(tmp & DPI_ENABLE))
continue;
 
-   tmp = intel_de_read(dev_priv, MIPI_CTRL(port));
+   tmp = intel_de_read(dev_priv, MIPI_CTRL(dev_priv, port));
if ((tmp & BXT_PIPE_SELECT_MASK) != BXT_PIPE_SELECT(crtc->pipe))
continue;
 
diff --git a/drivers/gpu/drm/i915/display/vlv_dsi.c 
b/drivers/gpu/drm/i915/display/vlv_dsi.c
index 665247a2e834..3d9d9281882a 100644
--- a/drivers/gpu/drm/i915/display/vlv_dsi.c
+++ b/drivers/gpu/drm/i915/display/vlv_dsi.c
@@ -93,7 +93,7 @@ void vlv_dsi_wait_for_fifo_empty(struct intel_dsi *intel_dsi, 
enum port port)
mask = LP_CTRL_FIFO_EMPTY | HS_CTRL_FIFO_EMPTY |
LP_DATA_FIFO_EMPTY | HS_DATA_FIFO_EMPTY;
 
-   if (intel_de_wait_for_set(dev_priv, MIPI_GEN_FIFO_STAT(port),
+   if (intel_de_wait_for_set(dev_priv, MIPI_GEN_FIFO_STAT(dev_priv, port),
  mask, 100))
drm_err(_priv->drm, "DPI FIFOs are not empty\n");
 }
@@ -148,20 +148,20 @@ static ssize_t intel_dsi_host_transfer(struct 
mipi_dsi_host *host,
header = packet.header;
 
if (msg->flags & MIPI_DSI_MSG_USE_LPM) {
-   data_reg = MIPI_LP_GEN_DATA(port);
+   data_reg = MIPI_LP_GEN_DATA(dev_priv, port);
data_mask = LP_DATA_FIFO_FULL;
-   ctrl_reg = MIPI_LP_GEN_CTRL(port);
+   ctrl_reg = MIPI_LP_GEN_CTRL(dev_priv, port);
ctrl_mask = LP_CTRL_FIFO_FULL;
} else {
-   data_reg = MIPI_HS_GEN_DATA(port);
+   data_reg = MIPI_HS_GEN_DATA(dev_priv, port);
data_mask = HS_DATA_FIFO_FULL;
-   ctrl_reg = MIPI_HS_GEN_CTRL(port);
+   ctrl_reg = MIPI_HS_GEN_CTRL(dev_priv, port);
ctrl_mask = HS_CTRL_FIFO_FULL;
}
 
/* note: this is never true for reads */
if (packet.payload_length) {
-   if (intel_de_wait_for_clear(dev_priv, MIPI_GEN_FIFO_STAT(port),
+   if (intel_de_wait_for_clear(dev_priv, 
MIPI_GEN_FIFO_STAT(dev_priv, port),
data_mask, 50))
drm_err(_priv->drm,
"Timeout waiting for HS/LP DATA FIFO !full\n");
@@ -171,11 +171,11 @@ static ssize_t intel_dsi_host_transfer(struct 
mipi_dsi_host *host,
}
 
if (msg->rx_len) {
-   intel_de_write(dev_priv, MIPI_INTR_STAT(port),
+   intel_de_write(dev_priv, MIPI_INTR_STAT(dev_priv, port),
   GEN_READ_DATA_AVAIL);
}
 
-   if (intel_de_wait_for_clear(dev_priv, MIPI_GEN_FIFO_STAT(port),
+   if (intel_de_wait_for_clear(dev_priv, MIPI_GEN_FIFO_STAT(dev_priv, 
port),
ctrl_mask, 50)) {
drm_err(_priv->drm,
"Timeout waiting for HS/LP CTRL FIFO !full\n");
@@ -187,7 +187,7 @@ static ssize_t intel_dsi_host_transfer(struct mipi_dsi_host 
*host,
/* ->rx_len is set only for reads */
if (msg->rx_len) {
data_mask = GEN_READ_DATA_AVAIL;
-   if (intel_de_wait_for_set(dev_priv, MIPI_INTR_STAT(port),
+   if (intel_de_wait_for_set(dev_priv, MIPI_INTR_STAT(dev_priv, 
port),
  data_mask, 50))
drm_err(_priv->drm,
"Timeout waiting for read data.\n");
@@ -237,17 +237,17 @@ static int dpi_send_cmd(struct intel_dsi *intel_dsi, u32 
cmd, bool hs,
cmd |= DPI_LP_MODE;
 
/* clear bit */
-   intel_de_write(dev_priv, MIPI_INTR_STAT(port), SPL_PKT_SENT_INTERRUPT);
+   intel_de_write(dev_priv, MIPI_INTR_STAT(dev_priv, port), 
SPL_PKT_SENT_INTERRUPT);
 
/* XXX: old code skips write if control unchanged */
-   if (cmd == intel_de_read(dev_priv, MIPI_DPI_CONTROL(port)))
+   if (cmd == intel_de_read(dev_priv, 

[PATCH 2/3] drm/i915/dsi: add VLV_ prefix to VLV only register macros

2024-04-10 Thread Jani Nikula
All the BXT specific macros have BXT_ prefix, do the same for VLV for
consistency.

Signed-off-by: Jani Nikula 
---
 drivers/gpu/drm/i915/display/vlv_dsi.c  | 6 +++---
 drivers/gpu/drm/i915/display/vlv_dsi_regs.h | 4 ++--
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/vlv_dsi.c 
b/drivers/gpu/drm/i915/display/vlv_dsi.c
index 63f4af601d15..665247a2e834 100644
--- a/drivers/gpu/drm/i915/display/vlv_dsi.c
+++ b/drivers/gpu/drm/i915/display/vlv_dsi.c
@@ -481,7 +481,7 @@ static void vlv_dsi_device_ready(struct intel_encoder 
*encoder)
 * Common bit for both MIPI Port A & MIPI Port C
 * No similar bit in MIPI Port C reg
 */
-   intel_de_rmw(dev_priv, MIPI_PORT_CTRL(PORT_A), 0, 
LP_OUTPUT_HOLD);
+   intel_de_rmw(dev_priv, VLV_MIPI_PORT_CTRL(PORT_A), 0, 
LP_OUTPUT_HOLD);
usleep_range(1000, 1500);
 
intel_de_write(dev_priv, MIPI_DEVICE_READY(port),
@@ -563,7 +563,7 @@ static void glk_dsi_clear_device_ready(struct intel_encoder 
*encoder)
 static i915_reg_t port_ctrl_reg(struct drm_i915_private *i915, enum port port)
 {
return IS_GEMINILAKE(i915) || IS_BROXTON(i915) ?
-   BXT_MIPI_PORT_CTRL(port) : MIPI_PORT_CTRL(port);
+   BXT_MIPI_PORT_CTRL(port) : VLV_MIPI_PORT_CTRL(port);
 }
 
 static void vlv_dsi_clear_device_ready(struct intel_encoder *encoder)
@@ -576,7 +576,7 @@ static void vlv_dsi_clear_device_ready(struct intel_encoder 
*encoder)
for_each_dsi_port(port, intel_dsi->ports) {
/* Common bit for both MIPI Port A & MIPI Port C on VLV/CHV */
i915_reg_t port_ctrl = IS_BROXTON(dev_priv) ?
-   BXT_MIPI_PORT_CTRL(port) : MIPI_PORT_CTRL(PORT_A);
+   BXT_MIPI_PORT_CTRL(port) : VLV_MIPI_PORT_CTRL(PORT_A);
 
intel_de_write(dev_priv, MIPI_DEVICE_READY(port),
   DEVICE_READY | ULPS_STATE_ENTER);
diff --git a/drivers/gpu/drm/i915/display/vlv_dsi_regs.h 
b/drivers/gpu/drm/i915/display/vlv_dsi_regs.h
index b0cdaad7db9c..12a608a73720 100644
--- a/drivers/gpu/drm/i915/display/vlv_dsi_regs.h
+++ b/drivers/gpu/drm/i915/display/vlv_dsi_regs.h
@@ -40,7 +40,7 @@
 
 #define _MIPIA_PORT_CTRL   (VLV_DISPLAY_BASE + 0x61190)
 #define _MIPIC_PORT_CTRL   (VLV_DISPLAY_BASE + 0x61700)
-#define MIPI_PORT_CTRL(port)   _MMIO_MIPI(port, _MIPIA_PORT_CTRL, 
_MIPIC_PORT_CTRL)
+#define VLV_MIPI_PORT_CTRL(port)   _MMIO_MIPI(port, _MIPIA_PORT_CTRL, 
_MIPIC_PORT_CTRL)
 
  /* BXT port control */
 #define _BXT_MIPIA_PORT_CTRL   0x6B0C0
@@ -89,7 +89,7 @@
 
 #define _MIPIA_TEARING_CTRL(VLV_DISPLAY_BASE + 0x61194)
 #define _MIPIC_TEARING_CTRL(VLV_DISPLAY_BASE + 0x61704)
-#define MIPI_TEARING_CTRL(port)_MMIO_MIPI(port, 
_MIPIA_TEARING_CTRL, _MIPIC_TEARING_CTRL)
+#define VLV_MIPI_TEARING_CTRL(port)_MMIO_MIPI(port, 
_MIPIA_TEARING_CTRL, _MIPIC_TEARING_CTRL)
 #define  TEARING_EFFECT_DELAY_SHIFT0
 #define  TEARING_EFFECT_DELAY_MASK (0x << 0)
 
-- 
2.39.2



[PATCH 1/3] drm/i915/dsi: remove unused _MIPIA_AUTOPWG register definition

2024-04-10 Thread Jani Nikula
There are other unused registers, but this is also unusable and
inadequate. Remove.

Signed-off-by: Jani Nikula 
---
 drivers/gpu/drm/i915/display/vlv_dsi_regs.h | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/vlv_dsi_regs.h 
b/drivers/gpu/drm/i915/display/vlv_dsi_regs.h
index abbe427e462e..b0cdaad7db9c 100644
--- a/drivers/gpu/drm/i915/display/vlv_dsi_regs.h
+++ b/drivers/gpu/drm/i915/display/vlv_dsi_regs.h
@@ -93,9 +93,6 @@
 #define  TEARING_EFFECT_DELAY_SHIFT0
 #define  TEARING_EFFECT_DELAY_MASK (0x << 0)
 
-/* XXX: all bits reserved */
-#define _MIPIA_AUTOPWG (VLV_DISPLAY_BASE + 0x611a0)
-
 /* MIPI DSI Controller and D-PHY registers */
 
 #define _MIPIA_DEVICE_READY(_MIPI_MMIO_BASE(dev_priv) + 0xb000)
-- 
2.39.2



[PATCH 0/3] drm/i915/dsi: stop relying on implicit dev_priv variable

2024-04-10 Thread Jani Nikula
Rip the band-aid, it's not so bad after all. Well, at least for the
somewhat isolated VLV DSI. But it's a start.

Jani Nikula (3):
  drm/i915/dsi: remove unused _MIPIA_AUTOPWG register definition
  drm/i915/dsi: add VLV_ prefix to VLV only register macros
  drm/i915/dsi: pass i915 to register macros instead of implicit
variable

 drivers/gpu/drm/i915/display/intel_display.c |   2 +-
 drivers/gpu/drm/i915/display/vlv_dsi.c   | 192 +--
 drivers/gpu/drm/i915/display/vlv_dsi_pll.c   |   6 +-
 drivers/gpu/drm/i915/display/vlv_dsi_regs.h  | 325 +--
 4 files changed, 259 insertions(+), 266 deletions(-)

-- 
2.39.2



Re: ✓ Fi.CI.BAT: success for drm/i915/dp: Add jitter WAs for MST/FEC/DSC links

2024-04-10 Thread Imre Deak
On Mon, Jan 29, 2024 at 06:42:39PM +, Patchwork wrote:
> == Series Details ==
> 
> Series: drm/i915/dp: Add jitter WAs for MST/FEC/DSC links
> URL   : https://patchwork.freedesktop.org/series/129277/
> State : success

Patchset is pushed to drm-intel-next, fixing the WA code comment in
patch 4, thanks for the review.

> 
> == Summary ==
> 
> CI Bug Log - changes from CI_DRM_14192 -> Patchwork_129277v1
> 
> 
> Summary
> ---
> 
>   **SUCCESS**
> 
>   No regressions found.
> 
>   External URL: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_129277v1/index.html
> 
> Participating hosts (37 -> 35)
> --
> 
>   Missing(2): bat-mtlp-8 fi-snb-2520m 
> 
> Known issues
> 
> 
>   Here are the changes found in Patchwork_129277v1 that come from known 
> issues:
> 
> ### IGT changes ###
> 
>  Issues hit 
> 
>   * igt@i915_hangman@error-state-basic:
> - bat-mtlp-6: [PASS][1] -> [ABORT][2] ([i915#9414])
>[1]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14192/bat-mtlp-6/igt@i915_hang...@error-state-basic.html
>[2]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_129277v1/bat-mtlp-6/igt@i915_hang...@error-state-basic.html
> 
>   
>  Possible fixes 
> 
>   * igt@i915_selftest@live@execlists:
> - fi-bsw-nick:[ABORT][3] ([i915#7911]) -> [PASS][4]
>[3]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14192/fi-bsw-nick/igt@i915_selftest@l...@execlists.html
>[4]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_129277v1/fi-bsw-nick/igt@i915_selftest@l...@execlists.html
> 
>   * igt@i915_selftest@live@hangcheck:
> - {bat-adls-6}:   [DMESG-WARN][5] ([i915#5591]) -> [PASS][6]
>[5]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14192/bat-adls-6/igt@i915_selftest@l...@hangcheck.html
>[6]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_129277v1/bat-adls-6/igt@i915_selftest@l...@hangcheck.html
> 
>   
>   {name}: This element is suppressed. This means it is ignored when computing
>   the status of the difference (SUCCESS, WARNING, or FAILURE).
> 
>   [i915#5591]: https://gitlab.freedesktop.org/drm/intel/issues/5591
>   [i915#7911]: https://gitlab.freedesktop.org/drm/intel/issues/7911
>   [i915#9414]: https://gitlab.freedesktop.org/drm/intel/issues/9414
> 
> 
> Build changes
> -
> 
>   * Linux: CI_DRM_14192 -> Patchwork_129277v1
> 
>   CI-20190529: 20190529
>   CI_DRM_14192: f4c0dac89bd3cd02a1afe5e7a91ed4bf8de4afc6 @ 
> git://anongit.freedesktop.org/gfx-ci/linux
>   IGT_7698: af750f5e7eaad98d40d8c924eb5f05e99d3c668b @ 
> https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
>   Patchwork_129277v1: f4c0dac89bd3cd02a1afe5e7a91ed4bf8de4afc6 @ 
> git://anongit.freedesktop.org/gfx-ci/linux
> 
> 
> ### Linux commits
> 
> 684e00785693 drm/i915/mtl: Add DP FEC BS jitter WA
> 4710e5a9e439 drm/i915/mtl+: Disable DP/DSC SF insertion at EOL WA
> f5853ef36adf drm/i915/adlp+: Add DSC early pixel count scaling WA 
> (Wa_1409098942)
> 58b3ea4c8782 drm/i915/adlp: Add DP MST DPT/DPTP alignment WA (Wa_14014143976)
> a8501371285d drm/i915/adlp: Add MST short HBlank WA (Wa_14014143976)
> b689adcd3028 drm/i915/adlp: Add MST FEC BS jitter WA (Wa_14013163432)
> 
> == Logs ==
> 
> For more details see: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_129277v1/index.html


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

2024-04-10 Thread Rodrigo Vivi
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.

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
> 


✓ Fi.CI.BAT: success for series starting with [1/2] drm/print: drop include debugfs.h and include where needed

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

Series: series starting with [1/2] drm/print: drop include debugfs.h and 
include where needed
URL   : https://patchwork.freedesktop.org/series/132280/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_14557 -> Patchwork_132280v1


Summary
---

  **SUCCESS**

  No regressions found.

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

Participating hosts (39 -> 33)
--

  Additional (1): fi-kbl-8809g 
  Missing(7): bat-kbl-2 fi-bsw-n3050 fi-snb-2520m fi-glk-j4005 fi-cfl-8109u 
fi-blb-e6850 bat-dg2-11 

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@runner@aborted:
- fi-kbl-8809g:   NOTRUN -> [FAIL][1] ([i915#10689])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132280v1/fi-kbl-8809g/igt@run...@aborted.html

  
 Possible fixes 

  * igt@i915_selftest@live@gt_pm:
- bat-dg2-8:  [ABORT][2] ([i915#10366] / [i915#10677]) -> [PASS][3]
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14557/bat-dg2-8/igt@i915_selftest@live@gt_pm.html
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132280v1/bat-dg2-8/igt@i915_selftest@live@gt_pm.html

  * igt@i915_selftest@live@hugepages:
- fi-apl-guc: [INCOMPLETE][4] ([i915#10461]) -> [PASS][5]
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14557/fi-apl-guc/igt@i915_selftest@l...@hugepages.html
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132280v1/fi-apl-guc/igt@i915_selftest@l...@hugepages.html

  
  [i915#10366]: https://gitlab.freedesktop.org/drm/intel/issues/10366
  [i915#10461]: https://gitlab.freedesktop.org/drm/intel/issues/10461
  [i915#10677]: https://gitlab.freedesktop.org/drm/intel/issues/10677
  [i915#10689]: https://gitlab.freedesktop.org/drm/intel/issues/10689


Build changes
-

  * Linux: CI_DRM_14557 -> Patchwork_132280v1

  CI-20190529: 20190529
  CI_DRM_14557: bf24d40fae19bcceac3e32c4866079b4f10c70f9 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_7803: 9669a17ae56f1dcd22ba4c5cb39b3cd334a46862 @ 
https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
  Patchwork_132280v1: bf24d40fae19bcceac3e32c4866079b4f10c70f9 @ 
git://anongit.freedesktop.org/gfx-ci/linux


### Linux commits

8bf340e713b7 drm/print: drop include seq_file.h
e08c94f7f77e drm/print: drop include debugfs.h and include where needed

== Logs ==

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


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

2024-04-10 Thread Ville Syrjälä
On Wed, Apr 10, 2024 at 05:34:13PM +0300, Ville Syrjälä wrote:
> 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_waitcount: 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.

Looks like https://gitlab.freedesktop.org/drm/intel/-/issues/10606

-- 
Ville Syrjälä
Intel


✗ Fi.CI.SPARSE: warning for series starting with [1/2] drm/print: drop include debugfs.h and include where needed

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

Series: series starting with [1/2] drm/print: drop include debugfs.h and 
include where needed
URL   : https://patchwork.freedesktop.org/series/132280/
State : warning

== Summary ==

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




✓ Fi.CI.BAT: success for drm/i915: Implement Audio WA_14020863754 (rev2)

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

Series: drm/i915: Implement Audio WA_14020863754 (rev2)
URL   : https://patchwork.freedesktop.org/series/132255/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_14557 -> Patchwork_132255v2


Summary
---

  **SUCCESS**

  No regressions found.

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

Participating hosts (39 -> 38)
--

  Additional (3): bat-dg1-7 fi-kbl-8809g bat-arls-3 
  Missing(4): bat-dg2-11 bat-arls-2 fi-snb-2520m fi-elk-e7500 

Known issues


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

### IGT changes ###

 Issues hit 

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

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

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

  * igt@gem_render_tiled_blits@basic:
- bat-arls-3: NOTRUN -> [SKIP][5] ([i915#10197] / [i915#10211] / 
[i915#4079])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v2/bat-arls-3/igt@gem_render_tiled_bl...@basic.html

  * igt@gem_tiled_blits@basic:
- bat-arls-3: NOTRUN -> [SKIP][6] ([i915#10196] / [i915#4077]) +2 
other tests skip
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v2/bat-arls-3/igt@gem_tiled_bl...@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_132255v2/bat-dg1-7/igt@gem_tiled_fence_bl...@basic.html

  * igt@gem_tiled_pread_basic:
- bat-dg1-7:  NOTRUN -> [SKIP][8] ([i915#4079]) +1 other test skip
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v2/bat-dg1-7/igt@gem_tiled_pread_basic.html
- bat-arls-3: NOTRUN -> [SKIP][9] ([i915#10206] / [i915#4079])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v2/bat-arls-3/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_132255v2/bat-dg1-7/igt@i915_pm_...@basic-api.html
- bat-arls-3: NOTRUN -> [SKIP][11] ([i915#10209])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v2/bat-arls-3/igt@i915_pm_...@basic-api.html

  * igt@i915_selftest@live@coherency:
- bat-dg2-9:  [PASS][12] -> [ABORT][13] ([i915#10366])
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14557/bat-dg2-9/igt@i915_selftest@l...@coherency.html
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v2/bat-dg2-9/igt@i915_selftest@l...@coherency.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_132255v2/bat-arls-3/igt@kms_addfb_ba...@addfb25-x-tiled-legacy.html

  * igt@kms_addfb_basic@addfb25-x-tiled-mismatch-legacy:
- bat-dg1-7:  NOTRUN -> [SKIP][15] ([i915#4212]) +7 other tests skip
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v2/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][16] ([i915#4215])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v2/bat-dg1-7/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_132255v2/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-dg1-7:  NOTRUN -> [SKIP][18] ([i915#4103] / [i915#4213]) +1 
other test skip
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v2/bat-dg1-7/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]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v2/bat-arls-3/igt@kms_...@dsc-basic.html
- 

[PULL] drm-misc-next

2024-04-10 Thread Maarten Lankhorst

Hi Dave, Sima,

Still low amount of patches this week!

Cheers,
~Maarten

drm-misc-next-2024-04-10:
drm-misc-next for v6.10:

Cross-subsystem Changes:
- Add Tomi as Xilinx maintainer.
- Add sound bindings to DT.

Core Changes:
- Make DP helper depend on KMS helper.

Driver Changes:
- Assorted small fixes to bridge/dw-hdmi, bridge/cdns-mhdp8456, xlnx,
  omap, tilcdc, bridge/imx8mp-hdmi-pvi.
- Add debugfs entries to qaic.
- Add conservative fallback to panel eDP.
The following changes since commit d1ef8fc18be6adbbffdee06fbb5b33699e2852be:

  drm: fix DRM_DISPLAY_DP_HELPER dependencies (2024-04-04 16:20:57 +0200)

are available in the Git repository at:

  https://gitlab.freedesktop.org/drm/misc/kernel.git 
tags/drm-misc-next-2024-04-10


for you to fetch changes up to 29b39672bc1d651010f7b61e106d51998f068aaf:

  drm/bridge: imx8mp-hdmi-pvi: Convert to platform remove callback 
returning void (2024-04-10 15:06:45 +0200)



drm-misc-next for v6.10:

Cross-subsystem Changes:
- Add Tomi as Xilinx maintainer.
- Add sound bindings to DT.

Core Changes:
- Make DP helper depend on KMS helper.

Driver Changes:
- Assorted small fixes to bridge/dw-hdmi, bridge/cdns-mhdp8456, xlnx,
  omap, tilcdc, bridge/imx8mp-hdmi-pvi.
- Add debugfs entries to qaic.
- Add conservative fallback to panel eDP.


Aleksandr Mishin (1):
  drm: bridge: cdns-mhdp8546: Fix possible null pointer dereference

Chen-Yu Tsai (1):
  dt-bindings: display: bridge: it6505: Add #sound-dai-cells

Dan Carpenter (1):
  drm: xlnx: db: fix a memory leak in probe

Douglas Anderson (3):
  drm/panel-edp: Abstract out function to set conservative timings
  drm/panel-edp: If we fail to powerup/get EDID, use conservative 
timings
  drm-panel: If drm_panel_dp_aux_backlight() fails, don't fail 
panel probe


Jani Nikula (1):
  drm: remove unused header gma_drm.h

Jeffrey Hugo (3):
  accel/qaic: Add bootlog debugfs
  accel/qaic: Add fifo size debugfs
  accel/qaic: Add fifo queued debugfs

Krzysztof Kozlowski (1):
  drm/omap: dmm_tiler: drop driver owner assignment

Maxime Ripard (2):
  drm/display: Select DRM_KMS_HELPER for DP helpers
  drm/bridge: dw-hdmi: Make DRM_DW_HDMI selectable

Tomi Valkeinen (1):
  MAINTAINERS: Add myself as maintainer for Xilinx DRM drivers

Uwe Kleine-König (1):
  drm/bridge: imx8mp-hdmi-pvi: Convert to platform remove callback 
returning void


Wolfram Sang (1):
  drm: tilcdc: don't use devm_pinctrl_get_select_default() in probe

 .../bindings/display/bridge/ite,it6505.yaml|   8 +-
 MAINTAINERS|   1 +
 drivers/accel/qaic/Makefile|   2 +
 drivers/accel/qaic/qaic.h  |   9 +
 drivers/accel/qaic/qaic_data.c |   9 +
 drivers/accel/qaic/qaic_debugfs.c  | 338 
+

 drivers/accel/qaic/qaic_debugfs.h  |  20 ++
 drivers/accel/qaic/qaic_drv.c  |  16 +-
 .../gpu/drm/bridge/cadence/cdns-mhdp8546-core.c|   3 +
 drivers/gpu/drm/bridge/imx/imx8mp-hdmi-pvi.c   |   6 +-
 drivers/gpu/drm/bridge/synopsys/Kconfig|   2 +-
 drivers/gpu/drm/display/Kconfig|   1 +
 drivers/gpu/drm/omapdrm/omap_dmm_tiler.c   |   1 -
 drivers/gpu/drm/panel/panel-edp.c  |  60 ++--
 drivers/gpu/drm/panel/panel-samsung-atna33xc20.c   |   9 +-
 drivers/gpu/drm/tilcdc/tilcdc_panel.c  |   6 -
 drivers/gpu/drm/xlnx/zynqmp_dp.c   |   2 +-
 include/drm/gma_drm.h  |  13 -
 18 files changed, 450 insertions(+), 56 deletions(-)
 create mode 100644 drivers/accel/qaic/qaic_debugfs.c
 create mode 100644 drivers/accel/qaic/qaic_debugfs.h
 delete mode 100644 include/drm/gma_drm.h


Re: [PATCH 1/2] drm/print: drop include debugfs.h and include where needed

2024-04-10 Thread Andrzej Hajda




On 10.04.2024 16:14, Jani Nikula wrote:

Surprisingly many places depend on debugfs.h to be included via
drm_print.h. Fix them.

Signed-off-by: Jani Nikula 

---


Reviewed-by: Andrzej Hajda 

Regards
Andrzej



Cc: Andrzej Hajda 
Cc: Neil Armstrong 
Cc: Robert Foss 
Cc: Laurent Pinchart 
Cc: Jonas Karlman 
Cc: Jernej Skrabec 
Cc: Maarten Lankhorst 
Cc: Maxime Ripard 
Cc: Thomas Zimmermann 
Cc: David Airlie 
Cc: Daniel Vetter 
Cc: Jani Nikula 
Cc: Karol Herbst 
Cc: Lyude Paul 
Cc: Danilo Krummrich 
Cc: Alex Deucher 
Cc: "Christian König" 
Cc: "Pan, Xinhui" 
Cc: Huang Rui 
Cc: dri-de...@lists.freedesktop.org
Cc: intel-gfx@lists.freedesktop.org
Cc: intel...@lists.freedesktop.org
Cc: nouv...@lists.freedesktop.org
Cc: amd-...@lists.freedesktop.org
---
  drivers/gpu/drm/bridge/panel.c   | 2 ++
  drivers/gpu/drm/drm_print.c  | 6 +++---
  drivers/gpu/drm/i915/display/intel_dmc.c | 1 +
  drivers/gpu/drm/nouveau/dispnv50/crc.c   | 2 ++
  drivers/gpu/drm/radeon/r100.c| 1 +
  drivers/gpu/drm/radeon/r300.c| 1 +
  drivers/gpu/drm/radeon/r420.c| 1 +
  drivers/gpu/drm/radeon/r600.c| 3 ++-
  drivers/gpu/drm/radeon/radeon_fence.c| 1 +
  drivers/gpu/drm/radeon/radeon_gem.c  | 1 +
  drivers/gpu/drm/radeon/radeon_ib.c   | 2 ++
  drivers/gpu/drm/radeon/radeon_pm.c   | 1 +
  drivers/gpu/drm/radeon/radeon_ring.c | 2 ++
  drivers/gpu/drm/radeon/radeon_ttm.c  | 1 +
  drivers/gpu/drm/radeon/rs400.c   | 1 +
  drivers/gpu/drm/radeon/rv515.c   | 1 +
  drivers/gpu/drm/ttm/ttm_device.c | 1 +
  drivers/gpu/drm/ttm/ttm_resource.c   | 3 ++-
  drivers/gpu/drm/ttm/ttm_tt.c | 5 +++--
  include/drm/drm_print.h  | 2 +-
  20 files changed, 30 insertions(+), 8 deletions(-)

diff --git a/drivers/gpu/drm/bridge/panel.c b/drivers/gpu/drm/bridge/panel.c
index 7f41525f7a6e..32506524d9a2 100644
--- a/drivers/gpu/drm/bridge/panel.c
+++ b/drivers/gpu/drm/bridge/panel.c
@@ -4,6 +4,8 @@
   * Copyright (C) 2017 Broadcom
   */
  
+#include 

+
  #include 
  #include 
  #include 
diff --git a/drivers/gpu/drm/drm_print.c b/drivers/gpu/drm/drm_print.c
index 699b7dbffd7b..cf2efb44722c 100644
--- a/drivers/gpu/drm/drm_print.c
+++ b/drivers/gpu/drm/drm_print.c
@@ -23,13 +23,13 @@
   * Rob Clark 
   */
  
-#include 

-
+#include 
+#include 
  #include 
  #include 
  #include 
  #include 
-#include 
+#include 
  
  #include 

  #include 
diff --git a/drivers/gpu/drm/i915/display/intel_dmc.c 
b/drivers/gpu/drm/i915/display/intel_dmc.c
index e61e9c1b8947..84748add186a 100644
--- a/drivers/gpu/drm/i915/display/intel_dmc.c
+++ b/drivers/gpu/drm/i915/display/intel_dmc.c
@@ -22,6 +22,7 @@
   *
   */
  
+#include 

  #include 
  
  #include "i915_drv.h"

diff --git a/drivers/gpu/drm/nouveau/dispnv50/crc.c 
b/drivers/gpu/drm/nouveau/dispnv50/crc.c
index 9c942fbd836d..5936b6b3b15d 100644
--- a/drivers/gpu/drm/nouveau/dispnv50/crc.c
+++ b/drivers/gpu/drm/nouveau/dispnv50/crc.c
@@ -1,5 +1,7 @@
  // SPDX-License-Identifier: MIT
+#include 
  #include 
+
  #include 
  #include 
  #include 
diff --git a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c
index 86b8b770af19..0b1e19345f43 100644
--- a/drivers/gpu/drm/radeon/r100.c
+++ b/drivers/gpu/drm/radeon/r100.c
@@ -26,6 +26,7 @@
   *  Jerome Glisse
   */
  
+#include 

  #include 
  #include 
  #include 
diff --git a/drivers/gpu/drm/radeon/r300.c b/drivers/gpu/drm/radeon/r300.c
index 25201b9a5aae..1620f534f55f 100644
--- a/drivers/gpu/drm/radeon/r300.c
+++ b/drivers/gpu/drm/radeon/r300.c
@@ -26,6 +26,7 @@
   *  Jerome Glisse
   */
  
+#include 

  #include 
  #include 
  #include 
diff --git a/drivers/gpu/drm/radeon/r420.c b/drivers/gpu/drm/radeon/r420.c
index eae8a6389f5e..a979662eaa73 100644
--- a/drivers/gpu/drm/radeon/r420.c
+++ b/drivers/gpu/drm/radeon/r420.c
@@ -26,6 +26,7 @@
   *  Jerome Glisse
   */
  
+#include 

  #include 
  #include 
  #include 
diff --git a/drivers/gpu/drm/radeon/r600.c b/drivers/gpu/drm/radeon/r600.c
index b5e97d95a19f..087d41e370fd 100644
--- a/drivers/gpu/drm/radeon/r600.c
+++ b/drivers/gpu/drm/radeon/r600.c
@@ -26,11 +26,12 @@
   *  Jerome Glisse
   */
  
+#include 

  #include 
  #include 
  #include 
-#include 
  #include 
+#include 
  
  #include 

  #include 
diff --git a/drivers/gpu/drm/radeon/radeon_fence.c 
b/drivers/gpu/drm/radeon/radeon_fence.c
index 9ebe4a0b9a6c..4fb780d96f32 100644
--- a/drivers/gpu/drm/radeon/radeon_fence.c
+++ b/drivers/gpu/drm/radeon/radeon_fence.c
@@ -30,6 +30,7 @@
   */
  
  #include 

+#include 
  #include 
  #include 
  #include 
diff --git a/drivers/gpu/drm/radeon/radeon_gem.c 
b/drivers/gpu/drm/radeon/radeon_gem.c
index 3fec3acdaf28..2ef201a072f1 100644
--- a/drivers/gpu/drm/radeon/radeon_gem.c
+++ b/drivers/gpu/drm/radeon/radeon_gem.c
@@ -26,6 +26,7 @@
   *  Jerome Glisse
   */
  
+#include 

  #include 
  #include 
  
diff --git 

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

2024-04-10 Thread Ville Syrjälä
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


Re: [PATCH 02/10] drm: move intel-gtt.h under include/drm/intel

2024-04-10 Thread Andi Shyti
On Wed, Apr 10, 2024 at 01:05:09PM +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 
> Signed-off-by: Jani Nikula 

Reviewed-by: Andi Shyti 

Thanks,
Andi


[PATCH 2/2] drm/print: drop include seq_file.h

2024-04-10 Thread Jani Nikula
Never include where a forward declaration will suffice.

Signed-off-by: Jani Nikula 
---
 include/drm/drm_print.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/drm/drm_print.h b/include/drm/drm_print.h
index 561c3b96b6fd..089950ad8681 100644
--- a/include/drm/drm_print.h
+++ b/include/drm/drm_print.h
@@ -28,7 +28,6 @@
 
 #include 
 #include 
-#include 
 #include 
 #include 
 
@@ -36,6 +35,7 @@
 
 struct debugfs_regset32;
 struct drm_device;
+struct seq_file;
 
 /* Do *not* use outside of drm_print.[ch]! */
 extern unsigned long __drm_debug;
-- 
2.39.2



[PATCH 1/2] drm/print: drop include debugfs.h and include where needed

2024-04-10 Thread Jani Nikula
Surprisingly many places depend on debugfs.h to be included via
drm_print.h. Fix them.

Signed-off-by: Jani Nikula 

---

Cc: Andrzej Hajda 
Cc: Neil Armstrong 
Cc: Robert Foss 
Cc: Laurent Pinchart 
Cc: Jonas Karlman 
Cc: Jernej Skrabec 
Cc: Maarten Lankhorst 
Cc: Maxime Ripard 
Cc: Thomas Zimmermann 
Cc: David Airlie 
Cc: Daniel Vetter 
Cc: Jani Nikula 
Cc: Karol Herbst 
Cc: Lyude Paul 
Cc: Danilo Krummrich 
Cc: Alex Deucher 
Cc: "Christian König" 
Cc: "Pan, Xinhui" 
Cc: Huang Rui 
Cc: dri-de...@lists.freedesktop.org
Cc: intel-gfx@lists.freedesktop.org
Cc: intel...@lists.freedesktop.org
Cc: nouv...@lists.freedesktop.org
Cc: amd-...@lists.freedesktop.org
---
 drivers/gpu/drm/bridge/panel.c   | 2 ++
 drivers/gpu/drm/drm_print.c  | 6 +++---
 drivers/gpu/drm/i915/display/intel_dmc.c | 1 +
 drivers/gpu/drm/nouveau/dispnv50/crc.c   | 2 ++
 drivers/gpu/drm/radeon/r100.c| 1 +
 drivers/gpu/drm/radeon/r300.c| 1 +
 drivers/gpu/drm/radeon/r420.c| 1 +
 drivers/gpu/drm/radeon/r600.c| 3 ++-
 drivers/gpu/drm/radeon/radeon_fence.c| 1 +
 drivers/gpu/drm/radeon/radeon_gem.c  | 1 +
 drivers/gpu/drm/radeon/radeon_ib.c   | 2 ++
 drivers/gpu/drm/radeon/radeon_pm.c   | 1 +
 drivers/gpu/drm/radeon/radeon_ring.c | 2 ++
 drivers/gpu/drm/radeon/radeon_ttm.c  | 1 +
 drivers/gpu/drm/radeon/rs400.c   | 1 +
 drivers/gpu/drm/radeon/rv515.c   | 1 +
 drivers/gpu/drm/ttm/ttm_device.c | 1 +
 drivers/gpu/drm/ttm/ttm_resource.c   | 3 ++-
 drivers/gpu/drm/ttm/ttm_tt.c | 5 +++--
 include/drm/drm_print.h  | 2 +-
 20 files changed, 30 insertions(+), 8 deletions(-)

diff --git a/drivers/gpu/drm/bridge/panel.c b/drivers/gpu/drm/bridge/panel.c
index 7f41525f7a6e..32506524d9a2 100644
--- a/drivers/gpu/drm/bridge/panel.c
+++ b/drivers/gpu/drm/bridge/panel.c
@@ -4,6 +4,8 @@
  * Copyright (C) 2017 Broadcom
  */
 
+#include 
+
 #include 
 #include 
 #include 
diff --git a/drivers/gpu/drm/drm_print.c b/drivers/gpu/drm/drm_print.c
index 699b7dbffd7b..cf2efb44722c 100644
--- a/drivers/gpu/drm/drm_print.c
+++ b/drivers/gpu/drm/drm_print.c
@@ -23,13 +23,13 @@
  * Rob Clark 
  */
 
-#include 
-
+#include 
+#include 
 #include 
 #include 
 #include 
 #include 
-#include 
+#include 
 
 #include 
 #include 
diff --git a/drivers/gpu/drm/i915/display/intel_dmc.c 
b/drivers/gpu/drm/i915/display/intel_dmc.c
index e61e9c1b8947..84748add186a 100644
--- a/drivers/gpu/drm/i915/display/intel_dmc.c
+++ b/drivers/gpu/drm/i915/display/intel_dmc.c
@@ -22,6 +22,7 @@
  *
  */
 
+#include 
 #include 
 
 #include "i915_drv.h"
diff --git a/drivers/gpu/drm/nouveau/dispnv50/crc.c 
b/drivers/gpu/drm/nouveau/dispnv50/crc.c
index 9c942fbd836d..5936b6b3b15d 100644
--- a/drivers/gpu/drm/nouveau/dispnv50/crc.c
+++ b/drivers/gpu/drm/nouveau/dispnv50/crc.c
@@ -1,5 +1,7 @@
 // SPDX-License-Identifier: MIT
+#include 
 #include 
+
 #include 
 #include 
 #include 
diff --git a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c
index 86b8b770af19..0b1e19345f43 100644
--- a/drivers/gpu/drm/radeon/r100.c
+++ b/drivers/gpu/drm/radeon/r100.c
@@ -26,6 +26,7 @@
  *  Jerome Glisse
  */
 
+#include 
 #include 
 #include 
 #include 
diff --git a/drivers/gpu/drm/radeon/r300.c b/drivers/gpu/drm/radeon/r300.c
index 25201b9a5aae..1620f534f55f 100644
--- a/drivers/gpu/drm/radeon/r300.c
+++ b/drivers/gpu/drm/radeon/r300.c
@@ -26,6 +26,7 @@
  *  Jerome Glisse
  */
 
+#include 
 #include 
 #include 
 #include 
diff --git a/drivers/gpu/drm/radeon/r420.c b/drivers/gpu/drm/radeon/r420.c
index eae8a6389f5e..a979662eaa73 100644
--- a/drivers/gpu/drm/radeon/r420.c
+++ b/drivers/gpu/drm/radeon/r420.c
@@ -26,6 +26,7 @@
  *  Jerome Glisse
  */
 
+#include 
 #include 
 #include 
 #include 
diff --git a/drivers/gpu/drm/radeon/r600.c b/drivers/gpu/drm/radeon/r600.c
index b5e97d95a19f..087d41e370fd 100644
--- a/drivers/gpu/drm/radeon/r600.c
+++ b/drivers/gpu/drm/radeon/r600.c
@@ -26,11 +26,12 @@
  *  Jerome Glisse
  */
 
+#include 
 #include 
 #include 
 #include 
-#include 
 #include 
+#include 
 
 #include 
 #include 
diff --git a/drivers/gpu/drm/radeon/radeon_fence.c 
b/drivers/gpu/drm/radeon/radeon_fence.c
index 9ebe4a0b9a6c..4fb780d96f32 100644
--- a/drivers/gpu/drm/radeon/radeon_fence.c
+++ b/drivers/gpu/drm/radeon/radeon_fence.c
@@ -30,6 +30,7 @@
  */
 
 #include 
+#include 
 #include 
 #include 
 #include 
diff --git a/drivers/gpu/drm/radeon/radeon_gem.c 
b/drivers/gpu/drm/radeon/radeon_gem.c
index 3fec3acdaf28..2ef201a072f1 100644
--- a/drivers/gpu/drm/radeon/radeon_gem.c
+++ b/drivers/gpu/drm/radeon/radeon_gem.c
@@ -26,6 +26,7 @@
  *  Jerome Glisse
  */
 
+#include 
 #include 
 #include 
 
diff --git a/drivers/gpu/drm/radeon/radeon_ib.c 
b/drivers/gpu/drm/radeon/radeon_ib.c
index fb9ecf5dbe2b..63d914f3414d 100644
--- a/drivers/gpu/drm/radeon/radeon_ib.c
+++ b/drivers/gpu/drm/radeon/radeon_ib.c
@@ -27,6 +27,8 @@
  * 

Re: [PATCH 01/10] drm/i915: use system include for drm headers

2024-04-10 Thread Andi Shyti
Hi Jani,

On Wed, Apr 10, 2024 at 01:05:08PM +0300, Jani Nikula wrote:
> Use <> instead of "" for including headers from include/, even if the
> file is in the same directory.
> 
> Signed-off-by: Jani Nikula 

Reviewed-by: Andi Shyti 

Thanks,
Andi


Re: [PATCH 05/10] drm/i915: skip DRM_I915_LOW_LEVEL_TRACEPOINTS with NOTRACE

2024-04-10 Thread Steven Rostedt
On Wed, 10 Apr 2024 13:08:57 +0200
Sebastian Andrzej Siewior  wrote:

> On 2024-04-09 11:55:33 [-0400], Steven Rostedt wrote:
> > I believe you need to do it in the .c file:
> > 
> > Can you try something like this?
> >   
> …
> >  ?  
> 
> I tried and nothing changed because the lowlevel config option isn't the
> problem. What about I drop this and replace 4/10 from this series with
> the patch below? After enabling all tracing I don't see any events in
> events/i915.

I don't see anything wrong with this approach.

> 
> Sebastian
> 
> ->8  
> 
> From: Sebastian Andrzej Siewior 
> Date: Thu, 6 Dec 2018 09:52:20 +0100
> Subject: [PATCH] drm/i915: Disable tracing points on PREEMPT_RT
> 
> Luca Abeni reported this:
> | BUG: scheduling while atomic: kworker/u8:2/15203/0x0003
> | CPU: 1 PID: 15203 Comm: kworker/u8:2 Not tainted 4.19.1-rt3 #10
> | Call Trace:
> |  rt_spin_lock+0x3f/0x50
> |  gen6_read32+0x45/0x1d0 [i915]
> |  g4x_get_vblank_counter+0x36/0x40 [i915]
> |  trace_event_raw_event_i915_pipe_update_start+0x7d/0xf0 [i915]
> 
> The tracing events use trace_i915_pipe_update_start() among other events
> use functions acquire spinlock_t locks which are transformed into
> sleeping locks on PREEMPT_RT. A few trace points use
> intel_get_crtc_scanline(), others use ->get_vblank_counter() wich also
> might acquire a sleeping locks on PREEMPT_RT.
> At the time the arguments are evaluated within trace point, preemption
> is disabled and so the locks must not be acquired on PREEMPT_RT.
> 
> Based on this I don't see any other way than disable trace points on
> PREMPT_RT.
> 
> Reported-by: Luca Abeni 
> Cc: Steven Rostedt 
> Signed-off-by: Sebastian Andrzej Siewior 
> ---
>  drivers/gpu/drm/i915/display/intel_display_trace.h | 4 
>  drivers/gpu/drm/i915/i915_trace.h  | 4 
>  2 files changed, 8 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display_trace.h 
> b/drivers/gpu/drm/i915/display/intel_display_trace.h
> index 7862e7cefe027..e4608d855bfba 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_trace.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_trace.h
> @@ -9,6 +9,10 @@
>  #if !defined(__INTEL_DISPLAY_TRACE_H__) || defined(TRACE_HEADER_MULTI_READ)
>  #define __INTEL_DISPLAY_TRACE_H__
>  
> +#ifdef CONFIG_PREEMPT_RT

Hmm, should these be:

 #if defined(CONFIG_PREEMPT_RT) && !defined(NOTRACE)

?

because it's not protected due to the TRACE_HEADER_MULTI_READ.

-- Steve


> +#define NOTRACE
> +#endif
> +
>  #include 
>  #include 
>  #include 
> diff --git a/drivers/gpu/drm/i915/i915_trace.h 
> b/drivers/gpu/drm/i915/i915_trace.h
> index ce1cbee1b39dd..c54653cf72c95 100644
> --- a/drivers/gpu/drm/i915/i915_trace.h
> +++ b/drivers/gpu/drm/i915/i915_trace.h
> @@ -6,6 +6,10 @@
>  #if !defined(_I915_TRACE_H_) || defined(TRACE_HEADER_MULTI_READ)
>  #define _I915_TRACE_H_
>  
> +#ifdef CONFIG_PREEMPT_RT
> +#define NOTRACE
> +#endif
> +
>  #include 
>  #include 
>  #include 



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

2024-04-10 Thread Andi Shyti
Hi Ashutosh,

please use "git format-patch -v 3 ..." which generates subject
[PATCH v3] ...". Otherwise it gets confusing to see the patch
that needs to be reviewed.

On Tue, Apr 09, 2024 at 11:05:49PM -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.
> 
> v2: Move the logic inside i915_hwmon.c
> v3: Move is_i915_selftest definition to i915_selftest.h (Badal)
> 
> Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/10366
> Signed-off-by: Ashutosh Dixit 
> ---
>  drivers/gpu/drm/i915/i915_hwmon.c|  3 ++-
>  drivers/gpu/drm/i915/i915_selftest.h | 10 ++
>  2 files changed, 12 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_hwmon.c 
> b/drivers/gpu/drm/i915/i915_hwmon.c
> index 8c3f443c8347..cf1689333ebf 100644
> --- a/drivers/gpu/drm/i915/i915_hwmon.c
> +++ b/drivers/gpu/drm/i915/i915_hwmon.c
> @@ -10,6 +10,7 @@
>  #include "i915_drv.h"
>  #include "i915_hwmon.h"
>  #include "i915_reg.h"
> +#include "i915_selftest.h"
>  #include "intel_mchbar_regs.h"
>  #include "intel_pcode.h"
>  #include "gt/intel_gt.h"
> @@ -789,7 +790,7 @@ void i915_hwmon_register(struct drm_i915_private *i915)
>   int i;
>  
>   /* hwmon is available only for dGfx */
> - if (!IS_DGFX(i915))
> + if (!IS_DGFX(i915) || is_i915_selftest())
>   return;

I wonder if this is the right place to put it or rather place it
in i915_driver.c and avoid calling i915_hwmon_register() at all.

In any case, it's good:

Reviewed-by: Andi Shyti 

Thanks,
Andi


[v2] drm/i915: Implement Audio WA_14020863754

2024-04-10 Thread Uma Shankar
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)
+   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



RE: [PATCH] drm/i915: Implement Audio WA_14020863754

2024-04-10 Thread Shankar, Uma



> -Original Message-
> From: Jani Nikula 
> Sent: Wednesday, April 10, 2024 3:47 PM
> To: Shankar, Uma ; intel-gfx@lists.freedesktop.org;
> intel...@lists.freedesktop.org
> Cc: Borah, Chaitanya Kumar ; Shankar, Uma
> 
> Subject: Re: [PATCH] drm/i915: Implement Audio WA_14020863754
> 
> On Wed, 10 Apr 2024, 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)
> 
> hsw_audio_codec_disable/enable get called on hsw and display ver >= 8, but a 
> lot
> of those platforms have the bit reserved MBZ. I didn't go through all the 
> platforms
> in bspec, but enough to notice this needs some platform check.

Yes Jani, realized it after sending. Will update and re-float.
Thanks for spotting it.

Regards,
Uma Shankar

> BR,
> Jani.
> 
> >
> > Signed-off-by: Uma Shankar 
> > ---
> >  drivers/gpu/drm/i915/display/intel_audio.c  | 12 
> >  drivers/gpu/drm/i915/display/intel_audio_regs.h |  3 +++
> >  2 files changed, 15 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/i915/display/intel_audio.c
> > b/drivers/gpu/drm/i915/display/intel_audio.c
> > index 07e0c73204f3..a8e3e515aaa0 100644
> > --- a/drivers/gpu/drm/i915/display/intel_audio.c
> > +++ b/drivers/gpu/drm/i915/display/intel_audio.c
> > @@ -512,6 +512,12 @@ 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
> > +*/
> > +   intel_de_rmw(i915, AUD_CHICKENBIT_REG3, CHICKEN3_SPARE18, 0);
> > +
> > mutex_unlock(>display.audio.mutex);
> >  }
> >
> > @@ -637,6 +643,12 @@ 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
> > +*/
> > +   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__ */
> 
> --
> Jani Nikula, Intel


Re: [PATCH v4] drm/i915/panelreplay: Panel replay workaround with VRR

2024-04-10 Thread Ville Syrjälä
On Wed, Apr 10, 2024 at 07:41:42AM +, Hogander, Jouni wrote:
> On Wed, 2024-04-10 at 07:35 +, Manna, Animesh wrote:
> > 
> > 
> > > -Original Message-
> > > From: Hogander, Jouni 
> > > Sent: Wednesday, April 10, 2024 12:54 PM
> > > To: Manna, Animesh ; intel-
> > > g...@lists.freedesktop.org
> > > Cc: ville.syrj...@linux.intel.com; Murthy, Arun R
> > > 
> > > Subject: Re: [PATCH v4] drm/i915/panelreplay: Panel replay
> > > workaround with
> > > VRR
> > > 
> > > On Thu, 2024-03-28 at 10:13 +0530, Animesh Manna wrote:
> > > > Panel Replay VSC SDP not getting sent when VRR is enabled and W1
> > > > and
> > > > W2 are 0. So Program Set Context Latency in
> > > TRANS_SET_CONTEXT_LATENCY
> > > > register to at least a value of 1.
> > > > 
> > > > HSD: 14015406119
> > > > 
> > > > v1: Initial version.
> > > > v2: Update timings stored in adjusted_mode struct. [Ville]
> > > > v3: Add WA in compute_config(). [Ville]
> > > > v4:
> > > > - Add DISPLAY_VER() check and improve code comment. [Rodrigo]
> > > > - Introduce centralized intel_crtc_vblank_delay(). [Ville]
> > > > 
> > > > Signed-off-by: Animesh Manna 
> > > > ---
> > > >  drivers/gpu/drm/i915/display/intel_display.c | 17
> > > > +
> > > >  drivers/gpu/drm/i915/display/intel_display.h |  1 +
> > > >  drivers/gpu/drm/i915/display/intel_psr.c |  4 
> > > >  3 files changed, 22 insertions(+)
> > > > 
> > > > diff --git a/drivers/gpu/drm/i915/display/intel_display.c
> > > > b/drivers/gpu/drm/i915/display/intel_display.c
> > > > index 00ac65a14029..7f5c42a14196 100644
> > > > --- a/drivers/gpu/drm/i915/display/intel_display.c
> > > > +++ b/drivers/gpu/drm/i915/display/intel_display.c
> > > > @@ -3840,6 +3840,23 @@ bool intel_crtc_get_pipe_config(struct
> > > > intel_crtc_state *crtc_state)
> > > > return true;
> > > >  }
> > > > 
> > > > +void intel_crtc_vblank_delay(struct intel_crtc_state
> > > > *crtc_state) {
> > > > +   struct drm_display_mode *adjusted_mode = _state-
> > > > > hw.adjusted_mode;
> > > > +
> > > > +   /*
> > > > +    * wa_14015401596 for display versions >= 13.
> > > > +    * Program Set Context Latency in
> > > > TRANS_SET_CONTEXT_LATENCY
> > > > register
> > > > +    * to at least a value of 1 when Panel Replay is enabled
> > > > with
> > > > VRR.
> > > > +    * Value for TRANS_SET_CONTEXT_LATENCY is calculated by
> > > > substracting
> > > > +    * crtc_vdisplay from crtc_vblank_start, so incrementing
> > > > crtc_vblank_start
> > > > +    * by 1 if both are equal.
> > > > +    */
> > > > +   if (crtc_state->vrr.enable && crtc_state-
> > > > >has_panel_replay &&
> > > > +   adjusted_mode->crtc_vblank_start == adjusted_mode-
> > > > > crtc_vdisplay)
> > > > +   adjusted_mode->crtc_vblank_start += 1; }
> > > > +
> > > 
> > > Do you have some specific reason to have this in intel_display.c?
> > > How about
> > > move it to intel_psr.c? You could also use more descriptive name.
> > > Current name somehow made me think it is some generic function to
> > > calculate vblank delay. It is actually only for this workaround.
> > 
> > Thanks for review.
> > As per feedback from rev3 I have added in intel_display.c. Going
> > forward all vbalnk related adjustment will be added into this
> > function.
> > https://patchwork.freedesktop.org/series/129632/#rev3
> > I can move to intel_psr.c if the current version is not acceptable.
> 
> Ok, thank you for providing the context. If it's intended use is
> generic then I think calling it shouldn't happen from
> intel_psr_compute_config. Maybe Ville can comment where it should be
> called from.

It's a potential chicken vs. egg situation.

The best place would be somewhere after .compute_config() since
we need this this for DSB in general. I think I have it in
intel_crtc_compute_config() in my current WIP DSB plane update
branch.

The problem with PSR is that it seems to want to use it
before that. The question no one has yet answered is
whether PSR actually wants to consult the undelayed
transcoder vblank or the delayed vblank. I'm think the
former is more likely (with PSR being a transcoder level
feature), in which case the chicken vs. egg sitation
will simply disappear. But someone will need to confirm
that.

The other potential chicken vs. egg looks to be VRR on
setups where TRANS_SET_CONTEXT_LATENCY isn't a thing.
The question there is how the vblank delay is configured
when using VRR. I'm pretty sure I did figure this out
already, but can't remember right now what the conclusion
was. So that needs to be double checked as well.

I was also pondering whether we should try to leave
adjusted_mode.crtc_vblank_start alone and instead just
reflect the delayed vblank in pipe_mode.crtc_vblank_start?
That might be useful if there are other places later on
in the atomic_check/etc. that needs to know the position
of the undelayed vblank. But that would have big implications
to eg. the vblank timestamping code, 

✓ Fi.CI.BAT: success for drm/i915: PREEMPT_RT related fixups. (rev6)

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

Series: drm/i915: PREEMPT_RT related fixups. (rev6)
URL   : https://patchwork.freedesktop.org/series/95463/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_14554 -> Patchwork_95463v6


Summary
---

  **SUCCESS**

  No regressions found.

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

Participating hosts (34 -> 36)
--

  Additional (5): bat-dg1-7 bat-arls-2 fi-blb-e6850 bat-dg2-11 bat-jsl-1 
  Missing(3): bat-atsm-1 fi-snb-2520m bat-arls-3 

Known issues


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

### IGT changes ###

 Issues hit 

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

  * igt@gem_huc_copy@huc-copy:
- bat-jsl-1:  NOTRUN -> [SKIP][3] ([i915#2190])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_95463v6/bat-jsl-1/igt@gem_huc_c...@huc-copy.html

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

  * igt@gem_lmem_swapping@verify-random:
- bat-arls-2: NOTRUN -> [SKIP][6] ([i915#10213]) +3 other tests skip
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_95463v6/bat-arls-2/igt@gem_lmem_swapp...@verify-random.html
- bat-jsl-1:  NOTRUN -> [SKIP][7] ([i915#4613]) +3 other tests skip
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_95463v6/bat-jsl-1/igt@gem_lmem_swapp...@verify-random.html

  * igt@gem_mmap@basic:
- bat-dg1-7:  NOTRUN -> [SKIP][8] ([i915#4083])
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_95463v6/bat-dg1-7/igt@gem_m...@basic.html
- bat-dg2-11: NOTRUN -> [SKIP][9] ([i915#4083])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_95463v6/bat-dg2-11/igt@gem_m...@basic.html
- bat-arls-2: NOTRUN -> [SKIP][10] ([i915#4083])
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_95463v6/bat-arls-2/igt@gem_m...@basic.html

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

  * igt@gem_render_tiled_blits@basic:
- bat-arls-2: NOTRUN -> [SKIP][12] ([i915#10197] / [i915#10211] / 
[i915#4079])
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_95463v6/bat-arls-2/igt@gem_render_tiled_bl...@basic.html

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

  * igt@gem_tiled_pread_basic:
- bat-dg1-7:  NOTRUN -> [SKIP][15] ([i915#4079]) +1 other test skip
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_95463v6/bat-dg1-7/igt@gem_tiled_pread_basic.html
- bat-dg2-11: NOTRUN -> [SKIP][16] ([i915#4079]) +1 other test skip
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_95463v6/bat-dg2-11/igt@gem_tiled_pread_basic.html
- bat-arls-2: NOTRUN -> [SKIP][17] ([i915#10206] / [i915#4079])
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_95463v6/bat-arls-2/igt@gem_tiled_pread_basic.html

  * igt@i915_module_load@reload:
- bat-mtlp-8: [PASS][18] -> [INCOMPLETE][19] ([i915#9849])
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14554/bat-mtlp-8/igt@i915_module_l...@reload.html
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_95463v6/bat-mtlp-8/igt@i915_module_l...@reload.html

  * igt@i915_pm_rpm@module-reload:
- fi-blb-e6850:   NOTRUN -> [SKIP][20] +32 other tests skip
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_95463v6/fi-blb-e6850/igt@i915_pm_...@module-reload.html

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

Re: [PATCH v2] drm: ensure drm headers are self-contained and pass kernel-doc

2024-04-10 Thread Jani Nikula
On Tue, 02 Apr 2024, Jani Nikula  wrote:
> Ensure drm headers build, are self-contained, have header guards, and
> have no kernel-doc warnings, when CONFIG_DRM_HEADER_TEST=y.
>
> The mechanism follows similar patters used in i915, xe, and usr/include.
>
> To cover include/drm, we need to recurse there using the top level
> Kbuild and the new include/Kbuild files.

Masahiro, any input? Ack?

BR,
Jani.

>
> v2: make DRM_HEADER_TEST depend on DRM
>
> Suggested-by: Daniel Vetter 
> Cc: David Airlie 
> Cc: Daniel Vetter 
> Cc: Maarten Lankhorst 
> Cc: Maxime Ripard 
> Cc: Thomas Zimmermann 
> Cc: Masahiro Yamada 
> Acked-by: Thomas Zimmermann 
> Signed-off-by: Jani Nikula 
> ---
>  Kbuild   |  1 +
>  drivers/gpu/drm/Kconfig  | 11 +++
>  drivers/gpu/drm/Makefile | 18 ++
>  include/Kbuild   |  1 +
>  include/drm/Makefile | 18 ++
>  5 files changed, 49 insertions(+)
>  create mode 100644 include/Kbuild
>  create mode 100644 include/drm/Makefile
>
> diff --git a/Kbuild b/Kbuild
> index 464b34a08f51..f327ca86990c 100644
> --- a/Kbuild
> +++ b/Kbuild
> @@ -97,3 +97,4 @@ obj-$(CONFIG_SAMPLES)   += samples/
>  obj-$(CONFIG_NET)+= net/
>  obj-y+= virt/
>  obj-y+= $(ARCH_DRIVERS)
> +obj-$(CONFIG_DRM_HEADER_TEST)+= include/
> diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig
> index 3914aaf443a8..a388c4fda984 100644
> --- a/drivers/gpu/drm/Kconfig
> +++ b/drivers/gpu/drm/Kconfig
> @@ -431,3 +431,14 @@ config DRM_WERROR
> this config option is disabled by default.
>  
> If in doubt, say N.
> +
> +config DRM_HEADER_TEST
> + bool "Ensure DRM headers are self-contained and pass kernel-doc"
> + depends on DRM && EXPERT
> + default n
> + help
> +   Ensure the DRM subsystem headers both under drivers/gpu/drm and
> +   include/drm compile, are self-contained, have header guards, and have
> +   no kernel-doc warnings.
> +
> +   If in doubt, say N.
> diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile
> index a73c04d2d7a3..6605d5686d01 100644
> --- a/drivers/gpu/drm/Makefile
> +++ b/drivers/gpu/drm/Makefile
> @@ -218,3 +218,21 @@ obj-y+= solomon/
>  obj-$(CONFIG_DRM_SPRD) += sprd/
>  obj-$(CONFIG_DRM_LOONGSON) += loongson/
>  obj-$(CONFIG_DRM_POWERVR) += imagination/
> +
> +# Ensure drm headers are self-contained and pass kernel-doc
> +hdrtest-files := \
> + $(shell cd $(srctree)/$(src) && find . -maxdepth 1 -name 'drm_*.h') \
> + $(shell cd $(srctree)/$(src) && find display lib -name '*.h')
> +
> +always-$(CONFIG_DRM_HEADER_TEST) += \
> + $(patsubst %.h,%.hdrtest, $(hdrtest-files))
> +
> +# Include the header twice to detect missing include guard.
> +quiet_cmd_hdrtest = HDRTEST $(patsubst %.hdrtest,%.h,$@)
> +  cmd_hdrtest = \
> + $(CC) $(c_flags) -fsyntax-only -x c /dev/null -include $< 
> -include $<; \
> + $(srctree)/scripts/kernel-doc -none $(if 
> $(CONFIG_DRM_WERROR),-Werror) $<; \
> + touch $@
> +
> +$(obj)/%.hdrtest: $(src)/%.h FORCE
> + $(call if_changed_dep,hdrtest)
> diff --git a/include/Kbuild b/include/Kbuild
> new file mode 100644
> index ..5e76a599e2dd
> --- /dev/null
> +++ b/include/Kbuild
> @@ -0,0 +1 @@
> +obj-$(CONFIG_DRM_HEADER_TEST)+= drm/
> diff --git a/include/drm/Makefile b/include/drm/Makefile
> new file mode 100644
> index ..b9f391d7aadd
> --- /dev/null
> +++ b/include/drm/Makefile
> @@ -0,0 +1,18 @@
> +# SPDX-License-Identifier: GPL-2.0
> +
> +# Ensure drm headers are self-contained and pass kernel-doc
> +hdrtest-files := \
> + $(shell cd $(srctree)/$(src) && find * -name '*.h' 2>/dev/null)
> +
> +always-$(CONFIG_DRM_HEADER_TEST) += \
> + $(patsubst %.h,%.hdrtest, $(hdrtest-files))
> +
> +# Include the header twice to detect missing include guard.
> +quiet_cmd_hdrtest = HDRTEST $(patsubst %.hdrtest,%.h,$@)
> +  cmd_hdrtest = \
> + $(CC) $(c_flags) -fsyntax-only -x c /dev/null -include $< 
> -include $<; \
> + $(srctree)/scripts/kernel-doc -none $(if 
> $(CONFIG_DRM_WERROR),-Werror) $<; \
> + touch $@
> +
> +$(obj)/%.hdrtest: $(src)/%.h FORCE
> + $(call if_changed_dep,hdrtest)

-- 
Jani Nikula, Intel


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

2024-04-10 Thread Ville Syrjälä
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?

> ---
>  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


Re: [PATCH] drm/i915/pps: move pps debugfs file to intel_pps.c

2024-04-10 Thread Jani Nikula
On Mon, 08 Apr 2024, Ville Syrjälä  wrote:
> On Mon, Apr 08, 2024 at 12:43:57PM +0300, Jani Nikula wrote:
>> Continue with placing debugfs next to the implementation.
>> 
>> Signed-off-by: Jani Nikula 
>> ---
>>  .../drm/i915/display/intel_display_debugfs.c  | 27 ++--
>>  drivers/gpu/drm/i915/display/intel_pps.c  | 32 +++
>>  drivers/gpu/drm/i915/display/intel_pps.h  |  2 ++
>>  3 files changed, 36 insertions(+), 25 deletions(-)
>> 
>> diff --git a/drivers/gpu/drm/i915/display/intel_display_debugfs.c 
>> b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
>> index 5235f8758ef1..0feffe8d4e45 100644
>> --- a/drivers/gpu/drm/i915/display/intel_display_debugfs.c
>> +++ b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
>> @@ -31,6 +31,7 @@
>>  #include "intel_hdmi.h"
>>  #include "intel_hotplug.h"
>>  #include "intel_panel.h"
>> +#include "intel_pps.h"
>>  #include "intel_psr.h"
>>  #include "intel_psr_regs.h"
>>  #include "intel_wm.h"
>> @@ -1095,27 +1096,6 @@ void intel_display_debugfs_register(struct 
>> drm_i915_private *i915)
>>  intel_display_debugfs_params(i915);
>>  }
>>  
>> -static int i915_panel_show(struct seq_file *m, void *data)
>> -{
>> -struct intel_connector *connector = m->private;
>> -struct intel_dp *intel_dp = intel_attached_dp(connector);
>> -
>> -if (connector->base.status != connector_status_connected)
>> -return -ENODEV;
>> -
>> -seq_printf(m, "Panel power up delay: %d\n",
>> -   intel_dp->pps.panel_power_up_delay);
>> -seq_printf(m, "Panel power down delay: %d\n",
>> -   intel_dp->pps.panel_power_down_delay);
>> -seq_printf(m, "Backlight on delay: %d\n",
>> -   intel_dp->pps.backlight_on_delay);
>> -seq_printf(m, "Backlight off delay: %d\n",
>> -   intel_dp->pps.backlight_off_delay);
>> -
>> -return 0;
>> -}
>> -DEFINE_SHOW_ATTRIBUTE(i915_panel);
>> -
>>  static int i915_hdcp_sink_capability_show(struct seq_file *m, void *data)
>>  {
>>  struct intel_connector *connector = m->private;
>> @@ -1560,12 +1540,9 @@ void intel_connector_debugfs_add(struct 
>> intel_connector *connector)
>>  return;
>>  
>>  intel_drrs_connector_debugfs_add(connector);
>> +intel_pps_connector_debugfs_add(connector);
>>  intel_psr_connector_debugfs_add(connector);
>>  
>> -if (connector_type == DRM_MODE_CONNECTOR_eDP)
>> -debugfs_create_file("i915_panel_timings", 0444, root,
>> -connector, _panel_fops);
>> -
>>  if (connector_type == DRM_MODE_CONNECTOR_DisplayPort ||
>>  connector_type == DRM_MODE_CONNECTOR_HDMIA ||
>>  connector_type == DRM_MODE_CONNECTOR_HDMIB) {
>> diff --git a/drivers/gpu/drm/i915/display/intel_pps.c 
>> b/drivers/gpu/drm/i915/display/intel_pps.c
>> index b5d9920f8341..88a44d93f82b 100644
>> --- a/drivers/gpu/drm/i915/display/intel_pps.c
>> +++ b/drivers/gpu/drm/i915/display/intel_pps.c
>> @@ -1670,6 +1670,38 @@ void intel_pps_setup(struct drm_i915_private *i915)
>>  i915->display.pps.mmio_base = PPS_BASE;
>>  }
>>  
>> +static int intel_pps_show(struct seq_file *m, void *data)
>> +{
>> +struct intel_connector *connector = m->private;
>> +struct intel_dp *intel_dp = intel_attached_dp(connector);
>> +
>> +if (connector->base.status != connector_status_connected)
>> +return -ENODEV;
>
> That check seems completely pointless. Could be removed as a
> followup.
>
> Hmm. The other question that comes to mind is whether anyone has
> ever used this file? I for sure have not. So I'm wondering if we
> could just nuke the whole thing?

Good question. In the mean time, with this patch at hand, pushed to din.

>
> Anyways
> Reviewed-by: Ville Syrjälä 

Thanks!

BR,
Jani.

-- 
Jani Nikula, Intel


✗ Fi.CI.SPARSE: warning for drm/i915: PREEMPT_RT related fixups. (rev6)

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

Series: drm/i915: PREEMPT_RT related fixups. (rev6)
URL   : https://patchwork.freedesktop.org/series/95463/
State : warning

== Summary ==

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




✗ Fi.CI.CHECKPATCH: warning for drm/i915: PREEMPT_RT related fixups. (rev6)

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

Series: drm/i915: PREEMPT_RT related fixups. (rev6)
URL   : https://patchwork.freedesktop.org/series/95463/
State : warning

== Summary ==

Error: dim checkpatch failed
dc8b0da9b41f drm/i915: Use preempt_disable/enable_rt() where recommended
-:7: WARNING:COMMIT_LOG_LONG_LINE: Prefer a maximum 75 chars per line (possible 
unwrapped commit description?)
#7: 
  ad3543ede630f ("drm/intel: Push get_scanout_position() timestamping into kms 
driver.")

total: 0 errors, 1 warnings, 0 checks, 67 lines checked
f7987c78a782 drm/i915: Don't disable interrupts on PREEMPT_RT during atomic 
updates
-:10: WARNING:COMMIT_LOG_LONG_LINE: Prefer a maximum 75 chars per line 
(possible unwrapped commit description?)
#10: 
started disabling interrupts across atomic updates. This breaks on PREEMPT_RT

total: 0 errors, 1 warnings, 0 checks, 42 lines checked
e3de3bbb87c3 drm/i915: Don't check for atomic context on PREEMPT_RT
a35be9b73b2d drm/i915: Disable tracing points on PREEMPT_RT
-:26: WARNING:BAD_REPORTED_BY_LINK: Reported-by: should be immediately followed 
by Closes: with a URL to the report
#26: 
Reported-by: Luca Abeni 
Cc: Steven Rostedt 

total: 0 errors, 1 warnings, 0 checks, 10 lines checked
a85ea229acc5 drm/i915: skip DRM_I915_LOW_LEVEL_TRACEPOINTS with NOTRACE
-:50: WARNING:BAD_REPORTED_BY_LINK: Reported-by: should be immediately followed 
by Closes: with a URL to the report
#50: 
Reported-by: Luca Abeni 
Cc: Steven Rostedt 

total: 0 errors, 1 warnings, 0 checks, 10 lines checked
914123128c24 drm/i915/gt: Queue and wait for the irq_work item.
-:21: WARNING:BAD_REPORTED_BY_LINK: Reported-by: should be immediately followed 
by Closes: with a URL to the report
#21: 
Reported-by: Clark Williams 
Signed-off-by: Sebastian Andrzej Siewior 

total: 0 errors, 1 warnings, 0 checks, 12 lines checked
6598e734e1e2 drm/i915/gt: Use spin_lock_irq() instead of local_irq_disable() + 
spin_lock()
-:22: WARNING:BAD_REPORTED_BY_LINK: Reported-by: should be immediately followed 
by Closes: with a URL to the report
#22: 
Reported-by: Clark Williams 
Signed-off-by: Sebastian Andrzej Siewior 

total: 0 errors, 1 warnings, 0 checks, 53 lines checked
f42e9733b3e2 drm/i915: Drop the irqs_disabled() check
-:16: WARNING:BAD_REPORTED_BY_LINK: Reported-by: should be immediately followed 
by Closes: with a URL to the report
#16: 
Reported-by: Maarten Lankhorst 
Signed-off-by: Sebastian Andrzej Siewior 

total: 0 errors, 1 warnings, 0 checks, 14 lines checked
6b5ccade3214 drm/i915/guc: Consider also RCU depth in busy loop.
-:13: WARNING:BAD_REPORTED_BY_LINK: Reported-by: should be immediately followed 
by Closes: with a URL to the report
#13: 
Reported-by: "John B. Wyatt IV" 
Signed-off-by: Sebastian Andrzej Siewior 

-:25: ERROR:IN_ATOMIC: do not use in_atomic in drivers
#25: FILE: drivers/gpu/drm/i915/gt/uc/intel_guc.h:365:
+   bool not_atomic = !in_atomic() && !irqs_disabled() && 
!rcu_preempt_depth();

total: 1 errors, 1 warnings, 0 checks, 8 lines checked
c487f9c8374c Revert "drm/i915: Depend on !PREEMPT_RT."




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

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

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

== Summary ==

CI Bug Log - changes from CI_DRM_14554 -> Patchwork_132264v2


Summary
---

  **SUCCESS**

  No regressions found.

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

Participating hosts (34 -> 35)
--

  Additional (6): bat-dg1-7 bat-arls-2 fi-tgl-1115g4 fi-blb-e6850 bat-dg2-11 
bat-jsl-1 
  Missing(5): fi-bsw-n3050 fi-snb-2520m fi-glk-j4005 fi-kbl-8809g 
bat-arls-3 

Known issues


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

### IGT changes ###

 Issues hit 

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

  * igt@gem_huc_copy@huc-copy:
- fi-tgl-1115g4:  NOTRUN -> [SKIP][4] ([i915#2190])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v2/fi-tgl-1115g4/igt@gem_huc_c...@huc-copy.html
- bat-jsl-1:  NOTRUN -> [SKIP][5] ([i915#2190])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v2/bat-jsl-1/igt@gem_huc_c...@huc-copy.html

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

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

  * igt@gem_lmem_swapping@verify-random:
- bat-arls-2: NOTRUN -> [SKIP][9] ([i915#10213]) +3 other tests skip
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v2/bat-arls-2/igt@gem_lmem_swapp...@verify-random.html
- bat-jsl-1:  NOTRUN -> [SKIP][10] ([i915#4613]) +3 other tests skip
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v2/bat-jsl-1/igt@gem_lmem_swapp...@verify-random.html

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

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

  * igt@gem_render_tiled_blits@basic:
- bat-arls-2: NOTRUN -> [SKIP][15] ([i915#10197] / [i915#10211] / 
[i915#4079])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v2/bat-arls-2/igt@gem_render_tiled_bl...@basic.html

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

  * igt@gem_tiled_pread_basic:
- bat-dg1-7:  NOTRUN -> [SKIP][18] ([i915#4079]) +1 other test skip
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v2/bat-dg1-7/igt@gem_tiled_pread_basic.html
- bat-dg2-11: NOTRUN -> [SKIP][19] ([i915#4079]) +1 other test skip
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v2/bat-dg2-11/igt@gem_tiled_pread_basic.html
- bat-arls-2: NOTRUN -> [SKIP][20] ([i915#10206] / [i915#4079])
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v2/bat-arls-2/igt@gem_tiled_pread_basic.html

  * igt@i915_pm_rpm@module-reload:
- fi-blb-e6850:   NOTRUN -> [SKIP][21] +32 other tests skip
   [21]: 

Re: [PATCH 05/10] drm/i915: skip DRM_I915_LOW_LEVEL_TRACEPOINTS with NOTRACE

2024-04-10 Thread Sebastian Andrzej Siewior
On 2024-04-09 11:55:33 [-0400], Steven Rostedt wrote:
> I believe you need to do it in the .c file:
> 
> Can you try something like this?
> 
…
>  ?

I tried and nothing changed because the lowlevel config option isn't the
problem. What about I drop this and replace 4/10 from this series with
the patch below? After enabling all tracing I don't see any events in
events/i915.

Sebastian

->8

From: Sebastian Andrzej Siewior 
Date: Thu, 6 Dec 2018 09:52:20 +0100
Subject: [PATCH] drm/i915: Disable tracing points on PREEMPT_RT

Luca Abeni reported this:
| BUG: scheduling while atomic: kworker/u8:2/15203/0x0003
| CPU: 1 PID: 15203 Comm: kworker/u8:2 Not tainted 4.19.1-rt3 #10
| Call Trace:
|  rt_spin_lock+0x3f/0x50
|  gen6_read32+0x45/0x1d0 [i915]
|  g4x_get_vblank_counter+0x36/0x40 [i915]
|  trace_event_raw_event_i915_pipe_update_start+0x7d/0xf0 [i915]

The tracing events use trace_i915_pipe_update_start() among other events
use functions acquire spinlock_t locks which are transformed into
sleeping locks on PREEMPT_RT. A few trace points use
intel_get_crtc_scanline(), others use ->get_vblank_counter() wich also
might acquire a sleeping locks on PREEMPT_RT.
At the time the arguments are evaluated within trace point, preemption
is disabled and so the locks must not be acquired on PREEMPT_RT.

Based on this I don't see any other way than disable trace points on
PREMPT_RT.

Reported-by: Luca Abeni 
Cc: Steven Rostedt 
Signed-off-by: Sebastian Andrzej Siewior 
---
 drivers/gpu/drm/i915/display/intel_display_trace.h | 4 
 drivers/gpu/drm/i915/i915_trace.h  | 4 
 2 files changed, 8 insertions(+)

diff --git a/drivers/gpu/drm/i915/display/intel_display_trace.h 
b/drivers/gpu/drm/i915/display/intel_display_trace.h
index 7862e7cefe027..e4608d855bfba 100644
--- a/drivers/gpu/drm/i915/display/intel_display_trace.h
+++ b/drivers/gpu/drm/i915/display/intel_display_trace.h
@@ -9,6 +9,10 @@
 #if !defined(__INTEL_DISPLAY_TRACE_H__) || defined(TRACE_HEADER_MULTI_READ)
 #define __INTEL_DISPLAY_TRACE_H__
 
+#ifdef CONFIG_PREEMPT_RT
+#define NOTRACE
+#endif
+
 #include 
 #include 
 #include 
diff --git a/drivers/gpu/drm/i915/i915_trace.h 
b/drivers/gpu/drm/i915/i915_trace.h
index ce1cbee1b39dd..c54653cf72c95 100644
--- a/drivers/gpu/drm/i915/i915_trace.h
+++ b/drivers/gpu/drm/i915/i915_trace.h
@@ -6,6 +6,10 @@
 #if !defined(_I915_TRACE_H_) || defined(TRACE_HEADER_MULTI_READ)
 #define _I915_TRACE_H_
 
+#ifdef CONFIG_PREEMPT_RT
+#define NOTRACE
+#endif
+
 #include 
 #include 
 #include 
-- 
2.43.0


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

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

Series: drm: move Intel drm headers to a subdirectory (rev2)
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:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 

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

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

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

== Summary ==

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

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

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

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

total: 0 errors, 1 warnings, 0 checks, 24 lines checked
fdbff35690db 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
0cbf2a2c76d7 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
dccec38e0b09 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
d4a48240c91a 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
6e0283b57bd1 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




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

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

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

== Summary ==

CI Bug Log - changes from CI_DRM_14554 -> Patchwork_132264v1


Summary
---

  **SUCCESS**

  No regressions found.

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

Participating hosts (34 -> 37)
--

  Additional (7): bat-dg1-7 fi-tgl-1115g4 fi-apl-guc fi-blb-e6850 bat-dg2-11 
bat-jsl-1 bat-arls-2 
  Missing(4): fi-glk-j4005 fi-kbl-8809g fi-snb-2520m fi-bsw-n3050 

Known issues


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

### IGT changes ###

 Issues hit 

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

  * igt@gem_huc_copy@huc-copy:
- fi-tgl-1115g4:  NOTRUN -> [SKIP][4] ([i915#2190])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v1/fi-tgl-1115g4/igt@gem_huc_c...@huc-copy.html
- bat-jsl-1:  NOTRUN -> [SKIP][5] ([i915#2190])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v1/bat-jsl-1/igt@gem_huc_c...@huc-copy.html

  * igt@gem_lmem_swapping@basic:
- fi-apl-guc: NOTRUN -> [SKIP][6] ([i915#4613]) +3 other tests skip
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v1/fi-apl-guc/igt@gem_lmem_swapp...@basic.html

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

  * igt@gem_lmem_swapping@parallel-random-engines:
- bat-jsl-1:  NOTRUN -> [SKIP][9] ([i915#4613]) +3 other tests skip
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v1/bat-jsl-1/igt@gem_lmem_swapp...@parallel-random-engines.html
- fi-tgl-1115g4:  NOTRUN -> [SKIP][10] ([i915#4613]) +3 other tests skip
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v1/fi-tgl-1115g4/igt@gem_lmem_swapp...@parallel-random-engines.html

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

  * igt@gem_mmap@basic:
- bat-dg2-11: NOTRUN -> [SKIP][12] ([i915#4083])
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v1/bat-dg2-11/igt@gem_m...@basic.html
- bat-dg1-7:  NOTRUN -> [SKIP][13] ([i915#4083])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v1/bat-dg1-7/igt@gem_m...@basic.html
- bat-arls-2: NOTRUN -> [SKIP][14] ([i915#4083])
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132264v1/bat-arls-2/igt@gem_m...@basic.html

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

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

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

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

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

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

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

Series: drm: move Intel drm headers to a subdirectory
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:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:147:1: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:149:9: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:153:26: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:155:16: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:155:16: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:155:16: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:155:16: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:155:16: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:155:16: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:155:16: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:155:16: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:155:16: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:155:16: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:155:16: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:155:16: warning: unreplaced symbol 'oldbit'
+./arch/x86/include/asm/bitops.h:155:9: warning: unreplaced symbol 'return'
+./arch/x86/include/asm/bitops.h:155:9: warning: unreplaced symbol 

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

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

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

== Summary ==

Error: dim checkpatch failed
8c970e29f651 drm/i915: use system include for drm headers
81251adf0df4 drm: move intel-gtt.h under include/drm/intel
-:81: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does 
MAINTAINERS need updating?
#81: 
rename from include/drm/intel-gtt.h

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

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

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

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

total: 0 errors, 1 warnings, 0 checks, 56 lines checked
8df033d9b2cc 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
bc0b32a80713 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
96c38515e434 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
e34f3fcf46cb 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




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

2024-04-10 Thread Jani Nikula
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%)

diff --git a/arch/x86/kernel/early-quirks.c b/arch/x86/kernel/early-quirks.c
index 59f4aefc6bc1..5b867c02d2b5 100644
--- a/arch/x86/kernel/early-quirks.c
+++ b/arch/x86/kernel/early-quirks.c
@@ -17,7 +17,7 @@
 #include 
 #include 
 #include 
-#include 
+#include 
 #include 
 #include 
 #include 
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c 
b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
index ad6dd7f3259b..30595b2b63e1 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
@@ -8,7 +8,7 @@
 #include 
 
 #include 
-#include 
+#include 
 
 #include "gem/i915_gem_lmem.h"
 #include "gem/i915_gem_region.h"
diff --git a/drivers/gpu/drm/i915/gt/intel_ggtt.c 
b/drivers/gpu/drm/i915/gt/intel_ggtt.c
index 2717699c6591..206a5e0fedf1 100644
--- a/drivers/gpu/drm/i915/gt/intel_ggtt.c
+++ b/drivers/gpu/drm/i915/gt/intel_ggtt.c
@@ -9,7 +9,7 @@
 #include 
 
 #include 
-#include 
+#include 
 #include 
 
 #include "display/intel_display.h"
diff --git a/drivers/gpu/drm/i915/gt/intel_rps.c 
b/drivers/gpu/drm/i915/gt/intel_rps.c
index c9cb2a391942..70176be269d3 100644
--- a/drivers/gpu/drm/i915/gt/intel_rps.c
+++ b/drivers/gpu/drm/i915/gt/intel_rps.c
@@ -5,7 +5,7 @@
 
 #include 
 
-#include 
+#include 
 
 #include "display/intel_display.h"
 #include "display/intel_display_irq.h"
diff --git a/drivers/gpu/drm/i915/intel_pci_config.h 
b/drivers/gpu/drm/i915/intel_pci_config.h
index 23b8e519f333..ebe040828e20 100644
--- a/drivers/gpu/drm/i915/intel_pci_config.h
+++ b/drivers/gpu/drm/i915/intel_pci_config.h
@@ -31,7 +31,7 @@ static inline int intel_mmio_bar(int graphics_ver)
}
 }
 
-/* BSM in include/drm/i915_drm.h */
+/* BSM in include/drm/intel/i915_drm.h */
 
 #define MCHBAR_I9150x44
 #define MCHBAR_I9650x48
diff --git a/drivers/gpu/drm/i915/soc/intel_gmch.c 
b/drivers/gpu/drm/i915/soc/intel_gmch.c
index 40874ebfb64c..734e9f2801ea 100644
--- a/drivers/gpu/drm/i915/soc/intel_gmch.c
+++ b/drivers/gpu/drm/i915/soc/intel_gmch.c
@@ -8,7 +8,7 @@
 #include 
 
 #include 
-#include 
+#include 
 
 #include "i915_drv.h"
 #include "intel_gmch.h"
diff --git a/drivers/gpu/drm/xe/xe_ggtt.c b/drivers/gpu/drm/xe/xe_ggtt.c
index ff2239c0eda5..7af1a48f3b59 100644
--- a/drivers/gpu/drm/xe/xe_ggtt.c
+++ b/drivers/gpu/drm/xe/xe_ggtt.c
@@ -9,7 +9,7 @@
 #include 
 
 #include 
-#include 
+#include 
 
 #include "regs/xe_gt_regs.h"
 #include "regs/xe_gtt_defs.h"
diff --git a/drivers/platform/x86/intel_ips.c b/drivers/platform/x86/intel_ips.c
index ba38649cc142..2a88012958eb 100644
--- a/drivers/platform/x86/intel_ips.c
+++ b/drivers/platform/x86/intel_ips.c
@@ -59,7 +59,7 @@
 #include 
 #include 
 #include 
-#include 
+#include 
 #include 
 #include 
 #include "intel_ips.h"
diff --git a/include/drm/i915_drm.h b/include/drm/intel/i915_drm.h
similarity index 100%
rename from include/drm/i915_drm.h
rename to include/drm/intel/i915_drm.h
-- 
2.39.2



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

2024-04-10 Thread Jani Nikula
On Wed, 10 Apr 2024, Ilpo Järvinen  wrote:
> Could you please also address the comment in 
> drivers/gpu/drm/i915/intel_pci_config.h.

Ack.

-- 
Jani Nikula, Intel


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

2024-04-10 Thread Ilpo Järvinen
On Wed, 10 Apr 2024, 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: 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/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
>  8 files changed, 7 insertions(+), 7 deletions(-)
>  rename include/drm/{ => intel}/i915_drm.h (100%)
> 
> diff --git a/arch/x86/kernel/early-quirks.c b/arch/x86/kernel/early-quirks.c
> index 59f4aefc6bc1..5b867c02d2b5 100644
> --- a/arch/x86/kernel/early-quirks.c
> +++ b/arch/x86/kernel/early-quirks.c
> @@ -17,7 +17,7 @@
>  #include 
>  #include 
>  #include 
> -#include 
> +#include 
>  #include 
>  #include 
>  #include 
> diff --git a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c 
> b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
> index ad6dd7f3259b..30595b2b63e1 100644
> --- a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
> +++ b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
> @@ -8,7 +8,7 @@
>  #include 
>  
>  #include 
> -#include 
> +#include 
>  
>  #include "gem/i915_gem_lmem.h"
>  #include "gem/i915_gem_region.h"
> diff --git a/drivers/gpu/drm/i915/gt/intel_ggtt.c 
> b/drivers/gpu/drm/i915/gt/intel_ggtt.c
> index 2717699c6591..206a5e0fedf1 100644
> --- a/drivers/gpu/drm/i915/gt/intel_ggtt.c
> +++ b/drivers/gpu/drm/i915/gt/intel_ggtt.c
> @@ -9,7 +9,7 @@
>  #include 
>  
>  #include 
> -#include 
> +#include 
>  #include 
>  
>  #include "display/intel_display.h"
> diff --git a/drivers/gpu/drm/i915/gt/intel_rps.c 
> b/drivers/gpu/drm/i915/gt/intel_rps.c
> index c9cb2a391942..70176be269d3 100644
> --- a/drivers/gpu/drm/i915/gt/intel_rps.c
> +++ b/drivers/gpu/drm/i915/gt/intel_rps.c
> @@ -5,7 +5,7 @@
>  
>  #include 
>  
> -#include 
> +#include 
>  
>  #include "display/intel_display.h"
>  #include "display/intel_display_irq.h"
> diff --git a/drivers/gpu/drm/i915/soc/intel_gmch.c 
> b/drivers/gpu/drm/i915/soc/intel_gmch.c
> index 40874ebfb64c..734e9f2801ea 100644
> --- a/drivers/gpu/drm/i915/soc/intel_gmch.c
> +++ b/drivers/gpu/drm/i915/soc/intel_gmch.c
> @@ -8,7 +8,7 @@
>  #include 
>  
>  #include 
> -#include 
> +#include 
>  
>  #include "i915_drv.h"
>  #include "intel_gmch.h"
> diff --git a/drivers/gpu/drm/xe/xe_ggtt.c b/drivers/gpu/drm/xe/xe_ggtt.c
> index ff2239c0eda5..7af1a48f3b59 100644
> --- a/drivers/gpu/drm/xe/xe_ggtt.c
> +++ b/drivers/gpu/drm/xe/xe_ggtt.c
> @@ -9,7 +9,7 @@
>  #include 
>  
>  #include 
> -#include 
> +#include 
>  
>  #include "regs/xe_gt_regs.h"
>  #include "regs/xe_gtt_defs.h"
> diff --git a/drivers/platform/x86/intel_ips.c 
> b/drivers/platform/x86/intel_ips.c
> index ba38649cc142..2a88012958eb 100644
> --- a/drivers/platform/x86/intel_ips.c
> +++ b/drivers/platform/x86/intel_ips.c
> @@ -59,7 +59,7 @@
>  #include 
>  #include 
>  #include 
> -#include 
> +#include 
>  #include 
>  #include 
>  #include "intel_ips.h"
> diff --git a/include/drm/i915_drm.h b/include/drm/intel/i915_drm.h
> similarity index 100%
> rename from include/drm/i915_drm.h
> rename to include/drm/intel/i915_drm.h

Could you please also address the comment in 
drivers/gpu/drm/i915/intel_pci_config.h.

-- 
 i.


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

2024-04-10 Thread Jani Nikula
On Wed, 10 Apr 2024, 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)

hsw_audio_codec_disable/enable get called on hsw and display ver >= 8,
but a lot of those platforms have the bit reserved MBZ. I didn't go
through all the platforms in bspec, but enough to notice this needs some
platform check.

BR,
Jani.

>
> Signed-off-by: Uma Shankar 
> ---
>  drivers/gpu/drm/i915/display/intel_audio.c  | 12 
>  drivers/gpu/drm/i915/display/intel_audio_regs.h |  3 +++
>  2 files changed, 15 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_audio.c 
> b/drivers/gpu/drm/i915/display/intel_audio.c
> index 07e0c73204f3..a8e3e515aaa0 100644
> --- a/drivers/gpu/drm/i915/display/intel_audio.c
> +++ b/drivers/gpu/drm/i915/display/intel_audio.c
> @@ -512,6 +512,12 @@ 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
> +  */
> + intel_de_rmw(i915, AUD_CHICKENBIT_REG3, CHICKEN3_SPARE18, 0);
> +
>   mutex_unlock(>display.audio.mutex);
>  }
>  
> @@ -637,6 +643,12 @@ 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
> +  */
> + 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__ */

-- 
Jani Nikula, Intel


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

2024-04-10 Thread Jani Nikula
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-11600/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-11600/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-11600/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-8109u/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-11600/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-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] 

[PATCH 09/10] drm: move xe_pciids.h under include/drm/intel

2024-04-10 Thread Jani Nikula
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 
Signed-off-by: Jani Nikula 
---
 drivers/gpu/drm/xe/xe_pci.c | 2 +-
 include/drm/{ => intel}/xe_pciids.h | 0
 2 files changed, 1 insertion(+), 1 deletion(-)
 rename include/drm/{ => intel}/xe_pciids.h (100%)

diff --git a/drivers/gpu/drm/xe/xe_pci.c b/drivers/gpu/drm/xe/xe_pci.c
index 3b30353dbc09..46b3ee310ee7 100644
--- a/drivers/gpu/drm/xe/xe_pci.c
+++ b/drivers/gpu/drm/xe/xe_pci.c
@@ -13,7 +13,7 @@
 
 #include 
 #include 
-#include 
+#include 
 
 #include "display/xe_display.h"
 #include "regs/xe_gt_regs.h"
diff --git a/include/drm/xe_pciids.h b/include/drm/intel/xe_pciids.h
similarity index 100%
rename from include/drm/xe_pciids.h
rename to include/drm/intel/xe_pciids.h
-- 
2.39.2



[PATCH 10/10] drm: move i915_hdcp_interface.h under include/drm/intel

2024-04-10 Thread Jani Nikula
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 
---
 drivers/gpu/drm/i915/display/intel_display_types.h| 2 +-
 drivers/gpu/drm/i915/display/intel_hdcp_gsc.c | 2 +-
 drivers/gpu/drm/i915/display/intel_hdcp_gsc_message.c | 2 +-
 drivers/gpu/drm/xe/display/xe_hdcp_gsc.c  | 2 +-
 drivers/misc/mei/hdcp/mei_hdcp.c  | 2 +-
 include/drm/{ => intel}/i915_hdcp_interface.h | 0
 6 files changed, 5 insertions(+), 5 deletions(-)
 rename include/drm/{ => intel}/i915_hdcp_interface.h (100%)

diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h 
b/drivers/gpu/drm/i915/display/intel_display_types.h
index 0f4bd5710796..98d3b6a57b82 100644
--- a/drivers/gpu/drm/i915/display/intel_display_types.h
+++ b/drivers/gpu/drm/i915/display/intel_display_types.h
@@ -44,7 +44,7 @@
 #include 
 #include 
 #include 
-#include 
+#include 
 #include 
 
 #include "i915_vma.h"
diff --git a/drivers/gpu/drm/i915/display/intel_hdcp_gsc.c 
b/drivers/gpu/drm/i915/display/intel_hdcp_gsc.c
index 35823e1f65d6..16afeb8a3a8d 100644
--- a/drivers/gpu/drm/i915/display/intel_hdcp_gsc.c
+++ b/drivers/gpu/drm/i915/display/intel_hdcp_gsc.c
@@ -3,7 +3,7 @@
  * Copyright 2023, Intel Corporation.
  */
 
-#include 
+#include 
 
 #include "gem/i915_gem_region.h"
 #include "gt/intel_gt.h"
diff --git a/drivers/gpu/drm/i915/display/intel_hdcp_gsc_message.c 
b/drivers/gpu/drm/i915/display/intel_hdcp_gsc_message.c
index 240b00849f3d..6548e71b4c49 100644
--- a/drivers/gpu/drm/i915/display/intel_hdcp_gsc_message.c
+++ b/drivers/gpu/drm/i915/display/intel_hdcp_gsc_message.c
@@ -4,7 +4,7 @@
  */
 
 #include 
-#include 
+#include 
 
 #include "i915_drv.h"
 #include "intel_hdcp_gsc_message.h"
diff --git a/drivers/gpu/drm/xe/display/xe_hdcp_gsc.c 
b/drivers/gpu/drm/xe/display/xe_hdcp_gsc.c
index ac4b870f73fa..378ee3f426dc 100644
--- a/drivers/gpu/drm/xe/display/xe_hdcp_gsc.c
+++ b/drivers/gpu/drm/xe/display/xe_hdcp_gsc.c
@@ -4,7 +4,7 @@
  */
 
 #include 
-#include 
+#include 
 #include 
 
 #include "abi/gsc_command_header_abi.h"
diff --git a/drivers/misc/mei/hdcp/mei_hdcp.c b/drivers/misc/mei/hdcp/mei_hdcp.c
index e43ea536c947..323f10620d90 100644
--- a/drivers/misc/mei/hdcp/mei_hdcp.c
+++ b/drivers/misc/mei/hdcp/mei_hdcp.c
@@ -24,7 +24,7 @@
 #include 
 #include 
 #include 
-#include 
+#include 
 
 #include "mei_hdcp.h"
 
diff --git a/include/drm/i915_hdcp_interface.h 
b/include/drm/intel/i915_hdcp_interface.h
similarity index 100%
rename from include/drm/i915_hdcp_interface.h
rename to include/drm/intel/i915_hdcp_interface.h
-- 
2.39.2



[PATCH 06/10] drm: move i915_drm.h under include/drm/intel

2024-04-10 Thread Jani Nikula
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: 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/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
 8 files changed, 7 insertions(+), 7 deletions(-)
 rename include/drm/{ => intel}/i915_drm.h (100%)

diff --git a/arch/x86/kernel/early-quirks.c b/arch/x86/kernel/early-quirks.c
index 59f4aefc6bc1..5b867c02d2b5 100644
--- a/arch/x86/kernel/early-quirks.c
+++ b/arch/x86/kernel/early-quirks.c
@@ -17,7 +17,7 @@
 #include 
 #include 
 #include 
-#include 
+#include 
 #include 
 #include 
 #include 
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c 
b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
index ad6dd7f3259b..30595b2b63e1 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_stolen.c
@@ -8,7 +8,7 @@
 #include 
 
 #include 
-#include 
+#include 
 
 #include "gem/i915_gem_lmem.h"
 #include "gem/i915_gem_region.h"
diff --git a/drivers/gpu/drm/i915/gt/intel_ggtt.c 
b/drivers/gpu/drm/i915/gt/intel_ggtt.c
index 2717699c6591..206a5e0fedf1 100644
--- a/drivers/gpu/drm/i915/gt/intel_ggtt.c
+++ b/drivers/gpu/drm/i915/gt/intel_ggtt.c
@@ -9,7 +9,7 @@
 #include 
 
 #include 
-#include 
+#include 
 #include 
 
 #include "display/intel_display.h"
diff --git a/drivers/gpu/drm/i915/gt/intel_rps.c 
b/drivers/gpu/drm/i915/gt/intel_rps.c
index c9cb2a391942..70176be269d3 100644
--- a/drivers/gpu/drm/i915/gt/intel_rps.c
+++ b/drivers/gpu/drm/i915/gt/intel_rps.c
@@ -5,7 +5,7 @@
 
 #include 
 
-#include 
+#include 
 
 #include "display/intel_display.h"
 #include "display/intel_display_irq.h"
diff --git a/drivers/gpu/drm/i915/soc/intel_gmch.c 
b/drivers/gpu/drm/i915/soc/intel_gmch.c
index 40874ebfb64c..734e9f2801ea 100644
--- a/drivers/gpu/drm/i915/soc/intel_gmch.c
+++ b/drivers/gpu/drm/i915/soc/intel_gmch.c
@@ -8,7 +8,7 @@
 #include 
 
 #include 
-#include 
+#include 
 
 #include "i915_drv.h"
 #include "intel_gmch.h"
diff --git a/drivers/gpu/drm/xe/xe_ggtt.c b/drivers/gpu/drm/xe/xe_ggtt.c
index ff2239c0eda5..7af1a48f3b59 100644
--- a/drivers/gpu/drm/xe/xe_ggtt.c
+++ b/drivers/gpu/drm/xe/xe_ggtt.c
@@ -9,7 +9,7 @@
 #include 
 
 #include 
-#include 
+#include 
 
 #include "regs/xe_gt_regs.h"
 #include "regs/xe_gtt_defs.h"
diff --git a/drivers/platform/x86/intel_ips.c b/drivers/platform/x86/intel_ips.c
index ba38649cc142..2a88012958eb 100644
--- a/drivers/platform/x86/intel_ips.c
+++ b/drivers/platform/x86/intel_ips.c
@@ -59,7 +59,7 @@
 #include 
 #include 
 #include 
-#include 
+#include 
 #include 
 #include 
 #include "intel_ips.h"
diff --git a/include/drm/i915_drm.h b/include/drm/intel/i915_drm.h
similarity index 100%
rename from include/drm/i915_drm.h
rename to include/drm/intel/i915_drm.h
-- 
2.39.2



[PATCH 08/10] drm: move i915_pciids.h under include/drm/intel

2024-04-10 Thread Jani Nikula
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: Bjorn Helgaas 
Signed-off-by: Jani Nikula 
---
 arch/x86/kernel/early-quirks.c  | 2 +-
 drivers/gpu/drm/i915/display/intel_display_device.c | 2 +-
 drivers/gpu/drm/i915/i915_pci.c | 2 +-
 drivers/gpu/drm/i915/intel_device_info.c| 2 +-
 include/drm/{ => intel}/i915_pciids.h   | 0
 5 files changed, 4 insertions(+), 4 deletions(-)
 rename include/drm/{ => intel}/i915_pciids.h (100%)

diff --git a/arch/x86/kernel/early-quirks.c b/arch/x86/kernel/early-quirks.c
index 5b867c02d2b5..6019949a3f68 100644
--- a/arch/x86/kernel/early-quirks.c
+++ b/arch/x86/kernel/early-quirks.c
@@ -18,7 +18,7 @@
 #include 
 #include 
 #include 
-#include 
+#include 
 #include 
 #include 
 #include 
diff --git a/drivers/gpu/drm/i915/display/intel_display_device.c 
b/drivers/gpu/drm/i915/display/intel_display_device.c
index b8903bd0e82a..15525fbf91c1 100644
--- a/drivers/gpu/drm/i915/display/intel_display_device.c
+++ b/drivers/gpu/drm/i915/display/intel_display_device.c
@@ -3,7 +3,7 @@
  * Copyright © 2023 Intel Corporation
  */
 
-#include 
+#include 
 #include 
 #include 
 
diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c
index 405ca17a990b..983848e5b5b4 100644
--- a/drivers/gpu/drm/i915/i915_pci.c
+++ b/drivers/gpu/drm/i915/i915_pci.c
@@ -24,7 +24,7 @@
 
 #include 
 #include 
-#include 
+#include 
 
 #include "display/intel_display.h"
 #include "display/intel_display_driver.h"
diff --git a/drivers/gpu/drm/i915/intel_device_info.c 
b/drivers/gpu/drm/i915/intel_device_info.c
index a0a43ea07f11..12948d586143 100644
--- a/drivers/gpu/drm/i915/intel_device_info.c
+++ b/drivers/gpu/drm/i915/intel_device_info.c
@@ -25,7 +25,7 @@
 #include 
 
 #include 
-#include 
+#include 
 
 #include "gt/intel_gt_regs.h"
 #include "i915_drv.h"
diff --git a/include/drm/i915_pciids.h b/include/drm/intel/i915_pciids.h
similarity index 100%
rename from include/drm/i915_pciids.h
rename to include/drm/intel/i915_pciids.h
-- 
2.39.2



[PATCH 07/10] drm: move i915_pxp_tee_interface.h under include/drm/intel

2024-04-10 Thread Jani Nikula
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 
---
 drivers/gpu/drm/i915/pxp/intel_pxp_tee.c | 2 +-
 drivers/misc/mei/pxp/mei_pxp.c   | 2 +-
 include/drm/{ => intel}/i915_pxp_tee_interface.h | 0
 3 files changed, 2 insertions(+), 2 deletions(-)
 rename include/drm/{ => intel}/i915_pxp_tee_interface.h (100%)

diff --git a/drivers/gpu/drm/i915/pxp/intel_pxp_tee.c 
b/drivers/gpu/drm/i915/pxp/intel_pxp_tee.c
index 051b6cdcf721..1784153f0cf8 100644
--- a/drivers/gpu/drm/i915/pxp/intel_pxp_tee.c
+++ b/drivers/gpu/drm/i915/pxp/intel_pxp_tee.c
@@ -5,7 +5,7 @@
 
 #include 
 
-#include 
+#include 
 #include 
 
 #include "gem/i915_gem_lmem.h"
diff --git a/drivers/misc/mei/pxp/mei_pxp.c b/drivers/misc/mei/pxp/mei_pxp.c
index 5a7a4d8b0e23..4268a868255f 100644
--- a/drivers/misc/mei/pxp/mei_pxp.c
+++ b/drivers/misc/mei/pxp/mei_pxp.c
@@ -20,7 +20,7 @@
 #include 
 #include 
 #include 
-#include 
+#include 
 
 #include "mei_pxp.h"
 
diff --git a/include/drm/i915_pxp_tee_interface.h 
b/include/drm/intel/i915_pxp_tee_interface.h
similarity index 100%
rename from include/drm/i915_pxp_tee_interface.h
rename to include/drm/intel/i915_pxp_tee_interface.h
-- 
2.39.2



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

2024-04-10 Thread Jani Nikula
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
 sound/x86/intel_hdmi_audio.c   | 2 +-
 4 files changed, 3 insertions(+), 3 deletions(-)
 rename include/drm/{ => intel}/intel_lpe_audio.h (100%)

diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c 
b/drivers/gpu/drm/i915/display/intel_hdmi.c
index 5f6deceaf8ba..959aa1143a7d 100644
--- a/drivers/gpu/drm/i915/display/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/display/intel_hdmi.c
@@ -38,7 +38,7 @@
 #include 
 #include 
 #include 
-#include 
+#include 
 
 #include "g4x_hdmi.h"
 #include "i915_drv.h"
diff --git a/drivers/gpu/drm/i915/display/intel_lpe_audio.c 
b/drivers/gpu/drm/i915/display/intel_lpe_audio.c
index 5863763de530..4e3f78d1d4f9 100644
--- a/drivers/gpu/drm/i915/display/intel_lpe_audio.c
+++ b/drivers/gpu/drm/i915/display/intel_lpe_audio.c
@@ -68,7 +68,7 @@
 #include 
 #include 
 
-#include 
+#include 
 
 #include "i915_drv.h"
 #include "i915_irq.h"
diff --git a/include/drm/intel_lpe_audio.h b/include/drm/intel/intel_lpe_audio.h
similarity index 100%
rename from include/drm/intel_lpe_audio.h
rename to include/drm/intel/intel_lpe_audio.h
diff --git a/sound/x86/intel_hdmi_audio.c b/sound/x86/intel_hdmi_audio.c
index 02f5a7f9b728..d41ea09ffbe5 100644
--- a/sound/x86/intel_hdmi_audio.c
+++ b/sound/x86/intel_hdmi_audio.c
@@ -31,7 +31,7 @@
 #include 
 #include 
 #include 
-#include 
+#include 
 #include "intel_hdmi_audio.h"
 
 #define INTEL_HDMI_AUDIO_SUSPEND_DELAY_MS  5000
-- 
2.39.2



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

2024-04-10 Thread Jani Nikula
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 +-
 10 files changed, 9 insertions(+), 9 deletions(-)
 rename include/drm/{ => intel}/i915_component.h (100%)

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



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

2024-04-10 Thread Jani Nikula
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 
---
 drivers/gpu/drm/i915/gt/uc/intel_gsc_proxy.c   | 2 +-
 drivers/gpu/drm/xe/xe_gsc_proxy.c  | 2 +-
 drivers/misc/mei/gsc_proxy/mei_gsc_proxy.c | 2 +-
 include/drm/{ => intel}/i915_gsc_proxy_mei_interface.h | 0
 4 files changed, 3 insertions(+), 3 deletions(-)
 rename include/drm/{ => intel}/i915_gsc_proxy_mei_interface.h (100%)

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 a7d5465655f9..e7619d81353c 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_gsc_proxy.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_gsc_proxy.c
@@ -6,7 +6,7 @@
 #include 
 
 #include 
-#include 
+#include 
 
 #include "gt/intel_gt.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 35e397b68dfc..ea7b5ffb8954 100644
--- a/drivers/gpu/drm/xe/xe_gsc_proxy.c
+++ b/drivers/gpu/drm/xe/xe_gsc_proxy.c
@@ -10,7 +10,7 @@
 
 #include 
 #include 
-#include 
+#include 
 
 #include "abi/gsc_proxy_commands_abi.h"
 #include "regs/xe_gsc_regs.h"
diff --git a/drivers/misc/mei/gsc_proxy/mei_gsc_proxy.c 
b/drivers/misc/mei/gsc_proxy/mei_gsc_proxy.c
index 89364bdbb129..d5fbaf5d0c8e 100644
--- a/drivers/misc/mei/gsc_proxy/mei_gsc_proxy.c
+++ b/drivers/misc/mei/gsc_proxy/mei_gsc_proxy.c
@@ -18,7 +18,7 @@
 #include 
 #include 
 #include 
-#include 
+#include 
 
 /**
  * mei_gsc_proxy_send - Sends a proxy message to ME FW.
diff --git a/include/drm/i915_gsc_proxy_mei_interface.h 
b/include/drm/intel/i915_gsc_proxy_mei_interface.h
similarity index 100%
rename from include/drm/i915_gsc_proxy_mei_interface.h
rename to include/drm/intel/i915_gsc_proxy_mei_interface.h
-- 
2.39.2



[PATCH 02/10] drm: move intel-gtt.h under include/drm/intel

2024-04-10 Thread Jani Nikula
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 
Signed-off-by: Jani Nikula 
---
 drivers/char/agp/intel-agp.c  | 2 +-
 drivers/char/agp/intel-gtt.c  | 2 +-
 drivers/gpu/drm/i915/gt/intel_ggtt.c  | 2 +-
 drivers/gpu/drm/i915/gt/intel_ggtt_gmch.c | 2 +-
 drivers/gpu/drm/i915/gt/intel_gt.c| 2 +-
 include/drm/{ => intel}/intel-gtt.h   | 0
 6 files changed, 5 insertions(+), 5 deletions(-)
 rename include/drm/{ => intel}/intel-gtt.h (100%)

diff --git a/drivers/char/agp/intel-agp.c b/drivers/char/agp/intel-agp.c
index c518b3a9db04..eec80db6402d 100644
--- a/drivers/char/agp/intel-agp.c
+++ b/drivers/char/agp/intel-agp.c
@@ -12,7 +12,7 @@
 #include 
 #include "agp.h"
 #include "intel-agp.h"
-#include 
+#include 
 
 static int intel_fetch_size(void)
 {
diff --git a/drivers/char/agp/intel-gtt.c b/drivers/char/agp/intel-gtt.c
index bf6716ff863b..11f5cf853c46 100644
--- a/drivers/char/agp/intel-gtt.c
+++ b/drivers/char/agp/intel-gtt.c
@@ -25,7 +25,7 @@
 #include 
 #include "agp.h"
 #include "intel-agp.h"
-#include 
+#include 
 #include 
 
 /*
diff --git a/drivers/gpu/drm/i915/gt/intel_ggtt.c 
b/drivers/gpu/drm/i915/gt/intel_ggtt.c
index 0d0a0dc9f610..2717699c6591 100644
--- a/drivers/gpu/drm/i915/gt/intel_ggtt.c
+++ b/drivers/gpu/drm/i915/gt/intel_ggtt.c
@@ -10,7 +10,7 @@
 
 #include 
 #include 
-#include 
+#include 
 
 #include "display/intel_display.h"
 #include "gem/i915_gem_lmem.h"
diff --git a/drivers/gpu/drm/i915/gt/intel_ggtt_gmch.c 
b/drivers/gpu/drm/i915/gt/intel_ggtt_gmch.c
index 866c416afb73..59eed0a0ce90 100644
--- a/drivers/gpu/drm/i915/gt/intel_ggtt_gmch.c
+++ b/drivers/gpu/drm/i915/gt/intel_ggtt_gmch.c
@@ -5,7 +5,7 @@
 
 #include "intel_ggtt_gmch.h"
 
-#include 
+#include 
 
 #include 
 
diff --git a/drivers/gpu/drm/i915/gt/intel_gt.c 
b/drivers/gpu/drm/i915/gt/intel_gt.c
index 580b5141ce1e..bab805ca4f0d 100644
--- a/drivers/gpu/drm/i915/gt/intel_gt.c
+++ b/drivers/gpu/drm/i915/gt/intel_gt.c
@@ -4,7 +4,7 @@
  */
 
 #include 
-#include 
+#include 
 
 #include "gem/i915_gem_internal.h"
 #include "gem/i915_gem_lmem.h"
diff --git a/include/drm/intel-gtt.h b/include/drm/intel/intel-gtt.h
similarity index 100%
rename from include/drm/intel-gtt.h
rename to include/drm/intel/intel-gtt.h
-- 
2.39.2



[PATCH 01/10] drm/i915: use system include for drm headers

2024-04-10 Thread Jani Nikula
Use <> instead of "" for including headers from include/, even if the
file is in the same directory.

Signed-off-by: Jani Nikula 
---
 include/drm/i915_component.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/drm/i915_component.h b/include/drm/i915_component.h
index 56a84ee1c64c..4ea3b17aa143 100644
--- a/include/drm/i915_component.h
+++ b/include/drm/i915_component.h
@@ -24,7 +24,7 @@
 #ifndef _I915_COMPONENT_H_
 #define _I915_COMPONENT_H_
 
-#include "drm_audio_component.h"
+#include 
 
 enum i915_component_type {
I915_COMPONENT_AUDIO = 1,
-- 
2.39.2



[PATCH 00/10] drm: move Intel drm headers to a subdirectory

2024-04-10 Thread Jani Nikula
We've accumulated enough Intel specific header files under include/drm
that they warrant a subdirectory of their own. Clean up the top drm
header directory by moving the Intel files under include/drm/intel.

Since i915 is most impacted, I suggest merging the lot via
drm-intel-next. Please ack if this is fine for you.

BR,
Jani.


Cc: Bjorn Helgaas 
Cc: Daniel Vetter 
Cc: Dave Airlie 
Cc: Hans de Goede 
Cc: Ilpo Järvinen 
Cc: Jaroslav Kysela 
Cc: Lucas De Marchi 
Cc: Takashi Iwai 
Cc: Tomas Winkler 

Jani Nikula (10):
  drm/i915: use system include for drm headers
  drm: move intel-gtt.h under include/drm/intel
  drm: move i915_gsc_proxy_mei_interface.h under include/drm/intel
  drm: move i915_component.h under include/drm/intel
  drm: move intel_lpe_audio.h under include/drm/intel
  drm: move i915_drm.h under include/drm/intel
  drm: move i915_pxp_tee_interface.h under include/drm/intel
  drm: move i915_pciids.h under include/drm/intel
  drm: move xe_pciids.h under include/drm/intel
  drm: move i915_hdcp_interface.h under include/drm/intel

 arch/x86/kernel/early-quirks.c | 4 ++--
 drivers/char/agp/intel-agp.c   | 2 +-
 drivers/char/agp/intel-gtt.c   | 2 +-
 drivers/gpu/drm/i915/display/intel_audio.c | 2 +-
 drivers/gpu/drm/i915/display/intel_display_device.c| 2 +-
 drivers/gpu/drm/i915/display/intel_display_types.h | 2 +-
 drivers/gpu/drm/i915/display/intel_hdcp.c  | 2 +-
 drivers/gpu/drm/i915/display/intel_hdcp_gsc.c  | 2 +-
 drivers/gpu/drm/i915/display/intel_hdcp_gsc_message.c  | 2 +-
 drivers/gpu/drm/i915/display/intel_hdmi.c  | 2 +-
 drivers/gpu/drm/i915/display/intel_lpe_audio.c | 2 +-
 drivers/gpu/drm/i915/gem/i915_gem_stolen.c | 2 +-
 drivers/gpu/drm/i915/gt/intel_ggtt.c   | 4 ++--
 drivers/gpu/drm/i915/gt/intel_ggtt_gmch.c  | 2 +-
 drivers/gpu/drm/i915/gt/intel_gt.c | 2 +-
 drivers/gpu/drm/i915/gt/intel_rps.c| 2 +-
 drivers/gpu/drm/i915/gt/uc/intel_gsc_proxy.c   | 4 ++--
 drivers/gpu/drm/i915/i915_pci.c| 2 +-
 drivers/gpu/drm/i915/intel_device_info.c   | 2 +-
 drivers/gpu/drm/i915/pxp/intel_pxp_tee.c   | 4 ++--
 drivers/gpu/drm/i915/soc/intel_gmch.c  | 2 +-
 drivers/gpu/drm/xe/display/xe_hdcp_gsc.c   | 2 +-
 drivers/gpu/drm/xe/xe_ggtt.c   | 2 +-
 drivers/gpu/drm/xe/xe_gsc_proxy.c  | 4 ++--
 drivers/gpu/drm/xe/xe_pci.c| 2 +-
 drivers/misc/mei/gsc_proxy/mei_gsc_proxy.c | 4 ++--
 drivers/misc/mei/hdcp/mei_hdcp.c   | 4 ++--
 drivers/misc/mei/pxp/mei_pxp.c | 4 ++--
 drivers/platform/x86/intel_ips.c   | 2 +-
 include/drm/{ => intel}/i915_component.h   | 2 +-
 include/drm/{ => intel}/i915_drm.h | 0
 include/drm/{ => intel}/i915_gsc_proxy_mei_interface.h | 0
 include/drm/{ => intel}/i915_hdcp_interface.h  | 0
 include/drm/{ => intel}/i915_pciids.h  | 0
 include/drm/{ => intel}/i915_pxp_tee_interface.h   | 0
 include/drm/{ => intel}/intel-gtt.h| 0
 include/drm/{ => intel}/intel_lpe_audio.h  | 0
 include/drm/{ => intel}/xe_pciids.h| 0
 include/sound/hdaudio.h| 2 +-
 sound/x86/intel_hdmi_audio.c   | 2 +-
 40 files changed, 40 insertions(+), 40 deletions(-)
 rename include/drm/{ => intel}/i915_component.h (98%)
 rename include/drm/{ => intel}/i915_drm.h (100%)
 rename include/drm/{ => intel}/i915_gsc_proxy_mei_interface.h (100%)
 rename include/drm/{ => intel}/i915_hdcp_interface.h (100%)
 rename include/drm/{ => intel}/i915_pciids.h (100%)
 rename include/drm/{ => intel}/i915_pxp_tee_interface.h (100%)
 rename include/drm/{ => intel}/intel-gtt.h (100%)
 rename include/drm/{ => intel}/intel_lpe_audio.h (100%)
 rename include/drm/{ => intel}/xe_pciids.h (100%)

-- 
2.39.2



✗ Fi.CI.BAT: failure for drm/i915: Implement Audio WA_14020863754

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

Series: drm/i915: Implement Audio WA_14020863754
URL   : https://patchwork.freedesktop.org/series/132255/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_14552 -> Patchwork_132255v1


Summary
---

  **FAILURE**

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

Participating hosts (37 -> 36)
--

  Additional (2): bat-kbl-2 fi-rkl-11600 
  Missing(3): bat-dg2-11 fi-elk-e7500 bat-arls-3 

Possible new issues
---

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

### IGT changes ###

 Possible regressions 

  * igt@i915_module_load@load:
- fi-rkl-11600:   NOTRUN -> [INCOMPLETE][1]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v1/fi-rkl-11600/igt@i915_module_l...@load.html
- fi-apl-guc: [PASS][2] -> [INCOMPLETE][3]
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/fi-apl-guc/igt@i915_module_l...@load.html
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v1/fi-apl-guc/igt@i915_module_l...@load.html
- bat-dg1-7:  [PASS][4] -> [ABORT][5]
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/bat-dg1-7/igt@i915_module_l...@load.html
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v1/bat-dg1-7/igt@i915_module_l...@load.html
- fi-glk-j4005:   [PASS][6] -> [INCOMPLETE][7]
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/fi-glk-j4005/igt@i915_module_l...@load.html
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v1/fi-glk-j4005/igt@i915_module_l...@load.html
- fi-kbl-7567u:   [PASS][8] -> [INCOMPLETE][9]
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/fi-kbl-7567u/igt@i915_module_l...@load.html
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v1/fi-kbl-7567u/igt@i915_module_l...@load.html
- fi-tgl-1115g4:  [PASS][10] -> [INCOMPLETE][11]
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/fi-tgl-1115g4/igt@i915_module_l...@load.html
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v1/fi-tgl-1115g4/igt@i915_module_l...@load.html
- fi-cfl-guc: [PASS][12] -> [INCOMPLETE][13]
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/fi-cfl-guc/igt@i915_module_l...@load.html
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v1/fi-cfl-guc/igt@i915_module_l...@load.html
- bat-adls-6: [PASS][14] -> [ABORT][15]
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/bat-adls-6/igt@i915_module_l...@load.html
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v1/bat-adls-6/igt@i915_module_l...@load.html

  * igt@i915_selftest@live@gem_contexts:
- bat-arls-2: [PASS][16] -> [ABORT][17]
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/bat-arls-2/igt@i915_selftest@live@gem_contexts.html
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v1/bat-arls-2/igt@i915_selftest@live@gem_contexts.html

  * igt@kms_hdmi_inject@inject-audio:
- fi-cfl-8700k:   [PASS][18] -> [INCOMPLETE][19]
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/fi-cfl-8700k/igt@kms_hdmi_inj...@inject-audio.html
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v1/fi-cfl-8700k/igt@kms_hdmi_inj...@inject-audio.html
- bat-kbl-2:  NOTRUN -> [INCOMPLETE][20]
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v1/bat-kbl-2/igt@kms_hdmi_inj...@inject-audio.html
- bat-jsl-3:  [PASS][21] -> [INCOMPLETE][22]
   [21]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/bat-jsl-3/igt@kms_hdmi_inj...@inject-audio.html
   [22]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v1/bat-jsl-3/igt@kms_hdmi_inj...@inject-audio.html
- fi-kbl-guc: [PASS][23] -> [ABORT][24]
   [23]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/fi-kbl-guc/igt@kms_hdmi_inj...@inject-audio.html
   [24]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v1/fi-kbl-guc/igt@kms_hdmi_inj...@inject-audio.html
- bat-jsl-1:  [PASS][25] -> [INCOMPLETE][26]
   [25]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/bat-jsl-1/igt@kms_hdmi_inj...@inject-audio.html
   [26]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132255v1/bat-jsl-1/igt@kms_hdmi_inj...@inject-audio.html

  
Known issues


  Here are the changes found in Patchwork_132255v1 that come 

[PATCH] drm/i915: Implement Audio WA_14020863754

2024-04-10 Thread Uma Shankar
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)

Signed-off-by: Uma Shankar 
---
 drivers/gpu/drm/i915/display/intel_audio.c  | 12 
 drivers/gpu/drm/i915/display/intel_audio_regs.h |  3 +++
 2 files changed, 15 insertions(+)

diff --git a/drivers/gpu/drm/i915/display/intel_audio.c 
b/drivers/gpu/drm/i915/display/intel_audio.c
index 07e0c73204f3..a8e3e515aaa0 100644
--- a/drivers/gpu/drm/i915/display/intel_audio.c
+++ b/drivers/gpu/drm/i915/display/intel_audio.c
@@ -512,6 +512,12 @@ 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
+*/
+   intel_de_rmw(i915, AUD_CHICKENBIT_REG3, CHICKEN3_SPARE18, 0);
+
mutex_unlock(>display.audio.mutex);
 }
 
@@ -637,6 +643,12 @@ 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
+*/
+   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



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

2024-04-10 Thread Patchwork
== 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

  
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-11600/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-11600/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-11600/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-8109u/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-11600/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-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]: 

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

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

Series: drm/edid & drm/i915: vendor and product id logging improvements (rev3)
URL   : https://patchwork.freedesktop.org/series/131414/
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 

Re: [PATCH v4] drm/i915/panelreplay: Panel replay workaround with VRR

2024-04-10 Thread Hogander, Jouni
On Wed, 2024-04-10 at 07:35 +, Manna, Animesh wrote:
> 
> 
> > -Original Message-
> > From: Hogander, Jouni 
> > Sent: Wednesday, April 10, 2024 12:54 PM
> > To: Manna, Animesh ; intel-
> > g...@lists.freedesktop.org
> > Cc: ville.syrj...@linux.intel.com; Murthy, Arun R
> > 
> > Subject: Re: [PATCH v4] drm/i915/panelreplay: Panel replay
> > workaround with
> > VRR
> > 
> > On Thu, 2024-03-28 at 10:13 +0530, Animesh Manna wrote:
> > > Panel Replay VSC SDP not getting sent when VRR is enabled and W1
> > > and
> > > W2 are 0. So Program Set Context Latency in
> > TRANS_SET_CONTEXT_LATENCY
> > > register to at least a value of 1.
> > > 
> > > HSD: 14015406119
> > > 
> > > v1: Initial version.
> > > v2: Update timings stored in adjusted_mode struct. [Ville]
> > > v3: Add WA in compute_config(). [Ville]
> > > v4:
> > > - Add DISPLAY_VER() check and improve code comment. [Rodrigo]
> > > - Introduce centralized intel_crtc_vblank_delay(). [Ville]
> > > 
> > > Signed-off-by: Animesh Manna 
> > > ---
> > >  drivers/gpu/drm/i915/display/intel_display.c | 17
> > > +
> > >  drivers/gpu/drm/i915/display/intel_display.h |  1 +
> > >  drivers/gpu/drm/i915/display/intel_psr.c |  4 
> > >  3 files changed, 22 insertions(+)
> > > 
> > > diff --git a/drivers/gpu/drm/i915/display/intel_display.c
> > > b/drivers/gpu/drm/i915/display/intel_display.c
> > > index 00ac65a14029..7f5c42a14196 100644
> > > --- a/drivers/gpu/drm/i915/display/intel_display.c
> > > +++ b/drivers/gpu/drm/i915/display/intel_display.c
> > > @@ -3840,6 +3840,23 @@ bool intel_crtc_get_pipe_config(struct
> > > intel_crtc_state *crtc_state)
> > > return true;
> > >  }
> > > 
> > > +void intel_crtc_vblank_delay(struct intel_crtc_state
> > > *crtc_state) {
> > > +   struct drm_display_mode *adjusted_mode = _state-
> > > > hw.adjusted_mode;
> > > +
> > > +   /*
> > > +    * wa_14015401596 for display versions >= 13.
> > > +    * Program Set Context Latency in
> > > TRANS_SET_CONTEXT_LATENCY
> > > register
> > > +    * to at least a value of 1 when Panel Replay is enabled
> > > with
> > > VRR.
> > > +    * Value for TRANS_SET_CONTEXT_LATENCY is calculated by
> > > substracting
> > > +    * crtc_vdisplay from crtc_vblank_start, so incrementing
> > > crtc_vblank_start
> > > +    * by 1 if both are equal.
> > > +    */
> > > +   if (crtc_state->vrr.enable && crtc_state-
> > > >has_panel_replay &&
> > > +   adjusted_mode->crtc_vblank_start == adjusted_mode-
> > > > crtc_vdisplay)
> > > +   adjusted_mode->crtc_vblank_start += 1; }
> > > +
> > 
> > Do you have some specific reason to have this in intel_display.c?
> > How about
> > move it to intel_psr.c? You could also use more descriptive name.
> > Current name somehow made me think it is some generic function to
> > calculate vblank delay. It is actually only for this workaround.
> 
> Thanks for review.
> As per feedback from rev3 I have added in intel_display.c. Going
> forward all vbalnk related adjustment will be added into this
> function.
> https://patchwork.freedesktop.org/series/129632/#rev3
> I can move to intel_psr.c if the current version is not acceptable.

Ok, thank you for providing the context. If it's intended use is
generic then I think calling it shouldn't happen from
intel_psr_compute_config. Maybe Ville can comment where it should be
called from.

BR,

Jouni Högander

> 
> Regards,
> Animesh
> 
> > 
> > BR,
> > 
> > Jouni Högander
> > 
> > 
> > >  int intel_dotclock_calculate(int link_freq,
> > >  const struct intel_link_m_n *m_n)
> > >  {
> > > diff --git a/drivers/gpu/drm/i915/display/intel_display.h
> > > b/drivers/gpu/drm/i915/display/intel_display.h
> > > index f4a0773f0fca..23315eced41e 100644
> > > --- a/drivers/gpu/drm/i915/display/intel_display.h
> > > +++ b/drivers/gpu/drm/i915/display/intel_display.h
> > > @@ -413,6 +413,7 @@ bool intel_crtc_is_bigjoiner_master(const
> > > struct
> > > intel_crtc_state *crtc_state);
> > >  u8 intel_crtc_bigjoiner_slave_pipes(const struct
> > > intel_crtc_state
> > > *crtc_state);
> > >  struct intel_crtc *intel_master_crtc(const struct
> > > intel_crtc_state
> > > *crtc_state);
> > >  bool intel_crtc_get_pipe_config(struct intel_crtc_state
> > > *crtc_state);
> > > +void intel_crtc_vblank_delay(struct intel_crtc_state
> > > *crtc_state);
> > >  bool intel_pipe_config_compare(const struct intel_crtc_state
> > > *current_config,
> > >    const struct intel_crtc_state
> > > *pipe_config,
> > >    bool fastset); diff --git
> > > a/drivers/gpu/drm/i915/display/intel_psr.c
> > > b/drivers/gpu/drm/i915/display/intel_psr.c
> > > index 72cadad09db5..fccef5434e9c 100644
> > > --- a/drivers/gpu/drm/i915/display/intel_psr.c
> > > +++ b/drivers/gpu/drm/i915/display/intel_psr.c
> > > @@ -1430,6 +1430,10 @@ void intel_psr_compute_config(struct
> > > intel_dp
> > > *intel_dp,
> > >   

RE: [PATCH v4] drm/i915/panelreplay: Panel replay workaround with VRR

2024-04-10 Thread Manna, Animesh


> -Original Message-
> From: Hogander, Jouni 
> Sent: Wednesday, April 10, 2024 12:54 PM
> To: Manna, Animesh ; intel-
> g...@lists.freedesktop.org
> Cc: ville.syrj...@linux.intel.com; Murthy, Arun R 
> Subject: Re: [PATCH v4] drm/i915/panelreplay: Panel replay workaround with
> VRR
> 
> On Thu, 2024-03-28 at 10:13 +0530, Animesh Manna wrote:
> > Panel Replay VSC SDP not getting sent when VRR is enabled and W1 and
> > W2 are 0. So Program Set Context Latency in
> TRANS_SET_CONTEXT_LATENCY
> > register to at least a value of 1.
> >
> > HSD: 14015406119
> >
> > v1: Initial version.
> > v2: Update timings stored in adjusted_mode struct. [Ville]
> > v3: Add WA in compute_config(). [Ville]
> > v4:
> > - Add DISPLAY_VER() check and improve code comment. [Rodrigo]
> > - Introduce centralized intel_crtc_vblank_delay(). [Ville]
> >
> > Signed-off-by: Animesh Manna 
> > ---
> >  drivers/gpu/drm/i915/display/intel_display.c | 17 +
> >  drivers/gpu/drm/i915/display/intel_display.h |  1 +
> >  drivers/gpu/drm/i915/display/intel_psr.c |  4 
> >  3 files changed, 22 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/i915/display/intel_display.c
> > b/drivers/gpu/drm/i915/display/intel_display.c
> > index 00ac65a14029..7f5c42a14196 100644
> > --- a/drivers/gpu/drm/i915/display/intel_display.c
> > +++ b/drivers/gpu/drm/i915/display/intel_display.c
> > @@ -3840,6 +3840,23 @@ bool intel_crtc_get_pipe_config(struct
> > intel_crtc_state *crtc_state)
> > return true;
> >  }
> >
> > +void intel_crtc_vblank_delay(struct intel_crtc_state *crtc_state) {
> > +   struct drm_display_mode *adjusted_mode = _state-
> > >hw.adjusted_mode;
> > +
> > +   /*
> > +    * wa_14015401596 for display versions >= 13.
> > +    * Program Set Context Latency in TRANS_SET_CONTEXT_LATENCY
> > register
> > +    * to at least a value of 1 when Panel Replay is enabled with
> > VRR.
> > +    * Value for TRANS_SET_CONTEXT_LATENCY is calculated by
> > substracting
> > +    * crtc_vdisplay from crtc_vblank_start, so incrementing
> > crtc_vblank_start
> > +    * by 1 if both are equal.
> > +    */
> > +   if (crtc_state->vrr.enable && crtc_state->has_panel_replay &&
> > +   adjusted_mode->crtc_vblank_start == adjusted_mode-
> > >crtc_vdisplay)
> > +   adjusted_mode->crtc_vblank_start += 1; }
> > +
> 
> Do you have some specific reason to have this in intel_display.c? How about
> move it to intel_psr.c? You could also use more descriptive name.
> Current name somehow made me think it is some generic function to
> calculate vblank delay. It is actually only for this workaround.

Thanks for review.
As per feedback from rev3 I have added in intel_display.c. Going forward all 
vbalnk related adjustment will be added into this function.
https://patchwork.freedesktop.org/series/129632/#rev3
I can move to intel_psr.c if the current version is not acceptable.

Regards,
Animesh

> 
> BR,
> 
> Jouni Högander
> 
> 
> >  int intel_dotclock_calculate(int link_freq,
> >  const struct intel_link_m_n *m_n)
> >  {
> > diff --git a/drivers/gpu/drm/i915/display/intel_display.h
> > b/drivers/gpu/drm/i915/display/intel_display.h
> > index f4a0773f0fca..23315eced41e 100644
> > --- a/drivers/gpu/drm/i915/display/intel_display.h
> > +++ b/drivers/gpu/drm/i915/display/intel_display.h
> > @@ -413,6 +413,7 @@ bool intel_crtc_is_bigjoiner_master(const struct
> > intel_crtc_state *crtc_state);
> >  u8 intel_crtc_bigjoiner_slave_pipes(const struct intel_crtc_state
> > *crtc_state);
> >  struct intel_crtc *intel_master_crtc(const struct intel_crtc_state
> > *crtc_state);
> >  bool intel_crtc_get_pipe_config(struct intel_crtc_state *crtc_state);
> > +void intel_crtc_vblank_delay(struct intel_crtc_state *crtc_state);
> >  bool intel_pipe_config_compare(const struct intel_crtc_state
> > *current_config,
> >    const struct intel_crtc_state
> > *pipe_config,
> >    bool fastset); diff --git
> > a/drivers/gpu/drm/i915/display/intel_psr.c
> > b/drivers/gpu/drm/i915/display/intel_psr.c
> > index 72cadad09db5..fccef5434e9c 100644
> > --- a/drivers/gpu/drm/i915/display/intel_psr.c
> > +++ b/drivers/gpu/drm/i915/display/intel_psr.c
> > @@ -1430,6 +1430,10 @@ void intel_psr_compute_config(struct intel_dp
> > *intel_dp,
> > if (!(crtc_state->has_panel_replay || crtc_state->has_psr))
> > return;
> >
> > +   /* wa_14015401596: display versions 13, 14 */
> > +   if (DISPLAY_VER(dev_priv) >= 13)
> > +   intel_crtc_vblank_delay(crtc_state);
> > +
> > crtc_state->has_psr2 = intel_psr2_config_valid(intel_dp,
> > crtc_state);
> >  }
> >



Re: [PATCH v4] drm/i915/panelreplay: Panel replay workaround with VRR

2024-04-10 Thread Hogander, Jouni
On Thu, 2024-03-28 at 10:13 +0530, Animesh Manna wrote:
> Panel Replay VSC SDP not getting sent when VRR is enabled
> and W1 and W2 are 0. So Program Set Context Latency in
> TRANS_SET_CONTEXT_LATENCY register to at least a value of 1.
> 
> HSD: 14015406119
> 
> v1: Initial version.
> v2: Update timings stored in adjusted_mode struct. [Ville]
> v3: Add WA in compute_config(). [Ville]
> v4:
> - Add DISPLAY_VER() check and improve code comment. [Rodrigo]
> - Introduce centralized intel_crtc_vblank_delay(). [Ville]
> 
> Signed-off-by: Animesh Manna 
> ---
>  drivers/gpu/drm/i915/display/intel_display.c | 17 +
>  drivers/gpu/drm/i915/display/intel_display.h |  1 +
>  drivers/gpu/drm/i915/display/intel_psr.c |  4 
>  3 files changed, 22 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c
> b/drivers/gpu/drm/i915/display/intel_display.c
> index 00ac65a14029..7f5c42a14196 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -3840,6 +3840,23 @@ bool intel_crtc_get_pipe_config(struct
> intel_crtc_state *crtc_state)
> return true;
>  }
>  
> +void intel_crtc_vblank_delay(struct intel_crtc_state *crtc_state)
> +{
> +   struct drm_display_mode *adjusted_mode = _state-
> >hw.adjusted_mode;
> +
> +   /*
> +    * wa_14015401596 for display versions >= 13.
> +    * Program Set Context Latency in TRANS_SET_CONTEXT_LATENCY
> register
> +    * to at least a value of 1 when Panel Replay is enabled with
> VRR.
> +    * Value for TRANS_SET_CONTEXT_LATENCY is calculated by
> substracting
> +    * crtc_vdisplay from crtc_vblank_start, so incrementing
> crtc_vblank_start
> +    * by 1 if both are equal.
> +    */
> +   if (crtc_state->vrr.enable && crtc_state->has_panel_replay &&
> +   adjusted_mode->crtc_vblank_start == adjusted_mode-
> >crtc_vdisplay)
> +   adjusted_mode->crtc_vblank_start += 1;
> +}
> +

Do you have some specific reason to have this in intel_display.c? How
about move it to intel_psr.c? You could also use more descriptive name.
Current name somehow made me think it is some generic function to
calculate vblank delay. It is actually only for this workaround.

BR,

Jouni Högander
 

>  int intel_dotclock_calculate(int link_freq,
>  const struct intel_link_m_n *m_n)
>  {
> diff --git a/drivers/gpu/drm/i915/display/intel_display.h
> b/drivers/gpu/drm/i915/display/intel_display.h
> index f4a0773f0fca..23315eced41e 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.h
> +++ b/drivers/gpu/drm/i915/display/intel_display.h
> @@ -413,6 +413,7 @@ bool intel_crtc_is_bigjoiner_master(const struct
> intel_crtc_state *crtc_state);
>  u8 intel_crtc_bigjoiner_slave_pipes(const struct intel_crtc_state
> *crtc_state);
>  struct intel_crtc *intel_master_crtc(const struct intel_crtc_state
> *crtc_state);
>  bool intel_crtc_get_pipe_config(struct intel_crtc_state
> *crtc_state);
> +void intel_crtc_vblank_delay(struct intel_crtc_state *crtc_state);
>  bool intel_pipe_config_compare(const struct intel_crtc_state
> *current_config,
>    const struct intel_crtc_state
> *pipe_config,
>    bool fastset);
> diff --git a/drivers/gpu/drm/i915/display/intel_psr.c
> b/drivers/gpu/drm/i915/display/intel_psr.c
> index 72cadad09db5..fccef5434e9c 100644
> --- a/drivers/gpu/drm/i915/display/intel_psr.c
> +++ b/drivers/gpu/drm/i915/display/intel_psr.c
> @@ -1430,6 +1430,10 @@ void intel_psr_compute_config(struct intel_dp
> *intel_dp,
> if (!(crtc_state->has_panel_replay || crtc_state->has_psr))
> return;
>  
> +   /* wa_14015401596: display versions 13, 14 */
> +   if (DISPLAY_VER(dev_priv) >= 13)
> +   intel_crtc_vblank_delay(crtc_state);
> +
> crtc_state->has_psr2 = intel_psr2_config_valid(intel_dp,
> crtc_state);
>  }
>  



✗ Fi.CI.BAT: failure for drm/i915: Don't enable hwmon for selftests (rev3)

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

Series: drm/i915: Don't enable hwmon for selftests (rev3)
URL   : https://patchwork.freedesktop.org/series/132243/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_14552 -> Patchwork_132243v3


Summary
---

  **FAILURE**

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

Participating hosts (37 -> 35)
--

  Additional (3): bat-kbl-2 fi-rkl-11600 fi-cfl-8109u 
  Missing(5): bat-dg1-7 fi-bsw-n3050 fi-glk-j4005 fi-kbl-8809g bat-dg2-11 

Possible new issues
---

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

### IGT changes ###

 Possible regressions 

  * igt@gem_exec_gttfill@basic:
- bat-arls-2: [PASS][1] -> [INCOMPLETE][2]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/bat-arls-2/igt@gem_exec_gttf...@basic.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132243v3/bat-arls-2/igt@gem_exec_gttf...@basic.html

  * igt@gem_exec_parallel@engines@fds:
- bat-mtlp-8: [PASS][3] -> [INCOMPLETE][4]
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/bat-mtlp-8/igt@gem_exec_parallel@engi...@fds.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132243v3/bat-mtlp-8/igt@gem_exec_parallel@engi...@fds.html

  
Known issues


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

### IGT changes ###

 Issues hit 

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

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

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

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

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

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

  * igt@i915_selftest@live@hangcheck:
- bat-adln-1: [PASS][13] -> [ABORT][14] ([i915#10021])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/bat-adln-1/igt@i915_selftest@l...@hangcheck.html
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132243v3/bat-adln-1/igt@i915_selftest@l...@hangcheck.html

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

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

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

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

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

2024-04-10 Thread Nilawar, Badal




On 10-04-2024 11:35, 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.

v2: Move the logic inside i915_hwmon.c
v3: Move is_i915_selftest definition to i915_selftest.h (Badal)

Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/10366
Signed-off-by: Ashutosh Dixit 
---
  drivers/gpu/drm/i915/i915_hwmon.c|  3 ++-
  drivers/gpu/drm/i915/i915_selftest.h | 10 ++
  2 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/i915_hwmon.c 
b/drivers/gpu/drm/i915/i915_hwmon.c
index 8c3f443c8347..cf1689333ebf 100644
--- a/drivers/gpu/drm/i915/i915_hwmon.c
+++ b/drivers/gpu/drm/i915/i915_hwmon.c
@@ -10,6 +10,7 @@
  #include "i915_drv.h"
  #include "i915_hwmon.h"
  #include "i915_reg.h"
+#include "i915_selftest.h"
  #include "intel_mchbar_regs.h"
  #include "intel_pcode.h"
  #include "gt/intel_gt.h"
@@ -789,7 +790,7 @@ void i915_hwmon_register(struct drm_i915_private *i915)
int i;
  
  	/* hwmon is available only for dGfx */

-   if (!IS_DGFX(i915))
+   if (!IS_DGFX(i915) || is_i915_selftest())
return;
  
  	hwmon = devm_kzalloc(dev, sizeof(*hwmon), GFP_KERNEL);

diff --git a/drivers/gpu/drm/i915/i915_selftest.h 
b/drivers/gpu/drm/i915/i915_selftest.h
index bdf3e22c0a34..19e5076823a7 100644
--- a/drivers/gpu/drm/i915/i915_selftest.h
+++ b/drivers/gpu/drm/i915/i915_selftest.h
@@ -111,6 +111,11 @@ int __i915_subtests(const char *caller,
  #define I915_SELFTEST_ONLY(x) unlikely(x)
  #define I915_SELFTEST_EXPORT
  
+static inline bool is_i915_selftest(void)

+{
+   return i915_selftest.live || i915_selftest.perf || i915_selftest.mock;
+}
+
  #else /* !IS_ENABLED(CONFIG_DRM_I915_SELFTEST) */
  
  static inline int i915_mock_selftests(void) { return 0; }

@@ -121,6 +126,11 @@ static inline int i915_perf_selftests(struct pci_dev 
*pdev) { return 0; }
  #define I915_SELFTEST_ONLY(x) 0
  #define I915_SELFTEST_EXPORT static
  
+static inline bool is_i915_selftest(void)

+{
+   return false;
+}
+

Looks good to me.
Reviewed-by: Badal Nilawar 

  #endif
  
  /* Using the i915_selftest_ prefix becomes a little unwieldy with the helpers.


✗ Fi.CI.SPARSE: warning for drm/i915: Don't enable hwmon for selftests (rev3)

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

Series: drm/i915: Don't enable hwmon for selftests (rev3)
URL   : https://patchwork.freedesktop.org/series/132243/
State : warning

== Summary ==

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




✓ Fi.CI.BAT: success for drm/i915/psr: Use crtc_state->port_clock instead of intel_dp->link_rate (rev2)

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

Series: drm/i915/psr: Use crtc_state->port_clock instead of intel_dp->link_rate 
(rev2)
URL   : https://patchwork.freedesktop.org/series/132198/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_14552 -> Patchwork_132198v2


Summary
---

  **SUCCESS**

  No regressions found.

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

Participating hosts (37 -> 29)
--

  Additional (1): fi-rkl-11600 
  Missing(9): fi-kbl-7567u bat-dg1-7 fi-apl-guc fi-glk-j4005 fi-kbl-8809g 
bat-atsm-1 fi-elk-e7500 bat-dg2-11 bat-jsl-1 

Known issues


  Here are the changes found in Patchwork_132198v2 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_132198v2/fi-rkl-11600/igt@debugfs_t...@basic-hwmon.html

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

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

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

  * igt@i915_selftest@live@guc_hang:
- bat-dg2-14: [PASS][5] -> [ABORT][6] ([i915#10366])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/bat-dg2-14/igt@i915_selftest@live@guc_hang.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132198v2/bat-dg2-14/igt@i915_selftest@live@guc_hang.html

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

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

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

  * igt@kms_pm_backlight@basic-brightness:
- fi-rkl-11600:   NOTRUN -> [SKIP][10] ([i915#5354])
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132198v2/fi-rkl-11600/igt@kms_pm_backli...@basic-brightness.html

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

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

  * igt@prime_vgem@basic-read:
- fi-rkl-11600:   NOTRUN -> [SKIP][13] ([i915#3291] / [i915#3708]) +2 
other tests skip
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132198v2/fi-rkl-11600/igt@prime_v...@basic-read.html

  
 Possible fixes 

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

  * igt@i915_selftest@live@gt_contexts:
- bat-dg2-8:  [ABORT][16] ([i915#10366]) -> [PASS][17]
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_14552/bat-dg2-8/igt@i915_selftest@live@gt_contexts.html
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132198v2/bat-dg2-8/igt@i915_selftest@live@gt_contexts.html

  
  [i915#10366]: https://gitlab.freedesktop.org/drm/intel/issues/10366
  [i915#10378]: https://gitlab.freedesktop.org/drm/intel/issues/10378
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
  [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3708]: 

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

2024-04-10 Thread Dixit, Ashutosh
On Tue, 09 Apr 2024 22:17:38 -0700, Nilawar, Badal wrote:
>
> > +#if IS_ENABLED(CONFIG_DRM_I915_SELFTEST)
> > +   return i915_selftest.live || i915_selftest.perf || i915_selftest.mock;
> > +#else
> > +   return false;
> > +#endif
> > +}
> I think you moved this function here as this is only used in
> i915_hwmon.c. In case if somewhere else this function is needed then I
> suggest to move this function to i915_selftest.h as inline function.

Thanks, done in v3.



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

2024-04-10 Thread Ashutosh Dixit
There are no hwmon selftests so there is no need to enable hwmon for
selftests. So enable hwmon only for real driver load.

v2: Move the logic inside i915_hwmon.c
v3: Move is_i915_selftest definition to i915_selftest.h (Badal)

Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/10366
Signed-off-by: Ashutosh Dixit 
---
 drivers/gpu/drm/i915/i915_hwmon.c|  3 ++-
 drivers/gpu/drm/i915/i915_selftest.h | 10 ++
 2 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/i915_hwmon.c 
b/drivers/gpu/drm/i915/i915_hwmon.c
index 8c3f443c8347..cf1689333ebf 100644
--- a/drivers/gpu/drm/i915/i915_hwmon.c
+++ b/drivers/gpu/drm/i915/i915_hwmon.c
@@ -10,6 +10,7 @@
 #include "i915_drv.h"
 #include "i915_hwmon.h"
 #include "i915_reg.h"
+#include "i915_selftest.h"
 #include "intel_mchbar_regs.h"
 #include "intel_pcode.h"
 #include "gt/intel_gt.h"
@@ -789,7 +790,7 @@ void i915_hwmon_register(struct drm_i915_private *i915)
int i;
 
/* hwmon is available only for dGfx */
-   if (!IS_DGFX(i915))
+   if (!IS_DGFX(i915) || is_i915_selftest())
return;
 
hwmon = devm_kzalloc(dev, sizeof(*hwmon), GFP_KERNEL);
diff --git a/drivers/gpu/drm/i915/i915_selftest.h 
b/drivers/gpu/drm/i915/i915_selftest.h
index bdf3e22c0a34..19e5076823a7 100644
--- a/drivers/gpu/drm/i915/i915_selftest.h
+++ b/drivers/gpu/drm/i915/i915_selftest.h
@@ -111,6 +111,11 @@ int __i915_subtests(const char *caller,
 #define I915_SELFTEST_ONLY(x) unlikely(x)
 #define I915_SELFTEST_EXPORT
 
+static inline bool is_i915_selftest(void)
+{
+   return i915_selftest.live || i915_selftest.perf || i915_selftest.mock;
+}
+
 #else /* !IS_ENABLED(CONFIG_DRM_I915_SELFTEST) */
 
 static inline int i915_mock_selftests(void) { return 0; }
@@ -121,6 +126,11 @@ static inline int i915_perf_selftests(struct pci_dev 
*pdev) { return 0; }
 #define I915_SELFTEST_ONLY(x) 0
 #define I915_SELFTEST_EXPORT static
 
+static inline bool is_i915_selftest(void)
+{
+   return false;
+}
+
 #endif
 
 /* Using the i915_selftest_ prefix becomes a little unwieldy with the helpers.
-- 
2.41.0