Re: [Intel-gfx] [PULL] drm-misc-fixes

2021-02-24 Thread Thomas Zimmermann

Hi

Am 25.02.21 um 02:55 schrieb Dave Airlie:

On Wed, 24 Feb 2021 at 20:27, Thomas Zimmermann  wrote:


Hi Dave and Daniel,

here's this week's PR for drm-misc-fixes. One of the patches is a memory
leak; the rest is for hardware issues.



This is based on 5.11 and I'm not currently in the market for a
backmege now before rc1 so can you just top this up next week?


I can, but I think Maxime will take over after -rc1.

Best regards
Thomas



Though maybe the ttm fix should be fast tracked, will contemplate it.

Dave.


Best regards
Thomas

drm-misc-fixes-2021-02-24:
  * drm/panel: kd35t133: Work with non-continuous DSI clock
  * drm/rockchip: Require YTR modifier for AFBC
  * drm/ttm: Fix a memory leak in error handling
The following changes since commit f40ddce88593482919761f74910f42f4b84c004b:

   Linux 5.11 (2021-02-14 14:32:24 -0800)

are available in the Git repository at:

   git://anongit.freedesktop.org/drm/drm-misc tags/drm-misc-fixes-2021-02-24

for you to fetch changes up to 54dab3a718f7094532daf7d25cd14121a0e00e34:

   drm/panel: kd35t133: allow using non-continuous dsi clock (2021-02-23 
22:44:58 +0100)


  * drm/panel: kd35t133: Work with non-continuous DSI clock
  * drm/rockchip: Require YTR modifier for AFBC
  * drm/ttm: Fix a memory leak in error handling


Alyssa Rosenzweig (1):
   drm/rockchip: Require the YTR modifier for AFBC

Heiko Stuebner (1):
   drm/panel: kd35t133: allow using non-continuous dsi clock

xinhui pan (1):
   drm/ttm: Fix a memory leak

  drivers/gpu/drm/panel/panel-elida-kd35t133.c |  3 ++-
  drivers/gpu/drm/rockchip/rockchip_drm_vop.h  | 11 +++
  drivers/gpu/drm/ttm/ttm_bo.c |  9 ++---
  3 files changed, 19 insertions(+), 4 deletions(-)

--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Felix Imendörffer

___
dri-devel mailing list
dri-de...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel



--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Felix Imendörffer



OpenPGP_signature
Description: OpenPGP digital signature
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PULL] drm-misc-fixes

2021-02-24 Thread Dave Airlie
On Wed, 24 Feb 2021 at 20:27, Thomas Zimmermann  wrote:
>
> Hi Dave and Daniel,
>
> here's this week's PR for drm-misc-fixes. One of the patches is a memory
> leak; the rest is for hardware issues.
>

This is based on 5.11 and I'm not currently in the market for a
backmege now before rc1 so can you just top this up next week?

Though maybe the ttm fix should be fast tracked, will contemplate it.

Dave.

> Best regards
> Thomas
>
> drm-misc-fixes-2021-02-24:
>  * drm/panel: kd35t133: Work with non-continuous DSI clock
>  * drm/rockchip: Require YTR modifier for AFBC
>  * drm/ttm: Fix a memory leak in error handling
> The following changes since commit f40ddce88593482919761f74910f42f4b84c004b:
>
>   Linux 5.11 (2021-02-14 14:32:24 -0800)
>
> are available in the Git repository at:
>
>   git://anongit.freedesktop.org/drm/drm-misc tags/drm-misc-fixes-2021-02-24
>
> for you to fetch changes up to 54dab3a718f7094532daf7d25cd14121a0e00e34:
>
>   drm/panel: kd35t133: allow using non-continuous dsi clock (2021-02-23 
> 22:44:58 +0100)
>
> 
>  * drm/panel: kd35t133: Work with non-continuous DSI clock
>  * drm/rockchip: Require YTR modifier for AFBC
>  * drm/ttm: Fix a memory leak in error handling
>
> 
> Alyssa Rosenzweig (1):
>   drm/rockchip: Require the YTR modifier for AFBC
>
> Heiko Stuebner (1):
>   drm/panel: kd35t133: allow using non-continuous dsi clock
>
> xinhui pan (1):
>   drm/ttm: Fix a memory leak
>
>  drivers/gpu/drm/panel/panel-elida-kd35t133.c |  3 ++-
>  drivers/gpu/drm/rockchip/rockchip_drm_vop.h  | 11 +++
>  drivers/gpu/drm/ttm/ttm_bo.c |  9 ++---
>  3 files changed, 19 insertions(+), 4 deletions(-)
>
> --
> Thomas Zimmermann
> Graphics Driver Developer
> SUSE Software Solutions Germany GmbH
> Maxfeldstr. 5, 90409 Nürnberg, Germany
> (HRB 36809, AG Nürnberg)
> Geschäftsführer: Felix Imendörffer
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915: Verify dma_addr in gen8_ggtt_pte_encode

2021-02-24 Thread Patchwork
== Series Details ==

Series: drm/i915: Verify dma_addr in gen8_ggtt_pte_encode
URL   : https://patchwork.freedesktop.org/series/87352/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_9798_full -> Patchwork_19727_full


Summary
---

  **FAILURE**

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

  

Possible new issues
---

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

### IGT changes ###

 Possible regressions 

  * igt@gem_exec_capture@capture@bcs0:
- shard-skl:  [PASS][1] -> [FAIL][2]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-skl9/igt@gem_exec_capture@capt...@bcs0.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19727/shard-skl3/igt@gem_exec_capture@capt...@bcs0.html

  
 Warnings 

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-onoff:
- shard-hsw:  [SKIP][3] ([fdo#109271]) -> [INCOMPLETE][4]
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-hsw4/igt@kms_frontbuffer_track...@fbcpsr-1p-primscrn-cur-indfb-onoff.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19727/shard-hsw2/igt@kms_frontbuffer_track...@fbcpsr-1p-primscrn-cur-indfb-onoff.html

  
Known issues


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

### IGT changes ###

 Issues hit 

  * igt@feature_discovery@display-2x:
- shard-iclb: NOTRUN -> [SKIP][5] ([i915#1839])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19727/shard-iclb8/igt@feature_discov...@display-2x.html

  * igt@gem_ctx_persistence@legacy-engines-mixed-process:
- shard-snb:  NOTRUN -> [SKIP][6] ([fdo#109271] / [i915#1099]) +3 
similar issues
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19727/shard-snb2/igt@gem_ctx_persiste...@legacy-engines-mixed-process.html

  * igt@gem_ctx_shared@q-in-order:
- shard-snb:  NOTRUN -> [SKIP][7] ([fdo#109271]) +331 similar issues
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19727/shard-snb6/igt@gem_ctx_sha...@q-in-order.html

  * igt@gem_exec_fair@basic-flow@rcs0:
- shard-skl:  NOTRUN -> [SKIP][8] ([fdo#109271]) +127 similar issues
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19727/shard-skl5/igt@gem_exec_fair@basic-f...@rcs0.html

  * igt@gem_exec_fair@basic-none-share@rcs0:
- shard-tglb: [PASS][9] -> [FAIL][10] ([i915#2842])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-tglb5/igt@gem_exec_fair@basic-none-sh...@rcs0.html
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19727/shard-tglb8/igt@gem_exec_fair@basic-none-sh...@rcs0.html

  * igt@gem_exec_fair@basic-none-vip@rcs0:
- shard-iclb: NOTRUN -> [FAIL][11] ([i915#2842])
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19727/shard-iclb8/igt@gem_exec_fair@basic-none-...@rcs0.html
- shard-glk:  [PASS][12] -> [FAIL][13] ([i915#2842])
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-glk5/igt@gem_exec_fair@basic-none-...@rcs0.html
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19727/shard-glk2/igt@gem_exec_fair@basic-none-...@rcs0.html

  * igt@gem_exec_fair@basic-none@vcs0:
- shard-apl:  NOTRUN -> [FAIL][14] ([i915#2842])
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19727/shard-apl7/igt@gem_exec_fair@basic-n...@vcs0.html

  * igt@gem_exec_fair@basic-pace@vecs0:
- shard-kbl:  [PASS][15] -> [SKIP][16] ([fdo#109271]) +1 similar 
issue
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-kbl1/igt@gem_exec_fair@basic-p...@vecs0.html
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19727/shard-kbl4/igt@gem_exec_fair@basic-p...@vecs0.html

  * igt@gem_exec_reloc@basic-wide-active@bcs0:
- shard-apl:  NOTRUN -> [FAIL][17] ([i915#2389]) +3 similar issues
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19727/shard-apl1/igt@gem_exec_reloc@basic-wide-act...@bcs0.html

  * igt@gem_huc_copy@huc-copy:
- shard-apl:  NOTRUN -> [SKIP][18] ([fdo#109271] / [i915#2190])
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19727/shard-apl7/igt@gem_huc_c...@huc-copy.html

  * igt@gem_userptr_blits@input-checking:
- shard-snb:  NOTRUN -> [DMESG-WARN][19] ([i915#3002])
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19727/shard-snb5/igt@gem_userptr_bl...@input-checking.html

  * igt@gem_userptr_blits@process-exit-mmap@wb:
- shard-skl:  NOTRUN -> [SKIP][20] 

Re: [Intel-gfx] [PATCH 15/30] drm/dp: Add backpointer to drm_device in drm_dp_aux

2021-02-24 Thread Lyude Paul
On Sun, 2021-02-21 at 20:21 +0200, Laurent Pinchart wrote:
> Hi Lyude,
> 
> Thank you for the patch.
> 
> On Fri, Feb 19, 2021 at 04:53:11PM -0500, Lyude Paul wrote:
> > This is something that we've wanted for a while now: the ability to
> > actually look up the respective drm_device for a given drm_dp_aux struct.
> > This will also allow us to transition over to using the drm_dbg_*() helpers
> > for debug message printing, as we'll finally have a drm_device to reference
> > for doing so.
> 
> Isn't it better to use the existing dev field ? If you have multiple DP
> outputs for one DRM device, using the DRM device name in debug messages
> won't tell which output the message corresponds to.

Well the thing is dev won't tell you that either - on most SoCs the DP AUX
adapter is it's own platform device that isn't a child of the DRM device. Also,
that's what the ability to name AUX channels is supposed to be there for.

> > Note that there is one limitation with this - because some DP AUX adapters
> > exist as platform devices which are initialized independently of their
> > respective DRM devices, one cannot rely on drm_dp_aux->drm_dev to always be
> > non-NULL until drm_dp_aux_register() has been called. We make sure to point
> > this out in the documentation for struct drm_dp_aux.
> > 
> > Signed-off-by: Lyude Paul 
> > ---
> >  drivers/gpu/drm/amd/amdgpu/atombios_dp.c | 1 +
> >  .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c  | 1 +
> >  drivers/gpu/drm/bridge/analogix/analogix-anx6345.c   | 1 +
> >  drivers/gpu/drm/bridge/analogix/analogix-anx78xx.c   | 1 +
> >  drivers/gpu/drm/bridge/analogix/analogix_dp_core.c   | 1 +
> >  drivers/gpu/drm/bridge/cadence/cdns-mhdp8546-core.c  | 1 +
> >  drivers/gpu/drm/bridge/tc358767.c    | 1 +
> >  drivers/gpu/drm/bridge/ti-sn65dsi86.c    | 1 +
> >  drivers/gpu/drm/drm_dp_aux_dev.c | 6 ++
> >  drivers/gpu/drm/drm_dp_mst_topology.c    | 1 +
> >  drivers/gpu/drm/i915/display/intel_dp_aux.c  | 1 +
> >  drivers/gpu/drm/msm/edp/edp.h    | 3 +--
> >  drivers/gpu/drm/msm/edp/edp_aux.c    | 5 +++--
> >  drivers/gpu/drm/msm/edp/edp_ctrl.c   | 2 +-
> >  drivers/gpu/drm/nouveau/nouveau_connector.c  | 1 +
> >  drivers/gpu/drm/radeon/atombios_dp.c | 1 +
> >  drivers/gpu/drm/tegra/dpaux.c    | 1 +
> >  drivers/gpu/drm/xlnx/zynqmp_dp.c | 1 +
> >  include/drm/drm_dp_helper.h  | 9 -
> >  19 files changed, 33 insertions(+), 6 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/amd/amdgpu/atombios_dp.c
> > b/drivers/gpu/drm/amd/amdgpu/atombios_dp.c
> > index a3ba9ca11e98..6d35da65e09f 100644
> > --- a/drivers/gpu/drm/amd/amdgpu/atombios_dp.c
> > +++ b/drivers/gpu/drm/amd/amdgpu/atombios_dp.c
> > @@ -188,6 +188,7 @@ void amdgpu_atombios_dp_aux_init(struct amdgpu_connector
> > *amdgpu_connector)
> >  {
> > amdgpu_connector->ddc_bus->rec.hpd = amdgpu_connector->hpd.hpd;
> > amdgpu_connector->ddc_bus->aux.transfer =
> > amdgpu_atombios_dp_aux_transfer;
> > +   amdgpu_connector->ddc_bus->aux.drm_dev = amdgpu_connector->base.dev;
> > drm_dp_aux_init(_connector->ddc_bus->aux);
> > amdgpu_connector->ddc_bus->has_aux = true;
> >  }
> > diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c
> > b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c
> > index 41b09ab22233..163641b44339 100644
> > --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c
> > +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_mst_types.c
> > @@ -431,6 +431,7 @@ void amdgpu_dm_initialize_dp_connector(struct
> > amdgpu_display_manager *dm,
> >   link_index);
> > aconnector->dm_dp_aux.aux.transfer = dm_dp_aux_transfer;
> > aconnector->dm_dp_aux.ddc_service = aconnector->dc_link->ddc;
> > +   aconnector->dm_dp_aux.aux.drm_dev = dm->ddev;
> >  
> > drm_dp_aux_init(>dm_dp_aux.aux);
> > drm_dp_cec_register_connector(>dm_dp_aux.aux,
> > diff --git a/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c
> > b/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c
> > index aa6cda458eb9..e33cd077595a 100644
> > --- a/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c
> > +++ b/drivers/gpu/drm/bridge/analogix/analogix-anx6345.c
> > @@ -537,6 +537,7 @@ static int anx6345_bridge_attach(struct drm_bridge
> > *bridge,
> > /* Register aux channel */
> > anx6345->aux.name = "DP-AUX";
> > anx6345->aux.dev = >client->dev;
> > +   anx6345->aux.drm_dev = bridge->dev;
> > anx6345->aux.transfer = anx6345_aux_transfer;
> >  
> > err = drm_dp_aux_register(>aux);
> > diff --git a/drivers/gpu/drm/bridge/analogix/analogix-anx78xx.c
> > 

[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: Promote ptrdiff() to i915_utils.h

2021-02-24 Thread Patchwork
== Series Details ==

Series: drm/i915: Promote ptrdiff() to i915_utils.h
URL   : https://patchwork.freedesktop.org/series/87348/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_9798_full -> Patchwork_19725_full


Summary
---

  **WARNING**

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

  

Possible new issues
---

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

### IGT changes ###

 Warnings 

  * igt@runner@aborted:
- shard-kbl:  ([FAIL][1], [FAIL][2], [FAIL][3], [FAIL][4], 
[FAIL][5], [FAIL][6], [FAIL][7], [FAIL][8], [FAIL][9]) ([fdo#109271] / 
[i915#1436] / [i915#180] / [i915#1814] / [i915#2724] / [i915#3002] / 
[i915#716]) -> ([FAIL][10], [FAIL][11], [FAIL][12], [FAIL][13], [FAIL][14], 
[FAIL][15], [FAIL][16], [FAIL][17], [FAIL][18]) ([fdo#109271] / [i915#1436] / 
[i915#180] / [i915#1814] / [i915#2426] / [i915#2505] / [i915#2724] / 
[i915#3002] / [i915#716])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-kbl2/igt@run...@aborted.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-kbl7/igt@run...@aborted.html
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-kbl4/igt@run...@aborted.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-kbl2/igt@run...@aborted.html
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-kbl4/igt@run...@aborted.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-kbl4/igt@run...@aborted.html
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-kbl2/igt@run...@aborted.html
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-kbl7/igt@run...@aborted.html
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-kbl1/igt@run...@aborted.html
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/shard-kbl4/igt@run...@aborted.html
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/shard-kbl3/igt@run...@aborted.html
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/shard-kbl4/igt@run...@aborted.html
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/shard-kbl6/igt@run...@aborted.html
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/shard-kbl4/igt@run...@aborted.html
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/shard-kbl3/igt@run...@aborted.html
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/shard-kbl3/igt@run...@aborted.html
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/shard-kbl3/igt@run...@aborted.html
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/shard-kbl2/igt@run...@aborted.html

  
Known issues


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

### IGT changes ###

 Issues hit 

  * igt@drm_mm@all@replace:
- shard-skl:  NOTRUN -> [INCOMPLETE][19] ([i915#2485])
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/shard-skl5/igt@drm_mm@a...@replace.html

  * igt@gem_ctx_isolation@preservation-s3@vecs0:
- shard-kbl:  [PASS][20] -> [DMESG-WARN][21] ([i915#180]) +3 
similar issues
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-kbl2/igt@gem_ctx_isolation@preservation...@vecs0.html
   [21]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/shard-kbl3/igt@gem_ctx_isolation@preservation...@vecs0.html

  * igt@gem_ctx_persistence@legacy-engines-mixed-process:
- shard-snb:  NOTRUN -> [SKIP][22] ([fdo#109271] / [i915#1099]) +2 
similar issues
   [22]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/shard-snb6/igt@gem_ctx_persiste...@legacy-engines-mixed-process.html

  * igt@gem_ctx_shared@q-in-order:
- shard-snb:  NOTRUN -> [SKIP][23] ([fdo#109271]) +248 similar 
issues
   [23]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/shard-snb5/igt@gem_ctx_sha...@q-in-order.html

  * igt@gem_exec_capture@pi@rcs0:
- shard-skl:  [PASS][24] -> [INCOMPLETE][25] ([i915#2369] / 
[i915#2502])
   [24]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-skl8/igt@gem_exec_capture@p...@rcs0.html
   [25]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/shard-skl3/igt@gem_exec_capture@p...@rcs0.html

  * igt@gem_exec_fair@basic-none-share@rcs0:
- shard-tglb: [PASS][26] -> [FAIL][27] ([i915#2842])
   [26]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-tglb5/igt@gem_exec_fair@basic-none-sh...@rcs0.html
   [27]: 

[Intel-gfx] udldrmfb: causes WARN in i915 on X60 (x86-32)

2021-02-24 Thread Pavel Machek
Hi!

This is in -next, but I get same behaviour on 5.11; and no, udl does
not work, but monitor is detected:

pavel@amd:~/g/tui/crashled$ xrandr 
Screen 0: minimum 320 x 200, current 1024 x 768, maximum 4096 x 4096
LVDS1 connected 1024x768+0+0 (normal left inverted right x axis y axis) 246mm x 
185mm
   1024x768  50.00*+  60.0040.00  
   800x600   60.3256.25  
   640x480   59.94  
VGA1 disconnected (normal left inverted right x axis y axis)
DVI-1-0 connected 1024x768+0+0 304mm x 228mm
   1024x768  60.00*+  75.03  
   800x600   75.0060.32  
   640x480   75.0059.94  
   720x400   70.08  
  1024x768 (0x45) 65.000MHz -HSync -VSync
h: width  1024 start 1048 end 1184 total 1344 skew0 clock  48.36KHz
v: height  768 start  771 end  777 total  806   clock  60.00Hz
  800x600 (0x47) 40.000MHz +HSync +VSync
h: width   800 start  840 end  968 total 1056 skew0 clock  37.88KHz
v: height  600 start  601 end  605 total  628   clock  60.32Hz
  640x480 (0x49) 25.175MHz -HSync -VSync
h: width   640 start  656 end  752 total  800 skew0 clock  31.47KHz
v: height  480 start  490 end  492 total  525   clock  59.94Hz
pavel@amd:~/g/tui/crashled$ 


[13957.499755] wlan0: associated
[13962.906368] udl 1-5:1.0: [drm] fb1: udldrmfb frame buffer device
[13972.585101] [ cut here ]
[13972.585117] WARNING: CPU: 0 PID: 3159 at kernel/dma/mapping.c:192 
dma_map_sg_attrs+0x38/0x50
[13972.585137] Modules linked in:
[13972.585149] CPU: 0 PID: 3159 Comm: Xorg Not tainted 5.11.0-next-20210223+ 
#176
[13972.585158] Hardware name: LENOVO 17097HU/17097HU, BIOS 7BETD8WW (2.19 ) 
03/31/2011
[13972.585166] EIP: dma_map_sg_attrs+0x38/0x50
[13972.585176] Code: f0 01 00 00 00 74 23 ff 75 0c 53 e8 72 1b 00 00 5a 59 85 
c0 78 1c 8b 5d fc c9 c3 8d b4 26 00 00 00 00 0f 0b 8d b6 00 00 00 00 <0f> 0b 31 
c0 eb e6 66 90 0f 0b 8d b4 26 00 00 00 00 8d b4 26 00 00
[13972.585186] EAX: c296c41c EBX:  ECX: 0055 EDX: dbbc4800
[13972.585194] ESI: c69f9ea0 EDI: d2c313c0 EBP: c5cbdda8 ESP: c5cbdda4
[13972.585202] DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068 EFLAGS: 00210246
[13972.585211] CR0: 80050033 CR2: b6b99000 CR3: 05d42000 CR4: 06b0
[13972.585219] Call Trace:
[13972.585227]  i915_gem_map_dma_buf+0xee/0x160
[13972.585240]  dma_buf_map_attachment+0xb8/0x140
[13972.585251]  drm_gem_prime_import_dev.part.0+0x33/0xc0
[13972.585262]  ? drm_gem_shmem_create+0x10/0x10
[13972.585271]  drm_gem_prime_import_dev+0x22/0x70
[13972.585280]  drm_gem_prime_fd_to_handle+0x186/0x1c0
[13972.585289]  ? drm_gem_prime_import_dev+0x70/0x70
[13972.585298]  ? drm_prime_destroy_file_private+0x20/0x20
[13972.585307]  drm_prime_fd_to_handle_ioctl+0x1c/0x30
[13972.585315]  drm_ioctl_kernel+0x8e/0xe0
[13972.585325]  ? drm_prime_destroy_file_private+0x20/0x20
[13972.585334]  drm_ioctl+0x1fd/0x380
[13972.585343]  ? drm_prime_destroy_file_private+0x20/0x20
[13972.585352]  ? ksys_write+0x5c/0xd0
[13972.585363]  ? vfs_write+0xeb/0x3f0
[13972.585371]  ? drm_ioctl_kernel+0xe0/0xe0
[13972.585380]  __ia32_sys_ioctl+0x369/0x7d0
[13972.585389]  ? exit_to_user_mode_prepare+0x4e/0x170
[13972.585398]  do_int80_syscall_32+0x2c/0x40
[13972.585409]  entry_INT80_32+0x111/0x111
[13972.585419] EIP: 0xb7f68092
[13972.585427] Code: 00 00 00 e9 90 ff ff ff ff a3 24 00 00 00 68 30 00 00 00 
e9 80 ff ff ff ff a3 e8 ff ff ff 66 90 00 00 00 00 00 00 00 00 cd 80  8d b4 
26 00 00 00 00 8d b6 00 00 00 00 8b 1c 24 c3 8d b4 26 00
[13972.585436] EAX: ffda EBX: 0030 ECX: c00c642e EDX: bfaeda30
[13972.585444] ESI: 00915790 EDI: c00c642e EBP: 0030 ESP: bfaed9e4
[13972.585452] DS: 007b ES: 007b FS:  GS: 0033 SS: 007b EFLAGS: 00200296
[13972.585461]  ? asm_exc_nmi+0xcc/0x2bc
[13972.585470] ---[ end trace 46a21fad0595bc89 ]---
pavel@amd:~/g/tui/crashled$ 

Any ideas?

Best regards,

Pavel
-- 
http://www.livejournal.com/~pavelmachek


signature.asc
Description: PGP signature
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: Verify dma_addr in gen8_ggtt_pte_encode

2021-02-24 Thread Patchwork
== Series Details ==

Series: drm/i915: Verify dma_addr in gen8_ggtt_pte_encode
URL   : https://patchwork.freedesktop.org/series/87352/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_9798 -> Patchwork_19727


Summary
---

  **SUCCESS**

  No regressions found.

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

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@fbdev@write:
- fi-tgl-y:   [PASS][1] -> [DMESG-WARN][2] ([i915#402]) +1 similar 
issue
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-tgl-y/igt@fb...@write.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19727/fi-tgl-y/igt@fb...@write.html

  
 Possible fixes 

  * igt@i915_hangman@error-state-basic:
- fi-tgl-y:   [DMESG-WARN][3] ([i915#402]) -> [PASS][4]
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-tgl-y/igt@i915_hang...@error-state-basic.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19727/fi-tgl-y/igt@i915_hang...@error-state-basic.html

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


Participating hosts (45 -> 41)
--

  Missing(4): fi-ilk-m540 fi-bsw-cyan fi-bdw-samus fi-hsw-4200u 


Build changes
-

  * Linux: CI_DRM_9798 -> Patchwork_19727

  CI-20190529: 20190529
  CI_DRM_9798: 70e2e79cd772b97799f4cecd823539f452063562 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_6013: a6c7181747850161377dae5161d33c0675ab273e @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_19727: 201369a1d91fbc03775a97d3e776dab86436e45f @ 
git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

201369a1d91f drm/i915: Verify dma_addr in gen8_ggtt_pte_encode

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19727/index.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH] drm/i915/guc: Keep strict GuC ABI definitions separate

2021-02-24 Thread Michał Winiarski
Quoting Michal Wajdeczko (2021-02-20 13:44:43)
> Our fwif.h file is now mix of strict firmware ABI definitions and
> set of our helpers. In anticipation of upcoming changes to the GuC
> interface try to keep them separate in smaller maintainable files.
> 
> Signed-off-by: Michal Wajdeczko 
> Cc: Daniele Ceraolo Spurio 
> Cc: John Harrison 
> Cc: Jon Ewins 

Reviewed-by: Michał Winiarski 

-Michał

> ---
>  .../gpu/drm/i915/gt/uc/abi/guc_actions_abi.h  |  55 
>  .../gt/uc/abi/guc_communication_ctb_abi.h | 106 
>  .../gt/uc/abi/guc_communication_mmio_abi.h|  52 
>  .../gpu/drm/i915/gt/uc/abi/guc_errors_abi.h   |  14 +
>  .../drm/i915/gt/uc/abi/guc_log_buffer_abi.h   |  56 
>  .../gpu/drm/i915/gt/uc/abi/guc_messages_abi.h |  21 ++
>  drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h   | 257 +-
>  7 files changed, 312 insertions(+), 249 deletions(-)
>  create mode 100644 drivers/gpu/drm/i915/gt/uc/abi/guc_actions_abi.h
>  create mode 100644 drivers/gpu/drm/i915/gt/uc/abi/guc_communication_ctb_abi.h
>  create mode 100644 
> drivers/gpu/drm/i915/gt/uc/abi/guc_communication_mmio_abi.h
>  create mode 100644 drivers/gpu/drm/i915/gt/uc/abi/guc_errors_abi.h
>  create mode 100644 drivers/gpu/drm/i915/gt/uc/abi/guc_log_buffer_abi.h
>  create mode 100644 drivers/gpu/drm/i915/gt/uc/abi/guc_messages_abi.h
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Verify dma_addr in gen8_ggtt_pte_encode

2021-02-24 Thread Patchwork
== Series Details ==

Series: drm/i915: Verify dma_addr in gen8_ggtt_pte_encode
URL   : https://patchwork.freedesktop.org/series/87352/
State : warning

== Summary ==

$ dim checkpatch origin/drm-tip
201369a1d91f drm/i915: Verify dma_addr in gen8_ggtt_pte_encode
-:9: WARNING:COMMIT_LOG_LONG_LINE: Possible unwrapped commit description 
(prefer a maximum 75 chars per line)
#9: 
Until now, the gen8_ggtt_pte_encode function, responsible for the preparation

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


___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915: Move DDI clock readout to encoder->get_config()

2021-02-24 Thread Patchwork
== Series Details ==

Series: drm/i915: Move DDI clock readout to encoder->get_config()
URL   : https://patchwork.freedesktop.org/series/87351/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_9798 -> Patchwork_19726


Summary
---

  **FAILURE**

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

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

Possible new issues
---

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

### CI changes ###

 Possible regressions 

  * boot:
- fi-apl-guc: [PASS][1] -> [FAIL][2]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-apl-guc/boot.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19726/fi-apl-guc/boot.html
- fi-cfl-8700k:   [PASS][3] -> [FAIL][4]
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-cfl-8700k/boot.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19726/fi-cfl-8700k/boot.html
- fi-skl-6700k2:  [PASS][5] -> [FAIL][6]
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-skl-6700k2/boot.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19726/fi-skl-6700k2/boot.html
- fi-cfl-guc: [PASS][7] -> [FAIL][8]
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-cfl-guc/boot.html
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19726/fi-cfl-guc/boot.html
- fi-skl-guc: [PASS][9] -> [FAIL][10]
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-skl-guc/boot.html
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19726/fi-skl-guc/boot.html

  
 Suppressed 

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

  * boot:
- {fi-rkl-11500t}:[PASS][11] -> [FAIL][12]
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-rkl-11500t/boot.html
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19726/fi-rkl-11500t/boot.html

  

### IGT changes ###

 Possible regressions 

  * igt@runner@aborted:
- fi-tgl-y:   NOTRUN -> [FAIL][13]
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19726/fi-tgl-y/igt@run...@aborted.html
- fi-cml-s:   NOTRUN -> [FAIL][14]
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19726/fi-cml-s/igt@run...@aborted.html
- fi-tgl-u2:  NOTRUN -> [FAIL][15]
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19726/fi-tgl-u2/igt@run...@aborted.html

  
 Suppressed 

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

  * igt@runner@aborted:
- {fi-jsl-1}: NOTRUN -> [FAIL][16]
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19726/fi-jsl-1/igt@run...@aborted.html

  
Known issues


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

### IGT changes ###

 Issues hit 

  * igt@kms_chamelium@dp-crc-fast:
- fi-kbl-7500u:   [PASS][17] -> [FAIL][18] ([i915#1372])
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-kbl-7500u/igt@kms_chamel...@dp-crc-fast.html
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19726/fi-kbl-7500u/igt@kms_chamel...@dp-crc-fast.html

  * igt@runner@aborted:
- fi-icl-y:   NOTRUN -> [FAIL][19] ([i915#1569])
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19726/fi-icl-y/igt@run...@aborted.html

  
 Warnings 

  * igt@runner@aborted:
- fi-icl-u2:  [FAIL][20] ([i915#1814]) -> [FAIL][21] ([i915#1569] / 
[k.org#202973])
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-icl-u2/igt@run...@aborted.html
   [21]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19726/fi-icl-u2/igt@run...@aborted.html

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

  [i915#1372]: https://gitlab.freedesktop.org/drm/intel/issues/1372
  [i915#1569]: https://gitlab.freedesktop.org/drm/intel/issues/1569
  [i915#1814]: https://gitlab.freedesktop.org/drm/intel/issues/1814
  [i915#2505]: https://gitlab.freedesktop.org/drm/intel/issues/2505
  [k.org#202973]: https://bugzilla.kernel.org/show_bug.cgi?id=202973


Participating hosts (45 -> 38)
--

  Missing(7): fi-ilk-m540 fi-hsw-4200u fi-byt-j1900 fi-bsw-cyan fi-ehl-2 
fi-bdw-samus fi-snb-2600 


Build changes
-

  * Linux: CI_DRM_9798 -> Patchwork_19726

  

[Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915: Move DDI clock readout to encoder->get_config()

2021-02-24 Thread Patchwork
== Series Details ==

Series: drm/i915: Move DDI clock readout to encoder->get_config()
URL   : https://patchwork.freedesktop.org/series/87351/
State : warning

== Summary ==

$ dim sparse --fast origin/drm-tip
Sparse version: v0.6.2
Fast mode used, each commit won't be checked separately.
-
+drivers/gpu/drm/i915/gt/intel_reset.c:1323:5: warning: context imbalance in 
'intel_gt_reset_trylock' - different lock contexts for basic block
+drivers/gpu/drm/i915/gvt/mmio.c:295:23: warning: memcpy with byte count of 
279040
+drivers/gpu/drm/i915/i915_perf.c:1437:15: warning: memset with byte count of 
16777216
+drivers/gpu/drm/i915/i915_perf.c:1491:15: warning: memset with byte count of 
16777216
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'fwtable_read16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'fwtable_read32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'fwtable_read64' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'fwtable_read8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'fwtable_write16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'fwtable_write32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'fwtable_write8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'gen11_fwtable_read16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'gen11_fwtable_read32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'gen11_fwtable_read64' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'gen11_fwtable_read8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'gen11_fwtable_write16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'gen11_fwtable_write32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'gen11_fwtable_write8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'gen12_fwtable_read16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'gen12_fwtable_read32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'gen12_fwtable_read64' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'gen12_fwtable_read8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'gen12_fwtable_write16' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'gen12_fwtable_write32' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 
'gen12_fwtable_write8' - different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_read16' 
- different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_read32' 
- different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_read64' 
- different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_read8' - 
different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_write16' 
- different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_write32' 
- different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen6_write8' 
- different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen8_write16' 
- different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen8_write32' 
- different lock contexts for basic block
+./include/linux/spinlock.h:409:9: warning: context imbalance in 'gen8_write8' 
- different lock contexts for basic block


___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: Promote ptrdiff() to i915_utils.h

2021-02-24 Thread Patchwork
== Series Details ==

Series: drm/i915: Promote ptrdiff() to i915_utils.h
URL   : https://patchwork.freedesktop.org/series/87348/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_9798 -> Patchwork_19725


Summary
---

  **SUCCESS**

  No regressions found.

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

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@i915_pm_rpm@module-reload:
- fi-byt-j1900:   [PASS][1] -> [INCOMPLETE][2] ([i915#142] / 
[i915#2405])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-byt-j1900/igt@i915_pm_...@module-reload.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/fi-byt-j1900/igt@i915_pm_...@module-reload.html

  * igt@prime_self_import@basic-with_one_bo_two_files:
- fi-tgl-y:   [PASS][3] -> [DMESG-WARN][4] ([i915#402]) +2 similar 
issues
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-tgl-y/igt@prime_self_import@basic-with_one_bo_two_files.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/fi-tgl-y/igt@prime_self_import@basic-with_one_bo_two_files.html

  * igt@runner@aborted:
- fi-byt-j1900:   NOTRUN -> [FAIL][5] ([i915#1814] / [i915#2505])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/fi-byt-j1900/igt@run...@aborted.html

  
 Possible fixes 

  * igt@i915_hangman@error-state-basic:
- fi-tgl-y:   [DMESG-WARN][6] ([i915#402]) -> [PASS][7] +1 similar 
issue
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-tgl-y/igt@i915_hang...@error-state-basic.html
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/fi-tgl-y/igt@i915_hang...@error-state-basic.html

  
  [i915#142]: https://gitlab.freedesktop.org/drm/intel/issues/142
  [i915#1814]: https://gitlab.freedesktop.org/drm/intel/issues/1814
  [i915#2405]: https://gitlab.freedesktop.org/drm/intel/issues/2405
  [i915#2505]: https://gitlab.freedesktop.org/drm/intel/issues/2505
  [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402


Participating hosts (45 -> 41)
--

  Missing(4): fi-ilk-m540 fi-bsw-cyan fi-bdw-samus fi-hsw-4200u 


Build changes
-

  * Linux: CI_DRM_9798 -> Patchwork_19725

  CI-20190529: 20190529
  CI_DRM_9798: 70e2e79cd772b97799f4cecd823539f452063562 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_6013: a6c7181747850161377dae5161d33c0675ab273e @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_19725: a4849d64c1166b620cc534d2375c48729c4e5966 @ 
git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

a4849d64c116 drm/i915: Promote ptrdiff() to i915_utils.h

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19725/index.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH 01/30] drm/dp: Rewrap kdocs for struct drm_dp_aux

2021-02-24 Thread Lyude Paul
On Fri, 2021-02-19 at 15:42 -0800, Randy Dunlap wrote:
> On 2/19/21 1:52 PM, Lyude Paul wrote:
> > Since we're about to be adding some more fields and update this
> > documentation, let's rewrap it to the new column limit of 100 beforehand.
> > No actual doc or functional changes are made here.
> > 
> 
> The preferred column limit is still 80.
> For some (exceptional) cases, going up to 100 is OK,
> but I don't see any reason here to go beyond 80.

Found some posts online that discussed this in detail:

https://linux.slashdot.org/story/20/05/31/211211/linus-torvalds-argues-against-80-column-line-length-coding-style-as-linux-kernel-deprecates-it

so I guess I'm fine with rewrapping these to 80 cols (although honestly, it'd be
really nice to just have a single col limit to make things easier on text
editors :) in the next respin.


> Signed-off-by: Lyude Paul 
> ---
>  include/drm/drm_dp_helper.h | 42 -
>  1 file changed, 18 insertions(+), 24 deletions(-)
> 
> diff --git a/include/drm/drm_dp_helper.h b/include/drm/drm_dp_helper.h
> index edffd1dcca3e..2891a98eebc8 100644
> --- a/include/drm/drm_dp_helper.h
> +++ b/include/drm/drm_dp_helper.h
> @@ -1839,34 +1839,28 @@ struct drm_dp_aux_cec {
>   * @crc_count: counter of captured frame CRCs
>   * @transfer: transfers a message representing a single AUX transaction
>   *
> - * The .dev field should be set to a pointer to the device that implements
> - * the AUX channel.
> + * The .dev field should be set to a pointer to the device that implements
> the AUX channel.
>   *
> - * The .name field may be used to specify the name of the I2C adapter. If set
> to
> - * NULL, dev_name() of .dev will be used.
> + * The .name field may be used to specify the name of the I2C adapter. If set
> to NULL, dev_name() of
> + * .dev will be used.
>   *
> - * Drivers provide a hardware-specific implementation of how transactions
> - * are executed via the .transfer() function. A pointer to a drm_dp_aux_msg
> - * structure describing the transaction is passed into this function. Upon
> - * success, the implementation should return the number of payload bytes
> - * that were transferred, or a negative error-code on failure. Helpers
> - * propagate errors from the .transfer() function, with the exception of
> - * the -EBUSY error, which causes a transaction to be retried. On a short,
> - * helpers will return -EPROTO to make it simpler to check for failure.
> + * Drivers provide a hardware-specific implementation of how transactions are
> executed via the
> + * .transfer() function. A pointer to a drm_dp_aux_msg structure describing
> the transaction is
> + * passed into this function. Upon success, the implementation should return
> the number of payload
> + * bytes that were transferred, or a negative error-code on failure. Helpers
> propagate errors from
> + * the .transfer() function, with the exception of the -EBUSY error, which
> causes a transaction to
> + * be retried. On a short, helpers will return -EPROTO to make it simpler to
> check for failure.
>   *
> - * An AUX channel can also be used to transport I2C messages to a sink. A
> - * typical application of that is to access an EDID that's present in the
> - * sink device. The .transfer() function can also be used to execute such
> - * transactions. The drm_dp_aux_register() function registers an I2C
> - * adapter that can be passed to drm_probe_ddc(). Upon removal, drivers
> - * should call drm_dp_aux_unregister() to remove the I2C adapter.
> - * The I2C adapter uses long transfers by default; if a partial response is
> - * received, the adapter will drop down to the size given by the partial
> - * response for this transaction only.
> + * An AUX channel can also be used to transport I2C messages to a sink. A
> typical application of
> + * that is to access an EDID that's present in the sink device. The
> .transfer() function can also be
> + * used to execute such transactions. The drm_dp_aux_register() function
> registers an I2C adapter
> + * that can be passed to drm_probe_ddc(). Upon removal, drivers should call
> drm_dp_aux_unregister()
> + * to remove the I2C adapter. The I2C adapter uses long transfers by default;
> if a partial response
> + * is received, the adapter will drop down to the size given by the partial
> response for this
> + * transaction only.
>   *
> - * Note that the aux helper code assumes that the .transfer() function
> - * only modifies the reply field of the drm_dp_aux_msg structure.  The
> - * retry logic and i2c helpers assume this is the case.
> + * Note that the aux helper code assumes that the .transfer() function only
> modifies the reply field
> + * of the drm_dp_aux_msg structure. The retry logic and i2c helpers assume
> this is the case.
>   */
>  struct drm_dp_aux {
> const char *name;
> 




-- 
Sincerely,
   Lyude Paul (she/her)
   Software Engineer at Red Hat
   
Note: I deal with a lot of emails and have a lot of bugs on my plate. If 

[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/tgl+: Sanitize the DDI LANES/IO and AUX power domain names

2021-02-24 Thread Patchwork
== Series Details ==

Series: drm/i915/tgl+: Sanitize the DDI LANES/IO and AUX power domain names
URL   : https://patchwork.freedesktop.org/series/87299/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_9795_full -> Patchwork_19717_full


Summary
---

  **WARNING**

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

  

Possible new issues
---

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

### IGT changes ###

 Warnings 

  * igt@runner@aborted:
- shard-kbl:  ([FAIL][1], [FAIL][2], [FAIL][3]) ([i915#2426] / 
[i915#2505] / [i915#2724] / [i915#3002]) -> ([FAIL][4], [FAIL][5], [FAIL][6], 
[FAIL][7], [FAIL][8]) ([i915#1814] / [i915#2292] / [i915#2505] / [i915#3002])
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9795/shard-kbl4/igt@run...@aborted.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9795/shard-kbl1/igt@run...@aborted.html
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9795/shard-kbl6/igt@run...@aborted.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-kbl7/igt@run...@aborted.html
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-kbl6/igt@run...@aborted.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-kbl4/igt@run...@aborted.html
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-kbl4/igt@run...@aborted.html
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-kbl4/igt@run...@aborted.html
- shard-apl:  ([FAIL][9], [FAIL][10], [FAIL][11]) ([i915#180] / 
[i915#3002]) -> ([FAIL][12], [FAIL][13], [FAIL][14], [FAIL][15]) ([i915#2724] / 
[i915#3002])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9795/shard-apl1/igt@run...@aborted.html
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9795/shard-apl1/igt@run...@aborted.html
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9795/shard-apl3/igt@run...@aborted.html
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-apl6/igt@run...@aborted.html
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-apl2/igt@run...@aborted.html
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-apl1/igt@run...@aborted.html
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-apl1/igt@run...@aborted.html

  
Known issues


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

### IGT changes ###

 Issues hit 

  * igt@feature_discovery@psr2:
- shard-iclb: [PASS][16] -> [SKIP][17] ([i915#658])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9795/shard-iclb2/igt@feature_discov...@psr2.html
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-iclb6/igt@feature_discov...@psr2.html

  * igt@gem_create@create-massive:
- shard-snb:  NOTRUN -> [DMESG-WARN][18] ([i915#3002])
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-snb6/igt@gem_cre...@create-massive.html
- shard-kbl:  NOTRUN -> [DMESG-WARN][19] ([i915#3002])
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-kbl7/igt@gem_cre...@create-massive.html

  * igt@gem_ctx_persistence@file:
- shard-hsw:  NOTRUN -> [SKIP][20] ([fdo#109271] / [i915#1099])
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-hsw1/igt@gem_ctx_persiste...@file.html

  * igt@gem_ctx_persistence@legacy-engines-mixed:
- shard-snb:  NOTRUN -> [SKIP][21] ([fdo#109271] / [i915#1099]) +6 
similar issues
   [21]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-snb2/igt@gem_ctx_persiste...@legacy-engines-mixed.html

  * igt@gem_eio@unwedge-stress:
- shard-iclb: [PASS][22] -> [TIMEOUT][23] ([i915#2481] / 
[i915#3070])
   [22]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9795/shard-iclb5/igt@gem_...@unwedge-stress.html
   [23]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-iclb8/igt@gem_...@unwedge-stress.html

  * igt@gem_exec_create@forked:
- shard-glk:  [PASS][24] -> [DMESG-WARN][25] ([i915#118] / 
[i915#95])
   [24]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9795/shard-glk6/igt@gem_exec_cre...@forked.html
   [25]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-glk7/igt@gem_exec_cre...@forked.html

  * igt@gem_exec_fair@basic-deadline:
- shard-apl:  NOTRUN -> [FAIL][26] ([i915#2846])
   [26]: 

[Intel-gfx] [PATCH] drm/i915: Verify dma_addr in gen8_ggtt_pte_encode

2021-02-24 Thread Piorkowski, Piotr
From: Piotr Piórkowski 

Until now, the gen8_ggtt_pte_encode function, responsible for the preparation
of GGTT PTE, has not verified in any way whether the address given as the
parameter is correct.
By adding a GGTT address mask, we can easily verify that dma_addr will not fit
in the PTE field.
While around, cleanup a place where we hold all GEN12 GGTT PTE masks,
and the addition of the PTE description.

Bspec: 45015

Signed-off-by: Piotr Piórkowski 
Cc: Matthew Auld 
Cc: Michal Wajdeczko 
Cc: Michal Winiarski 
---
 drivers/gpu/drm/i915/gt/intel_ggtt.c |  2 ++
 drivers/gpu/drm/i915/gt/intel_gtt.h  | 13 -
 2 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/gt/intel_ggtt.c 
b/drivers/gpu/drm/i915/gt/intel_ggtt.c
index b0b8ded834f0..52b2428da431 100644
--- a/drivers/gpu/drm/i915/gt/intel_ggtt.c
+++ b/drivers/gpu/drm/i915/gt/intel_ggtt.c
@@ -193,6 +193,8 @@ static u64 gen8_ggtt_pte_encode(dma_addr_t addr,
 {
gen8_pte_t pte = addr | _PAGE_PRESENT;
 
+   GEM_BUG_ON(addr & ~GEN12_GGTT_PTE_ADDR_MASK);
+
if (flags & PTE_LM)
pte |= GEN12_GGTT_PTE_LM;
 
diff --git a/drivers/gpu/drm/i915/gt/intel_gtt.h 
b/drivers/gpu/drm/i915/gt/intel_gtt.h
index 24b5808df16d..c82bbe307668 100644
--- a/drivers/gpu/drm/i915/gt/intel_gtt.h
+++ b/drivers/gpu/drm/i915/gt/intel_gtt.h
@@ -87,7 +87,18 @@ typedef u64 gen8_pte_t;
 
 #define GEN12_PPGTT_PTE_LM BIT_ULL(11)
 
-#define GEN12_GGTT_PTE_LM  BIT_ULL(1)
+/*
+ *  DOC: GEN12 GGTT Table Entry format
+ *
+ * +--+-+-+--+-+
+ * |63:46 |   45:12 |11:2 |1 |   0 |
+ * +==+=+=+==+=+
+ * |  Ignored | Address | Ignored | Local Memory | Present |
+ * +--+-+-+--+-+
+ */
+
+#define GEN12_GGTT_PTE_LM  BIT_ULL(1)
+#define GEN12_GGTT_PTE_ADDR_MASK   GENMASK_ULL(45, 12)
 
 /*
  * Cacheability Control is a 4-bit value. The low three bits are stored in bits
-- 
2.25.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 6/6] drm/i915: Extend icl_sanitize_encoder_pll_mapping() to all DDI platforms

2021-02-24 Thread Ville Syrjala
From: Ville Syrjälä 

Now that all the encoder clock stuff is uniformly abstracted
for all hsw+ platforms, let's extend icl_sanitize_encoder_pll_mapping()
to cover all of them.

Not sure there is a particular benefit in doing so, but less special
cases always makes me happy.

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

diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c 
b/drivers/gpu/drm/i915/display/intel_ddi.c
index 7d477c4007c7..dd2203f87078 100644
--- a/drivers/gpu/drm/i915/display/intel_ddi.c
+++ b/drivers/gpu/drm/i915/display/intel_ddi.c
@@ -2134,7 +2134,7 @@ static void intel_ddi_disable_clock(struct intel_encoder 
*encoder)
encoder->disable_clock(encoder);
 }
 
-void icl_sanitize_encoder_pll_mapping(struct intel_encoder *encoder)
+void intel_ddi_sanitize_encoder_pll_mapping(struct intel_encoder *encoder)
 {
struct drm_i915_private *i915 = to_i915(encoder->base.dev);
u32 port_mask;
diff --git a/drivers/gpu/drm/i915/display/intel_ddi.h 
b/drivers/gpu/drm/i915/display/intel_ddi.h
index 99cebbe6b586..59c6b01d4199 100644
--- a/drivers/gpu/drm/i915/display/intel_ddi.h
+++ b/drivers/gpu/drm/i915/display/intel_ddi.h
@@ -66,6 +66,6 @@ u32 ddi_signal_levels(struct intel_dp *intel_dp,
 int intel_ddi_toggle_hdcp_bits(struct intel_encoder *intel_encoder,
   enum transcoder cpu_transcoder,
   bool enable, u32 hdcp_mask);
-void icl_sanitize_encoder_pll_mapping(struct intel_encoder *encoder);
+void intel_ddi_sanitize_encoder_pll_mapping(struct intel_encoder *encoder);
 
 #endif /* __INTEL_DDI_H__ */
diff --git a/drivers/gpu/drm/i915/display/intel_display.c 
b/drivers/gpu/drm/i915/display/intel_display.c
index 8b5cb814b679..87db5331176b 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -13144,8 +13144,8 @@ static void intel_sanitize_encoder(struct intel_encoder 
*encoder)
/* notify opregion of the sanitized encoder state */
intel_opregion_notify_encoder(encoder, connector && has_active_crtc);
 
-   if (INTEL_GEN(dev_priv) >= 11)
-   icl_sanitize_encoder_pll_mapping(encoder);
+   if (HAS_DDI(dev_priv))
+   intel_ddi_sanitize_encoder_pll_mapping(encoder);
 }
 
 /* FIXME read out full plane state for all planes */
-- 
2.26.2

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 5/6] drm/i915: Add encoder->is_clock_enabled()

2021-02-24 Thread Ville Syrjala
From: Ville Syrjälä 

Support reading out the current state of the DDI clock.

Not sure we really want this. Seems a bit excessive just to
restore the debug print to icl_sanitize_encoder_pll_mapping()?
But maybe there's more use for it?

Signed-off-by: Ville Syrjälä 
---
 drivers/gpu/drm/i915/display/icl_dsi.c|  19 +++
 drivers/gpu/drm/i915/display/intel_crt.c  |   1 +
 drivers/gpu/drm/i915/display/intel_ddi.c  | 123 +-
 drivers/gpu/drm/i915/display/intel_ddi.h  |   1 +
 .../drm/i915/display/intel_display_types.h|   4 +
 5 files changed, 146 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/icl_dsi.c 
b/drivers/gpu/drm/i915/display/icl_dsi.c
index 29fe4919392a..7f2abc088a66 100644
--- a/drivers/gpu/drm/i915/display/icl_dsi.c
+++ b/drivers/gpu/drm/i915/display/icl_dsi.c
@@ -655,6 +655,24 @@ static void gen11_dsi_ungate_clocks(struct intel_encoder 
*encoder)
mutex_unlock(_priv->dpll.lock);
 }
 
+static bool gen11_dsi_is_clock_enabled(struct intel_encoder *encoder)
+{
+   struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
+   struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
+   bool clock_enabled = false;
+   enum phy phy;
+   u32 tmp;
+
+   tmp = intel_de_read(dev_priv, ICL_DPCLKA_CFGCR0);
+
+   for_each_dsi_phy(phy, intel_dsi->phys) {
+   if (!(tmp & ICL_DPCLKA_CFGCR0_DDI_CLK_OFF(phy)))
+   clock_enabled = true;
+   }
+
+   return clock_enabled;
+}
+
 static void gen11_dsi_map_pll(struct intel_encoder *encoder,
  const struct intel_crtc_state *crtc_state)
 {
@@ -1939,6 +1957,7 @@ void icl_dsi_init(struct drm_i915_private *dev_priv)
encoder->power_domain = POWER_DOMAIN_PORT_DSI;
encoder->get_power_domains = gen11_dsi_get_power_domains;
encoder->disable_clock = gen11_dsi_gate_clocks;
+   encoder->is_clock_enabled = gen11_dsi_is_clock_enabled;
 
/* register DSI connector with DRM subsystem */
drm_connector_init(dev, connector, _dsi_connector_funcs,
diff --git a/drivers/gpu/drm/i915/display/intel_crt.c 
b/drivers/gpu/drm/i915/display/intel_crt.c
index b03f74076f64..7f3d11c5ce3e 100644
--- a/drivers/gpu/drm/i915/display/intel_crt.c
+++ b/drivers/gpu/drm/i915/display/intel_crt.c
@@ -1078,6 +1078,7 @@ void intel_crt_init(struct drm_i915_private *dev_priv)
crt->base.post_disable = hsw_post_disable_crt;
crt->base.enable_clock = hsw_ddi_enable_clock;
crt->base.disable_clock = hsw_ddi_disable_clock;
+   crt->base.is_clock_enabled = hsw_ddi_is_clock_enabled;
} else {
if (HAS_PCH_SPLIT(dev_priv)) {
crt->base.compute_config = pch_crt_compute_config;
diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c 
b/drivers/gpu/drm/i915/display/intel_ddi.c
index 56f5f55a7c8f..7d477c4007c7 100644
--- a/drivers/gpu/drm/i915/display/intel_ddi.c
+++ b/drivers/gpu/drm/i915/display/intel_ddi.c
@@ -1589,6 +1589,12 @@ static void _cnl_ddi_disable_clock(struct 
drm_i915_private *i915, i915_reg_t reg
mutex_unlock(>dpll.lock);
 }
 
+static bool _cnl_ddi_is_clock_enabled(struct drm_i915_private *i915, 
i915_reg_t reg,
+ u32 clk_off)
+{
+   return !(intel_de_read(i915, reg) & clk_off);
+}
+
 static struct intel_shared_dpll *
 _cnl_ddi_get_pll(struct drm_i915_private *i915, i915_reg_t reg,
 u32 clk_sel_mask, u32 clk_sel_shift)
@@ -1625,6 +1631,15 @@ static void adls_ddi_disable_clock(struct intel_encoder 
*encoder)
   ICL_DPCLKA_CFGCR0_DDI_CLK_OFF(phy));
 }
 
+static bool adls_ddi_is_clock_enabled(struct intel_encoder *encoder)
+{
+   struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+   enum phy phy = intel_port_to_phy(i915, encoder->port);
+
+   return _cnl_ddi_is_clock_enabled(i915, ADLS_DPCLKA_CFGCR(phy),
+ICL_DPCLKA_CFGCR0_DDI_CLK_OFF(phy));
+}
+
 static struct intel_shared_dpll *adls_ddi_get_pll(struct intel_encoder 
*encoder)
 {
struct drm_i915_private *i915 = to_i915(encoder->base.dev);
@@ -1660,6 +1675,15 @@ static void rkl_ddi_disable_clock(struct intel_encoder 
*encoder)
   RKL_DPCLKA_CFGCR0_DDI_CLK_OFF(phy));
 }
 
+static bool rkl_ddi_is_clock_enabled(struct intel_encoder *encoder)
+{
+   struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+   enum phy phy = intel_port_to_phy(i915, encoder->port);
+
+   return _cnl_ddi_is_clock_enabled(i915, ICL_DPCLKA_CFGCR0,
+RKL_DPCLKA_CFGCR0_DDI_CLK_OFF(phy));
+}
+
 static struct intel_shared_dpll *rkl_ddi_get_pll(struct intel_encoder *encoder)
 {
struct drm_i915_private *i915 = to_i915(encoder->base.dev);
@@ -1704,6 +1728,15 @@ static void dg1_ddi_disable_clock(struct intel_encoder 
*encoder)

[Intel-gfx] [PATCH 4/6] drm/i915: Move DDI clock readout to encoder->get_config()

2021-02-24 Thread Ville Syrjala
From: Ville Syrjälä 

Move the *_get_ddi_pll() stuff into the encodet->get_config() hook.
There it neatly sits next to the matching .{enable,disable}_clock()
functions.

In order to avoid excessive boilerplate I changed the behaviour
such that all platforms now do the readout via
crtc_state->port_dpll[].

ICL+ TC is still a bit special due to TBTPLL not having a functional
.get_freq(). Should probably change that by adopting the LCPLL
approach, but that would require a fairly substantial rework of the
DPLL ID handling. So leave it for later.

Signed-off-by: Ville Syrjälä 
---
 drivers/gpu/drm/i915/display/icl_dsi.c   |   6 +-
 drivers/gpu/drm/i915/display/intel_crt.c |   2 +-
 drivers/gpu/drm/i915/display/intel_ddi.c | 321 +--
 drivers/gpu/drm/i915/display/intel_ddi.h |   8 +-
 drivers/gpu/drm/i915/display/intel_display.c | 219 -
 5 files changed, 306 insertions(+), 250 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/icl_dsi.c 
b/drivers/gpu/drm/i915/display/icl_dsi.c
index 05d5709ae537..29fe4919392a 100644
--- a/drivers/gpu/drm/i915/display/icl_dsi.c
+++ b/drivers/gpu/drm/i915/display/icl_dsi.c
@@ -1490,14 +1490,10 @@ static void gen11_dsi_get_cmd_mode_config(struct 
intel_dsi *intel_dsi,
 static void gen11_dsi_get_config(struct intel_encoder *encoder,
 struct intel_crtc_state *pipe_config)
 {
-   struct drm_i915_private *i915 = to_i915(encoder->base.dev);
struct intel_crtc *crtc = to_intel_crtc(pipe_config->uapi.crtc);
struct intel_dsi *intel_dsi = enc_to_intel_dsi(encoder);
 
-   /* FIXME: adapt icl_ddi_clock_get() for DSI and use that? */
-   pipe_config->port_clock = intel_dpll_get_freq(i915,
- pipe_config->shared_dpll,
- 
_config->dpll_hw_state);
+   intel_ddi_get_clock(encoder, pipe_config, 
icl_ddi_combo_get_pll(encoder));
 
pipe_config->hw.adjusted_mode.crtc_clock = intel_dsi->pclk;
if (intel_dsi->dual_link)
diff --git a/drivers/gpu/drm/i915/display/intel_crt.c 
b/drivers/gpu/drm/i915/display/intel_crt.c
index 91a8a42b4aa2..b03f74076f64 100644
--- a/drivers/gpu/drm/i915/display/intel_crt.c
+++ b/drivers/gpu/drm/i915/display/intel_crt.c
@@ -142,7 +142,7 @@ static void hsw_crt_get_config(struct intel_encoder 
*encoder,
 {
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
 
-   intel_ddi_get_config(encoder, pipe_config);
+   hsw_ddi_get_config(encoder, pipe_config);
 
pipe_config->hw.adjusted_mode.flags &= ~(DRM_MODE_FLAG_PHSYNC |
  DRM_MODE_FLAG_NHSYNC |
diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c 
b/drivers/gpu/drm/i915/display/intel_ddi.c
index eeae78097a20..56f5f55a7c8f 100644
--- a/drivers/gpu/drm/i915/display/intel_ddi.c
+++ b/drivers/gpu/drm/i915/display/intel_ddi.c
@@ -304,25 +304,6 @@ static void ddi_dotclock_get(struct intel_crtc_state 
*pipe_config)
pipe_config->hw.adjusted_mode.crtc_clock = dotclock;
 }
 
-static void intel_ddi_clock_get(struct intel_encoder *encoder,
-   struct intel_crtc_state *pipe_config)
-{
-   struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-   enum phy phy = intel_port_to_phy(dev_priv, encoder->port);
-
-   if (intel_phy_is_tc(dev_priv, phy) &&
-   intel_get_shared_dpll_id(dev_priv, pipe_config->shared_dpll) ==
-   DPLL_ID_ICL_TBTPLL)
-   pipe_config->port_clock = icl_calc_tbt_pll_link(dev_priv,
-   encoder->port);
-   else
-   pipe_config->port_clock =
-   intel_dpll_get_freq(dev_priv, pipe_config->shared_dpll,
-   _config->dpll_hw_state);
-
-   ddi_dotclock_get(pipe_config);
-}
-
 void intel_ddi_set_dp_msa(const struct intel_crtc_state *crtc_state,
  const struct drm_connector_state *conn_state)
 {
@@ -1608,6 +1589,17 @@ static void _cnl_ddi_disable_clock(struct 
drm_i915_private *i915, i915_reg_t reg
mutex_unlock(>dpll.lock);
 }
 
+static struct intel_shared_dpll *
+_cnl_ddi_get_pll(struct drm_i915_private *i915, i915_reg_t reg,
+u32 clk_sel_mask, u32 clk_sel_shift)
+{
+   enum intel_dpll_id id;
+
+   id = (intel_de_read(i915, reg) & clk_sel_mask) >> clk_sel_shift;
+
+   return intel_get_shared_dpll_by_id(i915, id);
+}
+
 static void adls_ddi_enable_clock(struct intel_encoder *encoder,
  const struct intel_crtc_state *crtc_state)
 {
@@ -1633,6 +1625,16 @@ static void adls_ddi_disable_clock(struct intel_encoder 
*encoder)
   ICL_DPCLKA_CFGCR0_DDI_CLK_OFF(phy));
 }
 
+static struct intel_shared_dpll *adls_ddi_get_pll(struct intel_encoder 
*encoder)
+{
+   struct drm_i915_private *i915 = 

[Intel-gfx] [PATCH 1/6] drm/i915: Call primary encoder's .get_config() from MST .get_config()

2021-02-24 Thread Ville Syrjala
From: Ville Syrjälä 

Stop assuming intel_ddi_get_config() is all we need from the primary
encoder, and instead call it via the .get_config() vfunc. This
will allow customized .get_config() for the primary, which I plan
to use to handle the differences in the clock readout between various
platforms.

Signed-off-by: Ville Syrjälä 
---
 drivers/gpu/drm/i915/display/intel_dp_mst.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/display/intel_dp_mst.c 
b/drivers/gpu/drm/i915/display/intel_dp_mst.c
index 8e316146b6d1..906860ad8eb8 100644
--- a/drivers/gpu/drm/i915/display/intel_dp_mst.c
+++ b/drivers/gpu/drm/i915/display/intel_dp_mst.c
@@ -591,7 +591,7 @@ static void intel_dp_mst_enc_get_config(struct 
intel_encoder *encoder,
struct intel_dp_mst_encoder *intel_mst = enc_to_mst(encoder);
struct intel_digital_port *dig_port = intel_mst->primary;
 
-   intel_ddi_get_config(_port->base, pipe_config);
+   dig_port->base.get_config(_port->base, pipe_config);
 }
 
 static bool intel_dp_mst_initial_fastset_check(struct intel_encoder *encoder,
-- 
2.26.2

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 3/6] drm/i915: Use pipes instead crtc indices in PLL state tracking

2021-02-24 Thread Ville Syrjala
From: Ville Syrjälä 

All the other places we have use pipes instead of crtc indices
when tracking resource usage. Life is easier when we do it
the same way always, so switch the dpll mgr to using pipes as
well. Looks like it was actually mixing these up in some cases
so it would not even have worked correctly except when the
device has a contiguous set of pipes starting from pipe A.
Granted, that is the typical case but supposedly it may not
always hold on modern hw.

Signed-off-by: Ville Syrjälä 
---
 drivers/gpu/drm/i915/display/intel_display.c  | 40 
 .../drm/i915/display/intel_display_debugfs.c  |  4 +-
 drivers/gpu/drm/i915/display/intel_dpll_mgr.c | 48 ++-
 drivers/gpu/drm/i915/display/intel_dpll_mgr.h |  8 ++--
 4 files changed, 51 insertions(+), 49 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_display.c 
b/drivers/gpu/drm/i915/display/intel_display.c
index b34620545d3b..958c2a796bae 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -9653,7 +9653,7 @@ verify_single_dpll_state(struct drm_i915_private 
*dev_priv,
 struct intel_crtc_state *new_crtc_state)
 {
struct intel_dpll_hw_state dpll_hw_state;
-   unsigned int crtc_mask;
+   u8 pipe_mask;
bool active;
 
memset(_hw_state, 0, sizeof(dpll_hw_state));
@@ -9666,34 +9666,34 @@ verify_single_dpll_state(struct drm_i915_private 
*dev_priv,
I915_STATE_WARN(!pll->on && pll->active_mask,
 "pll in active use but not on in sw tracking\n");
I915_STATE_WARN(pll->on && !pll->active_mask,
-"pll is on but not used by any active crtc\n");
+"pll is on but not used by any active pipe\n");
I915_STATE_WARN(pll->on != active,
 "pll on state mismatch (expected %i, found %i)\n",
 pll->on, active);
}
 
if (!crtc) {
-   I915_STATE_WARN(pll->active_mask & ~pll->state.crtc_mask,
-   "more active pll users than references: %x vs 
%x\n",
-   pll->active_mask, pll->state.crtc_mask);
+   I915_STATE_WARN(pll->active_mask & ~pll->state.pipe_mask,
+   "more active pll users than references: 0x%x vs 
0x%x\n",
+   pll->active_mask, pll->state.pipe_mask);
 
return;
}
 
-   crtc_mask = drm_crtc_mask(>base);
+   pipe_mask = BIT(crtc->pipe);
 
if (new_crtc_state->hw.active)
-   I915_STATE_WARN(!(pll->active_mask & crtc_mask),
-   "pll active mismatch (expected pipe %c in 
active mask 0x%02x)\n",
+   I915_STATE_WARN(!(pll->active_mask & pipe_mask),
+   "pll active mismatch (expected pipe %c in 
active mask 0x%x)\n",
pipe_name(crtc->pipe), pll->active_mask);
else
-   I915_STATE_WARN(pll->active_mask & crtc_mask,
-   "pll active mismatch (didn't expect pipe %c in 
active mask 0x%02x)\n",
+   I915_STATE_WARN(pll->active_mask & pipe_mask,
+   "pll active mismatch (didn't expect pipe %c in 
active mask 0x%x)\n",
pipe_name(crtc->pipe), pll->active_mask);
 
-   I915_STATE_WARN(!(pll->state.crtc_mask & crtc_mask),
-   "pll enabled crtcs mismatch (expected 0x%x in 
0x%02x)\n",
-   crtc_mask, pll->state.crtc_mask);
+   I915_STATE_WARN(!(pll->state.pipe_mask & pipe_mask),
+   "pll enabled crtcs mismatch (expected 0x%x in 0x%x)\n",
+   pipe_mask, pll->state.pipe_mask);
 
I915_STATE_WARN(pll->on && memcmp(>state.hw_state,
  _hw_state,
@@ -9713,15 +9713,15 @@ verify_shared_dpll_state(struct intel_crtc *crtc,
 
if (old_crtc_state->shared_dpll &&
old_crtc_state->shared_dpll != new_crtc_state->shared_dpll) {
-   unsigned int crtc_mask = drm_crtc_mask(>base);
+   u8 pipe_mask = BIT(crtc->pipe);
struct intel_shared_dpll *pll = old_crtc_state->shared_dpll;
 
-   I915_STATE_WARN(pll->active_mask & crtc_mask,
-   "pll active mismatch (didn't expect pipe %c in 
active mask)\n",
-   pipe_name(crtc->pipe));
-   I915_STATE_WARN(pll->state.crtc_mask & crtc_mask,
-   "pll enabled crtcs mismatch (found %x in 
enabled mask)\n",
-   pipe_name(crtc->pipe));
+   I915_STATE_WARN(pll->active_mask & pipe_mask,
+   "pll active mismatch (didn't expect pipe %c in 
active mask (0x%x))\n",
+   

[Intel-gfx] [PATCH 2/6] drm/i915: Do intel_dpll_readout_hw_state() after encoder readout

2021-02-24 Thread Ville Syrjala
From: Ville Syrjälä 

The clock readout for DDI encoders needs to moved into the encoders.
To that end intel_dpll_readout_hw_state() needs to happen after
the encoder readout as otherwise it can't correctly populate
the PLL crtc_mask/active_mask bitmasks.

Signed-off-by: Ville Syrjälä 
---
 drivers/gpu/drm/i915/display/intel_display.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_display.c 
b/drivers/gpu/drm/i915/display/intel_display.c
index d0da88751c72..b34620545d3b 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -13444,8 +13444,6 @@ static void intel_modeset_readout_hw_state(struct 
drm_device *dev)
 
readout_plane_state(dev_priv);
 
-   intel_dpll_readout_hw_state(dev_priv);
-
for_each_intel_encoder(dev, encoder) {
pipe = 0;
 
@@ -13480,6 +13478,8 @@ static void intel_modeset_readout_hw_state(struct 
drm_device *dev)
pipe_name(pipe));
}
 
+   intel_dpll_readout_hw_state(dev_priv);
+
drm_connector_list_iter_begin(dev, _iter);
for_each_intel_connector_iter(connector, _iter) {
if (connector->get_hw_state(connector)) {
-- 
2.26.2

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 0/6] drm/i915: Move DDI clock readout to encoder->get_config()

2021-02-24 Thread Ville Syrjala
From: Ville Syrjälä 

The DDI clock readout has no business being in
hsw_get_pipe_config(). Let's move it where it belongs,
that is encoder->get_config().

Ville Syrjälä (6):
  drm/i915: Call primary encoder's .get_config() from MST .get_config()
  drm/i915: Do intel_dpll_readout_hw_state() after encoder readout
  drm/i915: Use pipes instead crtc indices in PLL state tracking
  drm/i915: Move DDI clock readout to encoder->get_config()
  drm/i915: Add encoder->is_clock_enabled()
  drm/i915: Extend icl_sanitize_encoder_pll_mapping() to all DDI
platforms

 drivers/gpu/drm/i915/display/icl_dsi.c|  25 +-
 drivers/gpu/drm/i915/display/intel_crt.c  |   3 +-
 drivers/gpu/drm/i915/display/intel_ddi.c  | 446 +-
 drivers/gpu/drm/i915/display/intel_ddi.h  |  11 +-
 drivers/gpu/drm/i915/display/intel_display.c  | 267 +--
 .../drm/i915/display/intel_display_debugfs.c  |   4 +-
 .../drm/i915/display/intel_display_types.h|   4 +
 drivers/gpu/drm/i915/display/intel_dp_mst.c   |   2 +-
 drivers/gpu/drm/i915/display/intel_dpll_mgr.c |  48 +-
 drivers/gpu/drm/i915/display/intel_dpll_mgr.h |   8 +-
 10 files changed, 510 insertions(+), 308 deletions(-)

-- 
2.26.2

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915/tgl+: Sanitize the DDI LANES/IO and AUX power domain names

2021-02-24 Thread Imre Deak
On Mon, Feb 22, 2021 at 10:55:17PM +, Patchwork wrote:
> == Series Details ==
> 
> Series: drm/i915/tgl+: Sanitize the DDI LANES/IO and AUX power domain names
> URL   : https://patchwork.freedesktop.org/series/87299/
> State : failure

Thanks for the review pushed to -din.

The failure is unrelated to the patch, as it has no functional change.

> 
> == Summary ==
> 
> CI Bug Log - changes from CI_DRM_9795_full -> Patchwork_19717_full
> 
> 
> Summary
> ---
> 
>   **FAILURE**
> 
>   Serious unknown changes coming with Patchwork_19717_full absolutely need to 
> be
>   verified manually.
>   
>   If you think the reported changes have nothing to do with the changes
>   introduced in Patchwork_19717_full, please notify your bug team to allow 
> them
>   to document this new failure mode, which will reduce false positives in CI.
> 
>   
> 
> Possible new issues
> ---
> 
>   Here are the unknown changes that may have been introduced in 
> Patchwork_19717_full:
> 
> ### IGT changes ###
> 
>  Possible regressions 
> 
>   * igt@i915_pm_rc6_residency@rc6-idle:
> - shard-glk:  [PASS][1] -> [FAIL][2]
>[1]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9795/shard-glk7/igt@i915_pm_rc6_reside...@rc6-idle.html
>[2]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-glk1/igt@i915_pm_rc6_reside...@rc6-idle.html
> 
>   
>  Warnings 
> 
>   * igt@runner@aborted:
> - shard-kbl:  ([FAIL][3], [FAIL][4], [FAIL][5]) ([i915#2426] / 
> [i915#2505] / [i915#2724] / [i915#3002]) -> ([FAIL][6], [FAIL][7], [FAIL][8], 
> [FAIL][9], [FAIL][10]) ([i915#1814] / [i915#2292] / [i915#2505] / [i915#3002])
>[3]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9795/shard-kbl4/igt@run...@aborted.html
>[4]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9795/shard-kbl1/igt@run...@aborted.html
>[5]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9795/shard-kbl6/igt@run...@aborted.html
>[6]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-kbl4/igt@run...@aborted.html
>[7]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-kbl6/igt@run...@aborted.html
>[8]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-kbl4/igt@run...@aborted.html
>[9]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-kbl4/igt@run...@aborted.html
>[10]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-kbl7/igt@run...@aborted.html
> - shard-apl:  ([FAIL][11], [FAIL][12], [FAIL][13]) ([i915#3002]) 
> -> ([FAIL][14], [FAIL][15], [FAIL][16], [FAIL][17]) ([i915#2724] / 
> [i915#3002])
>[11]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9795/shard-apl1/igt@run...@aborted.html
>[12]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9795/shard-apl1/igt@run...@aborted.html
>[13]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9795/shard-apl3/igt@run...@aborted.html
>[14]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-apl2/igt@run...@aborted.html
>[15]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-apl6/igt@run...@aborted.html
>[16]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-apl1/igt@run...@aborted.html
>[17]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-apl1/igt@run...@aborted.html
> 
>   
> Known issues
> 
> 
>   Here are the changes found in Patchwork_19717_full that come from known 
> issues:
> 
> ### IGT changes ###
> 
>  Issues hit 
> 
>   * igt@feature_discovery@psr2:
> - shard-iclb: [PASS][18] -> [SKIP][19] ([i915#658])
>[18]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9795/shard-iclb2/igt@feature_discov...@psr2.html
>[19]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-iclb6/igt@feature_discov...@psr2.html
> 
>   * igt@gem_create@create-massive:
> - shard-snb:  NOTRUN -> [DMESG-WARN][20] ([i915#3002])
>[20]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-snb6/igt@gem_cre...@create-massive.html
> - shard-kbl:  NOTRUN -> [DMESG-WARN][21] ([i915#3002])
>[21]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-kbl7/igt@gem_cre...@create-massive.html
> 
>   * igt@gem_ctx_persistence@file:
> - shard-hsw:  NOTRUN -> [SKIP][22] ([fdo#109271] / [i915#1099])
>[22]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-hsw1/igt@gem_ctx_persiste...@file.html
> 
>   * igt@gem_ctx_persistence@legacy-engines-mixed:
> - shard-snb:  NOTRUN -> [SKIP][23] ([fdo#109271] / [i915#1099]) 
> +6 similar issues
>[23]: 
> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19717/shard-snb2/igt@gem_ctx_persiste...@legacy-engines-mixed.html
> 
>   * igt@gem_eio@unwedge-stress:
> - shard-iclb: [PASS][24] -> [TIMEOUT][25] 

[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/hdcp: Fix null pointer dereference of connector->encoder

2021-02-24 Thread Patchwork
== Series Details ==

Series: drm/i915/hdcp: Fix null pointer dereference of connector->encoder
URL   : https://patchwork.freedesktop.org/series/87328/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_9798_full -> Patchwork_19724_full


Summary
---

  **SUCCESS**

  No regressions found.

  

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@gem_ctx_persistence@legacy-engines-mixed-process:
- shard-snb:  NOTRUN -> [SKIP][1] ([fdo#109271] / [i915#1099]) +2 
similar issues
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/shard-snb7/igt@gem_ctx_persiste...@legacy-engines-mixed-process.html

  * igt@gem_ctx_shared@q-in-order:
- shard-snb:  NOTRUN -> [SKIP][2] ([fdo#109271]) +261 similar issues
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/shard-snb7/igt@gem_ctx_sha...@q-in-order.html

  * igt@gem_exec_capture@capture@rcs0:
- shard-kbl:  [PASS][3] -> [FAIL][4] ([i915#3062])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-kbl6/igt@gem_exec_capture@capt...@rcs0.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/shard-kbl7/igt@gem_exec_capture@capt...@rcs0.html

  * igt@gem_exec_fair@basic-flow@rcs0:
- shard-skl:  NOTRUN -> [SKIP][5] ([fdo#109271]) +125 similar issues
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/shard-skl4/igt@gem_exec_fair@basic-f...@rcs0.html

  * igt@gem_exec_fair@basic-pace-solo@rcs0:
- shard-kbl:  [PASS][6] -> [FAIL][7] ([i915#2842]) +1 similar issue
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-kbl2/igt@gem_exec_fair@basic-pace-s...@rcs0.html
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/shard-kbl2/igt@gem_exec_fair@basic-pace-s...@rcs0.html

  * igt@gem_exec_reloc@basic-wide-active@bcs0:
- shard-apl:  NOTRUN -> [FAIL][8] ([i915#2389]) +3 similar issues
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/shard-apl7/igt@gem_exec_reloc@basic-wide-act...@bcs0.html

  * igt@gem_exec_whisper@basic-contexts-forked-all:
- shard-glk:  [PASS][9] -> [DMESG-WARN][10] ([i915#118] / 
[i915#95]) +1 similar issue
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-glk2/igt@gem_exec_whis...@basic-contexts-forked-all.html
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/shard-glk1/igt@gem_exec_whis...@basic-contexts-forked-all.html

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

  * igt@gem_userptr_blits@input-checking:
- shard-snb:  NOTRUN -> [DMESG-WARN][12] ([i915#3002])
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/shard-snb5/igt@gem_userptr_bl...@input-checking.html

  * igt@gem_userptr_blits@process-exit-mmap@wb:
- shard-skl:  NOTRUN -> [SKIP][13] ([fdo#109271] / [i915#1699]) +3 
similar issues
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/shard-skl4/igt@gem_userptr_blits@process-exit-m...@wb.html

  * igt@gem_userptr_blits@process-exit-mmap@wc:
- shard-iclb: NOTRUN -> [SKIP][14] ([i915#1699]) +3 similar issues
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/shard-iclb6/igt@gem_userptr_blits@process-exit-m...@wc.html

  * igt@kms_big_fb@x-tiled-32bpp-rotate-90:
- shard-iclb: NOTRUN -> [SKIP][15] ([fdo#110725] / [fdo#111614])
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/shard-iclb6/igt@kms_big...@x-tiled-32bpp-rotate-90.html

  * igt@kms_big_joiner@basic:
- shard-apl:  NOTRUN -> [SKIP][16] ([fdo#109271] / [i915#2705])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/shard-apl2/igt@kms_big_joi...@basic.html

  * igt@kms_ccs@pipe-c-missing-ccs-buffer:
- shard-skl:  NOTRUN -> [SKIP][17] ([fdo#109271] / [fdo#111304])
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/shard-skl6/igt@kms_...@pipe-c-missing-ccs-buffer.html

  * igt@kms_chamelium@dp-hpd:
- shard-iclb: NOTRUN -> [SKIP][18] ([fdo#109284] / [fdo#111827]) +2 
similar issues
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/shard-iclb6/igt@kms_chamel...@dp-hpd.html

  * igt@kms_color@pipe-a-ctm-0-5:
- shard-skl:  [PASS][19] -> [DMESG-WARN][20] ([i915#1982])
   [19]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-skl8/igt@kms_co...@pipe-a-ctm-0-5.html
   [20]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/shard-skl9/igt@kms_co...@pipe-a-ctm-0-5.html

  * igt@kms_color@pipe-b-ctm-0-25:
- shard-iclb: NOTRUN -> [FAIL][21] ([i915#1149] / [i915#315]) +1 
similar issue
   [21]: 

[Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915: refactor KBL/TGL/ADLS stepping scheme

2021-02-24 Thread Patchwork
== Series Details ==

Series: drm/i915: refactor KBL/TGL/ADLS stepping scheme
URL   : https://patchwork.freedesktop.org/series/87323/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_9798_full -> Patchwork_19723_full


Summary
---

  **FAILURE**

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

  

Possible new issues
---

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

### IGT changes ###

 Possible regressions 

  * igt@gem_exec_capture@capture@bcs0:
- shard-kbl:  [PASS][1] -> [FAIL][2]
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-kbl6/igt@gem_exec_capture@capt...@bcs0.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/shard-kbl6/igt@gem_exec_capture@capt...@bcs0.html

  
Known issues


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

### IGT changes ###

 Issues hit 

  * igt@drm_mm@all@replace:
- shard-skl:  NOTRUN -> [INCOMPLETE][3] ([i915#2485])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/shard-skl9/igt@drm_mm@a...@replace.html

  * igt@feature_discovery@display-2x:
- shard-iclb: NOTRUN -> [SKIP][4] ([i915#1839])
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/shard-iclb5/igt@feature_discov...@display-2x.html

  * igt@gem_ctx_persistence@legacy-engines-mixed-process:
- shard-snb:  NOTRUN -> [SKIP][5] ([fdo#109271] / [i915#1099]) +4 
similar issues
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/shard-snb6/igt@gem_ctx_persiste...@legacy-engines-mixed-process.html

  * igt@gem_ctx_shared@q-in-order:
- shard-snb:  NOTRUN -> [SKIP][6] ([fdo#109271]) +396 similar issues
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/shard-snb6/igt@gem_ctx_sha...@q-in-order.html

  * igt@gem_exec_fair@basic-none-vip@rcs0:
- shard-iclb: NOTRUN -> [FAIL][7] ([i915#2842])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/shard-iclb5/igt@gem_exec_fair@basic-none-...@rcs0.html
- shard-glk:  [PASS][8] -> [FAIL][9] ([i915#2842])
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-glk5/igt@gem_exec_fair@basic-none-...@rcs0.html
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/shard-glk7/igt@gem_exec_fair@basic-none-...@rcs0.html

  * igt@gem_exec_fair@basic-none@vcs0:
- shard-kbl:  NOTRUN -> [FAIL][10] ([i915#2842])
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/shard-kbl6/igt@gem_exec_fair@basic-n...@vcs0.html

  * igt@gem_exec_fair@basic-pace@rcs0:
- shard-kbl:  [PASS][11] -> [FAIL][12] ([i915#2842]) +1 similar 
issue
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-kbl1/igt@gem_exec_fair@basic-p...@rcs0.html
   [12]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/shard-kbl6/igt@gem_exec_fair@basic-p...@rcs0.html

  * igt@gem_exec_fair@basic-pace@vcs1:
- shard-kbl:  [PASS][13] -> [SKIP][14] ([fdo#109271])
   [13]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-kbl1/igt@gem_exec_fair@basic-p...@vcs1.html
   [14]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/shard-kbl6/igt@gem_exec_fair@basic-p...@vcs1.html

  * igt@gem_exec_reloc@basic-wide-active@bcs0:
- shard-apl:  NOTRUN -> [FAIL][15] ([i915#2389]) +3 similar issues
   [15]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/shard-apl1/igt@gem_exec_reloc@basic-wide-act...@bcs0.html

  * igt@gem_exec_schedule@u-fairslice@vcs0:
- shard-skl:  NOTRUN -> [DMESG-WARN][16] ([i915#1610] / [i915#2803])
   [16]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/shard-skl8/igt@gem_exec_schedule@u-fairsl...@vcs0.html

  * igt@gem_exec_whisper@basic-queues-priority:
- shard-glk:  [PASS][17] -> [DMESG-WARN][18] ([i915#118] / 
[i915#95])
   [17]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/shard-glk1/igt@gem_exec_whis...@basic-queues-priority.html
   [18]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/shard-glk3/igt@gem_exec_whis...@basic-queues-priority.html

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

  * igt@gem_userptr_blits@input-checking:
- shard-snb:  NOTRUN -> [DMESG-WARN][20] ([i915#3002])
   [20]: 

Re: [Intel-gfx] [PATCH] drm/i915: Promote ptrdiff() to i915_utils.h

2021-02-24 Thread Tvrtko Ursulin



On 24/02/2021 10:35, Michal Wajdeczko wrote:

Generic helpers should be placed in i915_utils.h.

Signed-off-by: Michal Wajdeczko 
Cc: Tvrtko Ursulin 
Cc: Chris Wilson 
Cc: Matthew Brost 
---
  drivers/gpu/drm/i915/i915_utils.h | 5 +
  drivers/gpu/drm/i915/i915_vma.h   | 5 -
  2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_utils.h 
b/drivers/gpu/drm/i915/i915_utils.h
index 4618fe8aacb5..5bca71c90fe1 100644
--- a/drivers/gpu/drm/i915/i915_utils.h
+++ b/drivers/gpu/drm/i915/i915_utils.h
@@ -201,6 +201,11 @@ __check_struct_size(size_t base, size_t arr, size_t count, 
size_t *size)
__T;\
  })
  
+static __always_inline ptrdiff_t ptrdiff(const void *a, const void *b)

+{
+   return a - b;
+}
+
  /*
   * container_of_user: Extract the superclass from a pointer to a member.
   *
diff --git a/drivers/gpu/drm/i915/i915_vma.h b/drivers/gpu/drm/i915/i915_vma.h
index a64adc8c883b..aed8e5bc233c 100644
--- a/drivers/gpu/drm/i915/i915_vma.h
+++ b/drivers/gpu/drm/i915/i915_vma.h
@@ -143,11 +143,6 @@ static inline void i915_vma_put(struct i915_vma *vma)
i915_gem_object_put(vma->obj);
  }
  
-static __always_inline ptrdiff_t ptrdiff(const void *a, const void *b)

-{
-   return a - b;
-}
-
  static inline long
  i915_vma_compare(struct i915_vma *vma,
 struct i915_address_space *vm,



Reviewed-by: Tvrtko Ursulin 

Regards,

Tvrtko
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/hdcp: Fix null pointer dereference of connector->encoder

2021-02-24 Thread Patchwork
== Series Details ==

Series: drm/i915/hdcp: Fix null pointer dereference of connector->encoder
URL   : https://patchwork.freedesktop.org/series/87328/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_9798 -> Patchwork_19724


Summary
---

  **SUCCESS**

  No regressions found.

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

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@debugfs_test@read_all_entries:
- fi-tgl-y:   [PASS][1] -> [DMESG-WARN][2] ([i915#402]) +2 similar 
issues
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-tgl-y/igt@debugfs_test@read_all_entries.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/fi-tgl-y/igt@debugfs_test@read_all_entries.html

  * igt@kms_chamelium@dp-crc-fast:
- fi-kbl-7500u:   [PASS][3] -> [FAIL][4] ([i915#1372])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-kbl-7500u/igt@kms_chamel...@dp-crc-fast.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/fi-kbl-7500u/igt@kms_chamel...@dp-crc-fast.html

  * igt@kms_chamelium@hdmi-edid-read:
- fi-kbl-7500u:   [PASS][5] -> [FAIL][6] ([i915#2128])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-kbl-7500u/igt@kms_chamel...@hdmi-edid-read.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/fi-kbl-7500u/igt@kms_chamel...@hdmi-edid-read.html

  
 Possible fixes 

  * igt@i915_hangman@error-state-basic:
- fi-tgl-y:   [DMESG-WARN][7] ([i915#402]) -> [PASS][8] +1 similar 
issue
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-tgl-y/igt@i915_hang...@error-state-basic.html
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/fi-tgl-y/igt@i915_hang...@error-state-basic.html

  
  [i915#1372]: https://gitlab.freedesktop.org/drm/intel/issues/1372
  [i915#2128]: https://gitlab.freedesktop.org/drm/intel/issues/2128
  [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402


Participating hosts (45 -> 40)
--

  Missing(5): fi-ilk-m540 fi-hsw-4200u fi-byt-j1900 fi-bsw-cyan 
fi-bdw-samus 


Build changes
-

  * Linux: CI_DRM_9798 -> Patchwork_19724

  CI-20190529: 20190529
  CI_DRM_9798: 70e2e79cd772b97799f4cecd823539f452063562 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_6013: a6c7181747850161377dae5161d33c0675ab273e @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_19724: e9a297a6e1b1aa940dc8435fe5f887134b61f04a @ 
git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

e9a297a6e1b1 drm/i915/hdcp: Fix null pointer dereference of connector->encoder

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19724/index.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH] drm/i915: Promote ptrdiff() to i915_utils.h

2021-02-24 Thread Michal Wajdeczko
Generic helpers should be placed in i915_utils.h.

Signed-off-by: Michal Wajdeczko 
Cc: Tvrtko Ursulin 
Cc: Chris Wilson 
Cc: Matthew Brost 
---
 drivers/gpu/drm/i915/i915_utils.h | 5 +
 drivers/gpu/drm/i915/i915_vma.h   | 5 -
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_utils.h 
b/drivers/gpu/drm/i915/i915_utils.h
index 4618fe8aacb5..5bca71c90fe1 100644
--- a/drivers/gpu/drm/i915/i915_utils.h
+++ b/drivers/gpu/drm/i915/i915_utils.h
@@ -201,6 +201,11 @@ __check_struct_size(size_t base, size_t arr, size_t count, 
size_t *size)
__T;\
 })
 
+static __always_inline ptrdiff_t ptrdiff(const void *a, const void *b)
+{
+   return a - b;
+}
+
 /*
  * container_of_user: Extract the superclass from a pointer to a member.
  *
diff --git a/drivers/gpu/drm/i915/i915_vma.h b/drivers/gpu/drm/i915/i915_vma.h
index a64adc8c883b..aed8e5bc233c 100644
--- a/drivers/gpu/drm/i915/i915_vma.h
+++ b/drivers/gpu/drm/i915/i915_vma.h
@@ -143,11 +143,6 @@ static inline void i915_vma_put(struct i915_vma *vma)
i915_gem_object_put(vma->obj);
 }
 
-static __always_inline ptrdiff_t ptrdiff(const void *a, const void *b)
-{
-   return a - b;
-}
-
 static inline long
 i915_vma_compare(struct i915_vma *vma,
 struct i915_address_space *vm,
-- 
2.25.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PULL] drm-misc-fixes

2021-02-24 Thread Thomas Zimmermann
Hi Dave and Daniel,

here's this week's PR for drm-misc-fixes. One of the patches is a memory
leak; the rest is for hardware issues.

Best regards
Thomas

drm-misc-fixes-2021-02-24:
 * drm/panel: kd35t133: Work with non-continuous DSI clock
 * drm/rockchip: Require YTR modifier for AFBC
 * drm/ttm: Fix a memory leak in error handling
The following changes since commit f40ddce88593482919761f74910f42f4b84c004b:

  Linux 5.11 (2021-02-14 14:32:24 -0800)

are available in the Git repository at:

  git://anongit.freedesktop.org/drm/drm-misc tags/drm-misc-fixes-2021-02-24

for you to fetch changes up to 54dab3a718f7094532daf7d25cd14121a0e00e34:

  drm/panel: kd35t133: allow using non-continuous dsi clock (2021-02-23 
22:44:58 +0100)


 * drm/panel: kd35t133: Work with non-continuous DSI clock
 * drm/rockchip: Require YTR modifier for AFBC
 * drm/ttm: Fix a memory leak in error handling


Alyssa Rosenzweig (1):
  drm/rockchip: Require the YTR modifier for AFBC

Heiko Stuebner (1):
  drm/panel: kd35t133: allow using non-continuous dsi clock

xinhui pan (1):
  drm/ttm: Fix a memory leak

 drivers/gpu/drm/panel/panel-elida-kd35t133.c |  3 ++-
 drivers/gpu/drm/rockchip/rockchip_drm_vop.h  | 11 +++
 drivers/gpu/drm/ttm/ttm_bo.c |  9 ++---
 3 files changed, 19 insertions(+), 4 deletions(-)

--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Felix Imendörffer
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: refactor KBL/TGL/ADLS stepping scheme

2021-02-24 Thread Patchwork
== Series Details ==

Series: drm/i915: refactor KBL/TGL/ADLS stepping scheme
URL   : https://patchwork.freedesktop.org/series/87323/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_9798 -> Patchwork_19723


Summary
---

  **SUCCESS**

  No regressions found.

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

Known issues


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

### IGT changes ###

 Issues hit 

  * igt@fbdev@read:
- fi-tgl-y:   [PASS][1] -> [DMESG-WARN][2] ([i915#402]) +1 similar 
issue
   [1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-tgl-y/igt@fb...@read.html
   [2]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/fi-tgl-y/igt@fb...@read.html

  * igt@i915_pm_rpm@module-reload:
- fi-byt-j1900:   [PASS][3] -> [INCOMPLETE][4] ([i915#142] / 
[i915#2405])
   [3]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-byt-j1900/igt@i915_pm_...@module-reload.html
   [4]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/fi-byt-j1900/igt@i915_pm_...@module-reload.html

  * igt@i915_selftest@live@execlists:
- fi-bsw-nick:[PASS][5] -> [INCOMPLETE][6] ([i915#2940])
   [5]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-bsw-nick/igt@i915_selftest@l...@execlists.html
   [6]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/fi-bsw-nick/igt@i915_selftest@l...@execlists.html

  * igt@runner@aborted:
- fi-bsw-nick:NOTRUN -> [FAIL][7] ([i915#1436] / [i915#2722])
   [7]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/fi-bsw-nick/igt@run...@aborted.html
- fi-bdw-5557u:   NOTRUN -> [FAIL][8] ([i915#1602] / [i915#2029] / 
[i915#2369])
   [8]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/fi-bdw-5557u/igt@run...@aborted.html
- fi-byt-j1900:   NOTRUN -> [FAIL][9] ([i915#1814] / [i915#2505])
   [9]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/fi-byt-j1900/igt@run...@aborted.html

  
 Possible fixes 

  * igt@i915_hangman@error-state-basic:
- fi-tgl-y:   [DMESG-WARN][10] ([i915#402]) -> [PASS][11]
   [10]: 
https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_9798/fi-tgl-y/igt@i915_hang...@error-state-basic.html
   [11]: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/fi-tgl-y/igt@i915_hang...@error-state-basic.html

  
  [i915#142]: https://gitlab.freedesktop.org/drm/intel/issues/142
  [i915#1436]: https://gitlab.freedesktop.org/drm/intel/issues/1436
  [i915#1602]: https://gitlab.freedesktop.org/drm/intel/issues/1602
  [i915#1814]: https://gitlab.freedesktop.org/drm/intel/issues/1814
  [i915#2029]: https://gitlab.freedesktop.org/drm/intel/issues/2029
  [i915#2369]: https://gitlab.freedesktop.org/drm/intel/issues/2369
  [i915#2405]: https://gitlab.freedesktop.org/drm/intel/issues/2405
  [i915#2505]: https://gitlab.freedesktop.org/drm/intel/issues/2505
  [i915#2722]: https://gitlab.freedesktop.org/drm/intel/issues/2722
  [i915#2940]: https://gitlab.freedesktop.org/drm/intel/issues/2940
  [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402


Participating hosts (45 -> 39)
--

  Missing(6): fi-cml-u2 fi-ilk-m540 fi-hsw-4200u fi-bsw-cyan fi-kbl-7500u 
fi-bdw-samus 


Build changes
-

  * Linux: CI_DRM_9798 -> Patchwork_19723

  CI-20190529: 20190529
  CI_DRM_9798: 70e2e79cd772b97799f4cecd823539f452063562 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_6013: a6c7181747850161377dae5161d33c0675ab273e @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_19723: 7317a17b497ddf475363e35ee10df22c4b819699 @ 
git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

7317a17b497d drm/i915: rename disp_stepping->display_step and 
gt_stepping->gt_step
9ea2f25d6c52 drm/i915: rename DISP_STEPPING->DISPLAY_STEP and 
GT_STEPPING->GT_STEP
b00cf6262f47 drm/i915: switch TGL and ADL to the new stepping scheme
8ea29c76e36c drm/i915: switch KBL to the new stepping scheme
9f0ab3110d6b drm/i915: add new helpers for accessing stepping info
6679d541fc02 drm/i915: split out stepping info to a new file
c850cee093c5 drm/i915: remove unused ADLS_REVID_* macros

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_19723/index.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: refactor KBL/TGL/ADLS stepping scheme

2021-02-24 Thread Patchwork
== Series Details ==

Series: drm/i915: refactor KBL/TGL/ADLS stepping scheme
URL   : https://patchwork.freedesktop.org/series/87323/
State : warning

== Summary ==

$ dim checkpatch origin/drm-tip
c850cee093c5 drm/i915: remove unused ADLS_REVID_* macros
6679d541fc02 drm/i915: split out stepping info to a new file
-:117: WARNING:FILE_PATH_CHANGES: added, moved or deleted file(s), does 
MAINTAINERS need updating?
#117: 
new file mode 100644

total: 0 errors, 1 warnings, 0 checks, 158 lines checked
9f0ab3110d6b drm/i915: add new helpers for accessing stepping info
-:28: CHECK:MACRO_ARG_REUSE: Macro argument reuse '__i915' - possible 
side-effects?
#28: FILE: drivers/gpu/drm/i915/i915_drv.h:1280:
+#define IS_DISPLAY_STEP(__i915, since, until) \
+   (drm_WARN_ON(&(__i915)->drm, INTEL_DISPLAY_STEP(__i915) == STEP_NONE), \
+INTEL_DISPLAY_STEP(__i915) >= (since) && INTEL_DISPLAY_STEP(__i915) <= 
(until))

-:32: CHECK:MACRO_ARG_REUSE: Macro argument reuse '__i915' - possible 
side-effects?
#32: FILE: drivers/gpu/drm/i915/i915_drv.h:1284:
+#define IS_GT_STEP(__i915, since, until) \
+   (drm_WARN_ON(&(__i915)->drm, INTEL_GT_STEP(__i915) == STEP_NONE), \
+INTEL_GT_STEP(__i915) >= (since) && INTEL_GT_STEP(__i915) <= (until))

total: 0 errors, 0 warnings, 2 checks, 70 lines checked
8ea29c76e36c drm/i915: switch KBL to the new stepping scheme
-:106: CHECK:MACRO_ARG_REUSE: Macro argument reuse 'dev_priv' - possible 
side-effects?
#106: FILE: drivers/gpu/drm/i915/i915_drv.h:1478:
+#define IS_KBL_GT_STEP(dev_priv, since, until) \
+   (IS_KABYLAKE(dev_priv) && IS_GT_STEP(dev_priv, since, until))

-:108: CHECK:MACRO_ARG_REUSE: Macro argument reuse 'dev_priv' - possible 
side-effects?
#108: FILE: drivers/gpu/drm/i915/i915_drv.h:1480:
+#define IS_KBL_DISPLAY_STEP(dev_priv, since, until) \
+   (IS_KABYLAKE(dev_priv) && IS_DISPLAY_STEP(dev_priv, since, until))

-:149: CHECK:LINE_SPACING: Please don't use multiple blank lines
#149: FILE: drivers/gpu/drm/i915/intel_stepping.c:16:
 
+

total: 0 errors, 0 warnings, 3 checks, 198 lines checked
b00cf6262f47 drm/i915: switch TGL and ADL to the new stepping scheme
-:52: CHECK:MACRO_ARG_REUSE: Macro argument reuse '__i915' - possible 
side-effects?
#52: FILE: drivers/gpu/drm/i915/i915_drv.h:1513:
+#define IS_TGL_DISP_STEPPING(__i915, since, until) \
+   (IS_TIGERLAKE(__i915) && \
+IS_DISPLAY_STEP(__i915, since, until))

-:60: CHECK:MACRO_ARG_REUSE: Macro argument reuse '__i915' - possible 
side-effects?
#60: FILE: drivers/gpu/drm/i915/i915_drv.h:1517:
+#define IS_TGL_UY_GT_STEPPING(__i915, since, until) \
+   ((IS_TGL_U(__i915) || IS_TGL_Y(__i915)) && \
+IS_GT_STEP(__i915, since, until))

-:69: CHECK:MACRO_ARG_REUSE: Macro argument reuse '__i915' - possible 
side-effects?
#69: FILE: drivers/gpu/drm/i915/i915_drv.h:1521:
+#define IS_TGL_GT_STEPPING(__i915, since, until) \
+   (IS_TIGERLAKE(__i915) && !(IS_TGL_U(__i915) || IS_TGL_Y(__i915)) && \
+IS_GT_STEP(__i915, since, until))

-:83: CHECK:MACRO_ARG_REUSE: Macro argument reuse '__i915' - possible 
side-effects?
#83: FILE: drivers/gpu/drm/i915/i915_drv.h:1538:
+#define IS_ADLS_DISP_STEPPING(__i915, since, until) \
+   (IS_ALDERLAKE_S(__i915) && \
+IS_DISPLAY_STEP(__i915, since, until))

-:91: CHECK:MACRO_ARG_REUSE: Macro argument reuse '__i915' - possible 
side-effects?
#91: FILE: drivers/gpu/drm/i915/i915_drv.h:1542:
+#define IS_ADLS_GT_STEPPING(__i915, since, until) \
+   (IS_ALDERLAKE_S(__i915) && \
+IS_GT_STEP(__i915, since, until))

total: 0 errors, 0 warnings, 5 checks, 127 lines checked
9ea2f25d6c52 drm/i915: rename DISP_STEPPING->DISPLAY_STEP and 
GT_STEPPING->GT_STEP
-:113: CHECK:MACRO_ARG_REUSE: Macro argument reuse '__i915' - possible 
side-effects?
#113: FILE: drivers/gpu/drm/i915/i915_drv.h:1513:
+#define IS_TGL_DISPLAY_STEP(__i915, since, until) \
(IS_TIGERLAKE(__i915) && \
 IS_DISPLAY_STEP(__i915, since, until))

-:118: CHECK:MACRO_ARG_REUSE: Macro argument reuse '__i915' - possible 
side-effects?
#118: FILE: drivers/gpu/drm/i915/i915_drv.h:1517:
+#define IS_TGL_UY_GT_STEP(__i915, since, until) \
((IS_TGL_U(__i915) || IS_TGL_Y(__i915)) && \
 IS_GT_STEP(__i915, since, until))

-:123: CHECK:MACRO_ARG_REUSE: Macro argument reuse '__i915' - possible 
side-effects?
#123: FILE: drivers/gpu/drm/i915/i915_drv.h:1521:
+#define IS_TGL_GT_STEP(__i915, since, until) \
(IS_TIGERLAKE(__i915) && !(IS_TGL_U(__i915) || IS_TGL_Y(__i915)) && \
 IS_GT_STEP(__i915, since, until))

-:132: CHECK:MACRO_ARG_REUSE: Macro argument reuse '__i915' - possible 
side-effects?
#132: FILE: drivers/gpu/drm/i915/i915_drv.h:1538:
+#define IS_ADLS_DISPLAY_STEP(__i915, since, until) \
(IS_ALDERLAKE_S(__i915) && \
 IS_DISPLAY_STEP(__i915, since, until))

-:137: CHECK:MACRO_ARG_REUSE: Macro argument reuse '__i915' - possible 
side-effects?
#137: FILE: drivers/gpu/drm/i915/i915_drv.h:1542:
+#define 

Re: [Intel-gfx] [Linaro-mm-sig] [PATCH 1/2] dma-buf: Require VM_PFNMAP vma for mmap

2021-02-24 Thread Daniel Vetter
On Wed, Feb 24, 2021 at 10:16 AM Thomas Hellström (Intel)
 wrote:
>
>
> On 2/24/21 9:45 AM, Daniel Vetter wrote:
> > On Wed, Feb 24, 2021 at 8:46 AM Thomas Hellström (Intel)
> >  wrote:
> >>
> >> On 2/23/21 11:59 AM, Daniel Vetter wrote:
> >>> tldr; DMA buffers aren't normal memory, expecting that you can use
> >>> them like that (like calling get_user_pages works, or that they're
> >>> accounting like any other normal memory) cannot be guaranteed.
> >>>
> >>> Since some userspace only runs on integrated devices, where all
> >>> buffers are actually all resident system memory, there's a huge
> >>> temptation to assume that a struct page is always present and useable
> >>> like for any more pagecache backed mmap. This has the potential to
> >>> result in a uapi nightmare.
> >>>
> >>> To stop this gap require that DMA buffer mmaps are VM_PFNMAP, which
> >>> blocks get_user_pages and all the other struct page based
> >>> infrastructure for everyone. In spirit this is the uapi counterpart to
> >>> the kernel-internal CONFIG_DMABUF_DEBUG.
> >>>
> >>> Motivated by a recent patch which wanted to swich the system dma-buf
> >>> heap to vm_insert_page instead of vm_insert_pfn.
> >>>
> >>> v2:
> >>>
> >>> Jason brought up that we also want to guarantee that all ptes have the
> >>> pte_special flag set, to catch fast get_user_pages (on architectures
> >>> that support this). Allowing VM_MIXEDMAP (like VM_SPECIAL does) would
> >>> still allow vm_insert_page, but limiting to VM_PFNMAP will catch that.
> >>>
> >>>   From auditing the various functions to insert pfn pte entires
> >>> (vm_insert_pfn_prot, remap_pfn_range and all it's callers like
> >>> dma_mmap_wc) it looks like VM_PFNMAP is already required anyway, so
> >>> this should be the correct flag to check for.
> >>>
> >> If we require VM_PFNMAP, for ordinary page mappings, we also need to
> >> disallow COW mappings, since it will not work on architectures that
> >> don't have CONFIG_ARCH_HAS_PTE_SPECIAL, (see the docs for 
> >> vm_normal_page()).
> > Hm I figured everyone just uses MAP_SHARED for buffer objects since
> > COW really makes absolutely no sense. How would we enforce this?
>
> Perhaps returning -EINVAL on is_cow_mapping() at mmap time. Either that
> or allowing MIXEDMAP.
>
> >> Also worth noting is the comment in  ttm_bo_mmap_vma_setup() with
> >> possible performance implications with x86 + PAT + VM_PFNMAP + normal
> >> pages. That's a very old comment, though, and might not be valid anymore.
> > I think that's why ttm has a page cache for these, because it indeed
> > sucks. The PAT changes on pages are rather expensive.
>
> IIRC the page cache was implemented because of the slowness of the
> caching mode transition itself, more specifically the wbinvd() call +
> global TLB flush.
>
> >
> > There is still an issue for iomem mappings, because the PAT validation
> > does a linear walk of the resource tree (lol) for every vm_insert_pfn.
> > But for i915 at least this is fixed by using the io_mapping
> > infrastructure, which does the PAT reservation only once when you set
> > up the mapping area at driver load.
>
> Yes, I guess that was the issue that the comment describes, but the
> issue wasn't there with vm_insert_mixed() + VM_MIXEDMAP.
>
> >
> > Also TTM uses VM_PFNMAP right now for everything, so it can't be a
> > problem that hurts much :-)
>
> Hmm, both 5.11 and drm-tip appears to still use MIXEDMAP?
>
> https://elixir.bootlin.com/linux/latest/source/drivers/gpu/drm/ttm/ttm_bo_vm.c#L554

Uh that's bad, because mixed maps pointing at struct page wont stop
gup. At least afaik.

Christian, do we need to patch this up, and maybe fix up ttm fault
handler to use io_mapping so the vm_insert_pfn stuff is fast?
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [Linaro-mm-sig] [PATCH 1/2] dma-buf: Require VM_PFNMAP vma for mmap

2021-02-24 Thread Intel


On 2/24/21 9:45 AM, Daniel Vetter wrote:

On Wed, Feb 24, 2021 at 8:46 AM Thomas Hellström (Intel)
 wrote:


On 2/23/21 11:59 AM, Daniel Vetter wrote:

tldr; DMA buffers aren't normal memory, expecting that you can use
them like that (like calling get_user_pages works, or that they're
accounting like any other normal memory) cannot be guaranteed.

Since some userspace only runs on integrated devices, where all
buffers are actually all resident system memory, there's a huge
temptation to assume that a struct page is always present and useable
like for any more pagecache backed mmap. This has the potential to
result in a uapi nightmare.

To stop this gap require that DMA buffer mmaps are VM_PFNMAP, which
blocks get_user_pages and all the other struct page based
infrastructure for everyone. In spirit this is the uapi counterpart to
the kernel-internal CONFIG_DMABUF_DEBUG.

Motivated by a recent patch which wanted to swich the system dma-buf
heap to vm_insert_page instead of vm_insert_pfn.

v2:

Jason brought up that we also want to guarantee that all ptes have the
pte_special flag set, to catch fast get_user_pages (on architectures
that support this). Allowing VM_MIXEDMAP (like VM_SPECIAL does) would
still allow vm_insert_page, but limiting to VM_PFNMAP will catch that.

  From auditing the various functions to insert pfn pte entires
(vm_insert_pfn_prot, remap_pfn_range and all it's callers like
dma_mmap_wc) it looks like VM_PFNMAP is already required anyway, so
this should be the correct flag to check for.


If we require VM_PFNMAP, for ordinary page mappings, we also need to
disallow COW mappings, since it will not work on architectures that
don't have CONFIG_ARCH_HAS_PTE_SPECIAL, (see the docs for vm_normal_page()).

Hm I figured everyone just uses MAP_SHARED for buffer objects since
COW really makes absolutely no sense. How would we enforce this?


Perhaps returning -EINVAL on is_cow_mapping() at mmap time. Either that 
or allowing MIXEDMAP.



Also worth noting is the comment in  ttm_bo_mmap_vma_setup() with
possible performance implications with x86 + PAT + VM_PFNMAP + normal
pages. That's a very old comment, though, and might not be valid anymore.

I think that's why ttm has a page cache for these, because it indeed
sucks. The PAT changes on pages are rather expensive.


IIRC the page cache was implemented because of the slowness of the 
caching mode transition itself, more specifically the wbinvd() call + 
global TLB flush.




There is still an issue for iomem mappings, because the PAT validation
does a linear walk of the resource tree (lol) for every vm_insert_pfn.
But for i915 at least this is fixed by using the io_mapping
infrastructure, which does the PAT reservation only once when you set
up the mapping area at driver load.


Yes, I guess that was the issue that the comment describes, but the 
issue wasn't there with vm_insert_mixed() + VM_MIXEDMAP.




Also TTM uses VM_PFNMAP right now for everything, so it can't be a
problem that hurts much :-)


Hmm, both 5.11 and drm-tip appears to still use MIXEDMAP?

https://elixir.bootlin.com/linux/latest/source/drivers/gpu/drm/ttm/ttm_bo_vm.c#L554


-Daniel


/Thomas


___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH v2 6/7] drm/i915: rename DISP_STEPPING->DISPLAY_STEP and GT_STEPPING->GT_STEP

2021-02-24 Thread Jani Nikula
On Tue, 23 Feb 2021, Lucas De Marchi  wrote:
> On Tue, Feb 23, 2021 at 05:35:11PM +0200, Jani Nikula wrote:
>>Matter of taste. STEP matches the enums.
>>
>>Signed-off-by: Jani Nikula 
>>---
>> drivers/gpu/drm/i915/display/intel_display_power.c |  2 +-
>> drivers/gpu/drm/i915/display/intel_psr.c   |  4 ++--
>> drivers/gpu/drm/i915/display/skl_universal_plane.c |  2 +-
>> drivers/gpu/drm/i915/gt/intel_workarounds.c| 10 +-
>> drivers/gpu/drm/i915/i915_drv.h| 10 +-
>> drivers/gpu/drm/i915/intel_device_info.c   |  2 +-
>> drivers/gpu/drm/i915/intel_pm.c|  2 +-
>> 7 files changed, 16 insertions(+), 16 deletions(-)
>>
>>diff --git a/drivers/gpu/drm/i915/display/intel_display_power.c 
>>b/drivers/gpu/drm/i915/display/intel_display_power.c
>>index f00c1750febd..1f7b2700947a 100644
>>--- a/drivers/gpu/drm/i915/display/intel_display_power.c
>>+++ b/drivers/gpu/drm/i915/display/intel_display_power.c
>>@@ -5349,7 +5349,7 @@ static void tgl_bw_buddy_init(struct drm_i915_private 
>>*dev_priv)
>>
>>  if (IS_ALDERLAKE_S(dev_priv) ||
>>  IS_DG1_REVID(dev_priv, DG1_REVID_A0, DG1_REVID_A0) ||
>>- IS_TGL_DISP_STEPPING(dev_priv, STEP_A0, STEP_B0))
>>+ IS_TGL_DISPLAY_STEP(dev_priv, STEP_A0, STEP_B0))
>>  /* Wa_1409767108:tgl,dg1,adl-s */
>>  table = wa_1409767108_buddy_page_masks;
>>  else
>>diff --git a/drivers/gpu/drm/i915/display/intel_psr.c 
>>b/drivers/gpu/drm/i915/display/intel_psr.c
>>index 7c6e561f86c1..da5084b54eb6 100644
>>--- a/drivers/gpu/drm/i915/display/intel_psr.c
>>+++ b/drivers/gpu/drm/i915/display/intel_psr.c
>>@@ -548,7 +548,7 @@ static void hsw_activate_psr2(struct intel_dp *intel_dp)
>>
>>  if (intel_dp->psr.psr2_sel_fetch_enabled) {
>>  /* WA 1408330847 */
>>- if (IS_TGL_DISP_STEPPING(dev_priv, STEP_A0, STEP_A0) ||
>>+ if (IS_TGL_DISPLAY_STEP(dev_priv, STEP_A0, STEP_A0) ||
>
> I always hated the DISP vs DISPLAY. It should be in the commit message.
>
> But if you are doing the s/STEPPING/STEP/, shouldn't the filename also use
> step and all the functions/structs?

To be honest, the rename came as an afterthought, after Aditya (I think)
added the STEP_X enums.

For me step everywhere sounds good, I wonder what the native speakers
think.


BR,
Jani.


>
> Lucas De Marchi
>
>>  IS_RKL_REVID(dev_priv, RKL_REVID_A0, RKL_REVID_A0))
>>  intel_de_rmw(dev_priv, CHICKEN_PAR1_1,
>>   DIS_RAM_BYPASS_PSR2_MAN_TRACK,
>>@@ -1103,7 +1103,7 @@ static void intel_psr_disable_locked(struct intel_dp 
>>*intel_dp)
>>
>>  /* WA 1408330847 */
>>  if (intel_dp->psr.psr2_sel_fetch_enabled &&
>>- (IS_TGL_DISP_STEPPING(dev_priv, STEP_A0, STEP_A0) ||
>>+ (IS_TGL_DISPLAY_STEP(dev_priv, STEP_A0, STEP_A0) ||
>>   IS_RKL_REVID(dev_priv, RKL_REVID_A0, RKL_REVID_A0)))
>>  intel_de_rmw(dev_priv, CHICKEN_PAR1_1,
>>   DIS_RAM_BYPASS_PSR2_MAN_TRACK, 0);
>>diff --git a/drivers/gpu/drm/i915/display/skl_universal_plane.c 
>>b/drivers/gpu/drm/i915/display/skl_universal_plane.c
>>index 1f335cb09149..c4edfc673d47 100644
>>--- a/drivers/gpu/drm/i915/display/skl_universal_plane.c
>>+++ b/drivers/gpu/drm/i915/display/skl_universal_plane.c
>>@@ -1858,7 +1858,7 @@ static bool gen12_plane_supports_mc_ccs(struct 
>>drm_i915_private *dev_priv,
>> {
>>  /* Wa_14010477008:tgl[a0..c0],rkl[all],dg1[all] */
>>  if (IS_DG1(dev_priv) || IS_ROCKETLAKE(dev_priv) ||
>>- IS_TGL_DISP_STEPPING(dev_priv, STEP_A0, STEP_C0))
>>+ IS_TGL_DISPLAY_STEP(dev_priv, STEP_A0, STEP_C0))
>>  return false;
>>
>>  return plane_id < PLANE_SPRITE4;
>>diff --git a/drivers/gpu/drm/i915/gt/intel_workarounds.c 
>>b/drivers/gpu/drm/i915/gt/intel_workarounds.c
>>index 0c502a733779..4f8f9fbf6619 100644
>>--- a/drivers/gpu/drm/i915/gt/intel_workarounds.c
>>+++ b/drivers/gpu/drm/i915/gt/intel_workarounds.c
>>@@ -1091,19 +1091,19 @@ tgl_gt_workarounds_init(struct drm_i915_private 
>>*i915, struct i915_wa_list *wal)
>>  gen12_gt_workarounds_init(i915, wal);
>>
>>  /* Wa_1409420604:tgl */
>>- if (IS_TGL_UY_GT_STEPPING(i915, STEP_A0, STEP_A0))
>>+ if (IS_TGL_UY_GT_STEP(i915, STEP_A0, STEP_A0))
>>  wa_write_or(wal,
>>  SUBSLICE_UNIT_LEVEL_CLKGATE2,
>>  CPSSUNIT_CLKGATE_DIS);
>>
>>  /* Wa_1607087056:tgl also know as BUG:1409180338 */
>>- if (IS_TGL_UY_GT_STEPPING(i915, STEP_A0, STEP_A0))
>>+ if (IS_TGL_UY_GT_STEP(i915, STEP_A0, STEP_A0))
>>  wa_write_or(wal,
>>  SLICE_UNIT_LEVEL_CLKGATE,
>>  L3_CLKGATE_DIS | L3_CR2X_CLKGATE_DIS);
>>
>>  /* Wa_1408615072:tgl[a0] */
>>- if (IS_TGL_UY_GT_STEPPING(i915, STEP_A0, STEP_A0))
>>+ if (IS_TGL_UY_GT_STEP(i915, STEP_A0, STEP_A0))
>>  wa_write_or(wal, 

Re: [Intel-gfx] [Linaro-mm-sig] [PATCH 1/2] dma-buf: Require VM_PFNMAP vma for mmap

2021-02-24 Thread Daniel Vetter
On Wed, Feb 24, 2021 at 8:46 AM Thomas Hellström (Intel)
 wrote:
>
>
> On 2/23/21 11:59 AM, Daniel Vetter wrote:
> > tldr; DMA buffers aren't normal memory, expecting that you can use
> > them like that (like calling get_user_pages works, or that they're
> > accounting like any other normal memory) cannot be guaranteed.
> >
> > Since some userspace only runs on integrated devices, where all
> > buffers are actually all resident system memory, there's a huge
> > temptation to assume that a struct page is always present and useable
> > like for any more pagecache backed mmap. This has the potential to
> > result in a uapi nightmare.
> >
> > To stop this gap require that DMA buffer mmaps are VM_PFNMAP, which
> > blocks get_user_pages and all the other struct page based
> > infrastructure for everyone. In spirit this is the uapi counterpart to
> > the kernel-internal CONFIG_DMABUF_DEBUG.
> >
> > Motivated by a recent patch which wanted to swich the system dma-buf
> > heap to vm_insert_page instead of vm_insert_pfn.
> >
> > v2:
> >
> > Jason brought up that we also want to guarantee that all ptes have the
> > pte_special flag set, to catch fast get_user_pages (on architectures
> > that support this). Allowing VM_MIXEDMAP (like VM_SPECIAL does) would
> > still allow vm_insert_page, but limiting to VM_PFNMAP will catch that.
> >
> >  From auditing the various functions to insert pfn pte entires
> > (vm_insert_pfn_prot, remap_pfn_range and all it's callers like
> > dma_mmap_wc) it looks like VM_PFNMAP is already required anyway, so
> > this should be the correct flag to check for.
> >
> If we require VM_PFNMAP, for ordinary page mappings, we also need to
> disallow COW mappings, since it will not work on architectures that
> don't have CONFIG_ARCH_HAS_PTE_SPECIAL, (see the docs for vm_normal_page()).

Hm I figured everyone just uses MAP_SHARED for buffer objects since
COW really makes absolutely no sense. How would we enforce this?

> Also worth noting is the comment in  ttm_bo_mmap_vma_setup() with
> possible performance implications with x86 + PAT + VM_PFNMAP + normal
> pages. That's a very old comment, though, and might not be valid anymore.

I think that's why ttm has a page cache for these, because it indeed
sucks. The PAT changes on pages are rather expensive.

There is still an issue for iomem mappings, because the PAT validation
does a linear walk of the resource tree (lol) for every vm_insert_pfn.
But for i915 at least this is fixed by using the io_mapping
infrastructure, which does the PAT reservation only once when you set
up the mapping area at driver load.

Also TTM uses VM_PFNMAP right now for everything, so it can't be a
problem that hurts much :-)
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx