Re: [Intel-gfx] [PATCH v4 00/10] drm/i915: use ref_tracker library for tracking wakerefs

2023-03-17 Thread Andrzej Hajda

Hi all,

Gently ping on the series.

Regards
Andrzej

On 06.03.2023 17:31, Andrzej Hajda wrote:

This is revived patchset improving ref_tracker library and converting
i915 internal tracker to ref_tracker.
The old thread ended without consensus about small kernel allocations,
which are performed under spinlock.
I have tried to solve the problem by splitting the calls, but it results
in complicated API, so I went back to original solution.
If there are better solutions I am glad to discuss them.
Meanwhile I send original patchset with addressed remaining comments.

To: Jani Nikula 
To: Joonas Lahtinen 
To: Rodrigo Vivi 
To: Tvrtko Ursulin 
To: David Airlie 
To: Daniel Vetter 
Cc: linux-ker...@vger.kernel.org
Cc: intel-gfx@lists.freedesktop.org
Cc: dri-de...@lists.freedesktop.org
Cc: Chris Wilson 
Cc: net...@vger.kernel.org
Cc: Eric Dumazet 
Cc: Jakub Kicinski 
Cc: Dmitry Vyukov 
Signed-off-by: Andrzej Hajda 

---
Changes in v4:
- split "Separate wakeref tracking" to smaller parts
- fixed typos,
- Link to v1-v3: https://patchwork.freedesktop.org/series/100327/

---
Andrzej Hajda (7):
   lib/ref_tracker: add unlocked leak print helper
   lib/ref_tracker: __ref_tracker_dir_print improve printing
   lib/ref_tracker: add printing to memory buffer
   lib/ref_tracker: remove warnings in case of allocation failure
   drm/i915: Separate wakeref tracking types from rpm
   drm/i915: Correct type of wakeref variable
   drm/i915: replace Intel internal tracker with kernel core ref_tracker

Chris Wilson (3):
   drm/i915: Separate wakeref tracking
   drm/i915: Track leaked gt->wakerefs
   drm/i915/gt: Hold a wakeref for the active VM

  drivers/gpu/drm/i915/Kconfig.debug |  19 ++
  drivers/gpu/drm/i915/Makefile  |   1 +
  drivers/gpu/drm/i915/display/intel_display_power.c |   2 +-
  drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c |   7 +-
  .../drm/i915/gem/selftests/i915_gem_coherency.c|  10 +-
  drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c |  14 +-
  drivers/gpu/drm/i915/gt/intel_breadcrumbs.c|  13 +-
  drivers/gpu/drm/i915/gt/intel_breadcrumbs_types.h  |   3 +-
  drivers/gpu/drm/i915/gt/intel_context.h|  15 +-
  drivers/gpu/drm/i915/gt/intel_context_types.h  |   2 +
  drivers/gpu/drm/i915/gt/intel_engine_pm.c  |  10 +-
  drivers/gpu/drm/i915/gt/intel_engine_types.h   |   2 +
  .../gpu/drm/i915/gt/intel_execlists_submission.c   |   2 +-
  drivers/gpu/drm/i915/gt/intel_gt_pm.c  |  12 +-
  drivers/gpu/drm/i915/gt/intel_gt_pm.h  |  38 +++-
  drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.c  |   4 +-
  drivers/gpu/drm/i915/gt/selftest_engine_cs.c   |  20 +-
  drivers/gpu/drm/i915/gt/selftest_gt_pm.c   |   5 +-
  drivers/gpu/drm/i915/gt/selftest_reset.c   |  10 +-
  drivers/gpu/drm/i915/gt/selftest_rps.c |  17 +-
  drivers/gpu/drm/i915/gt/selftest_slpc.c|   5 +-
  drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c  |  11 +-
  drivers/gpu/drm/i915/i915_driver.c |   2 +-
  drivers/gpu/drm/i915/i915_pmu.c|  16 +-
  drivers/gpu/drm/i915/intel_runtime_pm.c| 221 ++---
  drivers/gpu/drm/i915/intel_runtime_pm.h|  11 +-
  drivers/gpu/drm/i915/intel_wakeref.c   |   7 +-
  drivers/gpu/drm/i915/intel_wakeref.h   | 112 ++-
  include/linux/ref_tracker.h|  31 ++-
  lib/ref_tracker.c  | 179 ++---
  30 files changed, 469 insertions(+), 332 deletions(-)
---
base-commit: 1ddc2e762c6a109af52f3c39534c7115aebe
change-id: 20230224-track_gt-1b3da8bdacd7

Best regards,




[Intel-gfx] [PATCH v4 00/10] drm/i915: use ref_tracker library for tracking wakerefs

2023-03-06 Thread Andrzej Hajda
This is revived patchset improving ref_tracker library and converting
i915 internal tracker to ref_tracker.
The old thread ended without consensus about small kernel allocations,
which are performed under spinlock.
I have tried to solve the problem by splitting the calls, but it results
in complicated API, so I went back to original solution.
If there are better solutions I am glad to discuss them.
Meanwhile I send original patchset with addressed remaining comments.

To: Jani Nikula 
To: Joonas Lahtinen 
To: Rodrigo Vivi 
To: Tvrtko Ursulin 
To: David Airlie 
To: Daniel Vetter 
Cc: linux-ker...@vger.kernel.org
Cc: intel-gfx@lists.freedesktop.org
Cc: dri-de...@lists.freedesktop.org
Cc: Chris Wilson 
Cc: net...@vger.kernel.org
Cc: Eric Dumazet 
Cc: Jakub Kicinski 
Cc: Dmitry Vyukov 
Signed-off-by: Andrzej Hajda 

---
Changes in v4:
- split "Separate wakeref tracking" to smaller parts
- fixed typos,
- Link to v1-v3: https://patchwork.freedesktop.org/series/100327/

---
Andrzej Hajda (7):
  lib/ref_tracker: add unlocked leak print helper
  lib/ref_tracker: __ref_tracker_dir_print improve printing
  lib/ref_tracker: add printing to memory buffer
  lib/ref_tracker: remove warnings in case of allocation failure
  drm/i915: Separate wakeref tracking types from rpm
  drm/i915: Correct type of wakeref variable
  drm/i915: replace Intel internal tracker with kernel core ref_tracker

Chris Wilson (3):
  drm/i915: Separate wakeref tracking
  drm/i915: Track leaked gt->wakerefs
  drm/i915/gt: Hold a wakeref for the active VM

 drivers/gpu/drm/i915/Kconfig.debug |  19 ++
 drivers/gpu/drm/i915/Makefile  |   1 +
 drivers/gpu/drm/i915/display/intel_display_power.c |   2 +-
 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c |   7 +-
 .../drm/i915/gem/selftests/i915_gem_coherency.c|  10 +-
 drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c |  14 +-
 drivers/gpu/drm/i915/gt/intel_breadcrumbs.c|  13 +-
 drivers/gpu/drm/i915/gt/intel_breadcrumbs_types.h  |   3 +-
 drivers/gpu/drm/i915/gt/intel_context.h|  15 +-
 drivers/gpu/drm/i915/gt/intel_context_types.h  |   2 +
 drivers/gpu/drm/i915/gt/intel_engine_pm.c  |  10 +-
 drivers/gpu/drm/i915/gt/intel_engine_types.h   |   2 +
 .../gpu/drm/i915/gt/intel_execlists_submission.c   |   2 +-
 drivers/gpu/drm/i915/gt/intel_gt_pm.c  |  12 +-
 drivers/gpu/drm/i915/gt/intel_gt_pm.h  |  38 +++-
 drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.c  |   4 +-
 drivers/gpu/drm/i915/gt/selftest_engine_cs.c   |  20 +-
 drivers/gpu/drm/i915/gt/selftest_gt_pm.c   |   5 +-
 drivers/gpu/drm/i915/gt/selftest_reset.c   |  10 +-
 drivers/gpu/drm/i915/gt/selftest_rps.c |  17 +-
 drivers/gpu/drm/i915/gt/selftest_slpc.c|   5 +-
 drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c  |  11 +-
 drivers/gpu/drm/i915/i915_driver.c |   2 +-
 drivers/gpu/drm/i915/i915_pmu.c|  16 +-
 drivers/gpu/drm/i915/intel_runtime_pm.c| 221 ++---
 drivers/gpu/drm/i915/intel_runtime_pm.h|  11 +-
 drivers/gpu/drm/i915/intel_wakeref.c   |   7 +-
 drivers/gpu/drm/i915/intel_wakeref.h   | 112 ++-
 include/linux/ref_tracker.h|  31 ++-
 lib/ref_tracker.c  | 179 ++---
 30 files changed, 469 insertions(+), 332 deletions(-)
---
base-commit: 1ddc2e762c6a109af52f3c39534c7115aebe
change-id: 20230224-track_gt-1b3da8bdacd7

Best regards,
-- 
Andrzej Hajda 


Re: [Intel-gfx] [PATCH v4 00/10] cover-letter: Update vfio_pin/unpin_pages API

2022-07-25 Thread Alex Williamson
On Fri, 22 Jul 2022 19:02:46 -0700
Nicolin Chen  wrote:

> This is a preparatory series for IOMMUFD v2 patches. It prepares for
> replacing vfio_iommu_type1 implementations of vfio_pin/unpin_pages()
> with IOMMUFD version.
> 
> There's a gap between these two versions: the vfio_iommu_type1 version
> inputs a non-contiguous PFN list and outputs another PFN list for the
> pinned physical page list, while the IOMMUFD version only supports a
> contiguous address input by accepting the starting IO virtual address
> of a set of pages to pin and by outputting to a physical page list.
> 
> The nature of existing callers mostly aligns with the IOMMUFD version,
> except s390's vfio_ccw_cp code where some additional change is needed
> along with this series. Overall, updating to "iova" and "phys_page"
> does improve the caller side to some extent.
> 
> Also fix a misuse of physical address and virtual address in the s390's
> crypto code. And update the input naming at the adjacent vfio_dma_rw().
> 
> This is on github:
> https://github.com/nicolinc/iommufd/commits/vfio_pin_pages-v4
> 
> Terrence has tested this series on i915; Eric has tested on s390.
> 
> Thanks!
> 
> Changelog
> v4:
>  * Dropped double-shifting at two gvt_unpin_guest_page calls, fixing
>a bug that's discovered by Alex
>  * Added Reviewed-by from Anthony Krowiak
>  * Rebased on top of linux-vfio's next
> v3: https://lore.kernel.org/kvm/20220708224427.1245-1-nicol...@nvidia.com/
>  * Added a patch to replace roundup with DIV_ROUND_UP in i915 gvt
>  * Dropped the "driver->ops->unpin_pages" and NULL checks in PATCH-1
>  * Changed to use WARN_ON and separate into lines in PATCH-1
>  * Replaced "guest" words with "user" and fix typo in PATCH-5
>  * Updated commit log of PATCH-1, PATCH-6, and PATCH-10
>  * Added Reviewed/Acked-by from Christoph, Jason, Kirti, Kevin and Eric
>  * Added Tested-by from Terrence (i915) and Eric (s390)
> v2: https://lore.kernel.org/kvm/20220706062759.24946-1-nicol...@nvidia.com/
>  * Added a patch to make vfio_unpin_pages return void
>  * Added two patches to remove PFN list from two s390 callers
>  * Renamed "phys_page" parameter to "pages" for vfio_pin_pages
>  * Updated commit log of kmap_local_page() patch
>  * Added Harald's "Reviewed-by" to pa_ind patch
>  * Rebased on top of Alex's extern removal path
> v1: https://lore.kernel.org/kvm/20220616235212.15185-1-nicol...@nvidia.com/
> 
> Nicolin Chen (10):
>   vfio: Make vfio_unpin_pages() return void
>   drm/i915/gvt: Replace roundup with DIV_ROUND_UP
>   vfio/ap: Pass in physical address of ind to ap_aqic()
>   vfio/ccw: Only pass in contiguous pages
>   vfio: Pass in starting IOVA to vfio_pin/unpin_pages API
>   vfio/ap: Change saved_pfn to saved_iova
>   vfio/ccw: Change pa_pfn list to pa_iova list
>   vfio: Rename user_iova of vfio_dma_rw()
>   vfio/ccw: Add kmap_local_page() for memcpy
>   vfio: Replace phys_pfn with pages for vfio_pin_pages()
> 
>  .../driver-api/vfio-mediated-device.rst   |   6 +-
>  arch/s390/include/asm/ap.h|   6 +-
>  drivers/gpu/drm/i915/gvt/kvmgt.c  |  45 ++--
>  drivers/s390/cio/vfio_ccw_cp.c| 195 +++---
>  drivers/s390/crypto/ap_queue.c|   2 +-
>  drivers/s390/crypto/vfio_ap_ops.c |  54 +++--
>  drivers/s390/crypto/vfio_ap_private.h |   4 +-
>  drivers/vfio/vfio.c   |  54 ++---
>  drivers/vfio/vfio.h   |   8 +-
>  drivers/vfio/vfio_iommu_type1.c   |  45 ++--
>  include/linux/vfio.h  |   9 +-
>  11 files changed, 213 insertions(+), 215 deletions(-)
> 

Applied to vfio next branch for v5.20.  Thanks,

Alex



Re: [Intel-gfx] [PATCH v4 00/10] cover-letter: Update vfio_pin/unpin_pages API

2022-07-25 Thread Xu, Terrence
> -Original Message-
> From: intel-gvt-dev  On
> Behalf Of Nicolin Chen
> 
> This is a preparatory series for IOMMUFD v2 patches. It prepares for
> replacing vfio_iommu_type1 implementations of vfio_pin/unpin_pages()
> with IOMMUFD version.
> 
> There's a gap between these two versions: the vfio_iommu_type1 version
> inputs a non-contiguous PFN list and outputs another PFN list for the
> pinned physical page list, while the IOMMUFD version only supports a
> contiguous address input by accepting the starting IO virtual address of a
> set of pages to pin and by outputting to a physical page list.
> 
> The nature of existing callers mostly aligns with the IOMMUFD version,
> except s390's vfio_ccw_cp code where some additional change is needed
> along with this series. Overall, updating to "iova" and "phys_page"
> does improve the caller side to some extent.
> 
> Also fix a misuse of physical address and virtual address in the s390's crypto
> code. And update the input naming at the adjacent vfio_dma_rw().
> 
> This is on github:
> https://github.com/nicolinc/iommufd/commits/vfio_pin_pages-v4
> 
> Terrence has tested this series on i915; Eric has tested on s390.
> 
> Thanks!
> 
> Changelog
> v4:
>  * Dropped double-shifting at two gvt_unpin_guest_page calls, fixing
>a bug that's discovered by Alex
>  * Added Reviewed-by from Anthony Krowiak
>  * Rebased on top of linux-vfio's next
> v3: https://lore.kernel.org/kvm/20220708224427.1245-1-
> nicol...@nvidia.com/
>  * Added a patch to replace roundup with DIV_ROUND_UP in i915 gvt
>  * Dropped the "driver->ops->unpin_pages" and NULL checks in PATCH-1
>  * Changed to use WARN_ON and separate into lines in PATCH-1
>  * Replaced "guest" words with "user" and fix typo in PATCH-5
>  * Updated commit log of PATCH-1, PATCH-6, and PATCH-10
>  * Added Reviewed/Acked-by from Christoph, Jason, Kirti, Kevin and Eric
>  * Added Tested-by from Terrence (i915) and Eric (s390)
> v2: https://lore.kernel.org/kvm/20220706062759.24946-1-
> nicol...@nvidia.com/
>  * Added a patch to make vfio_unpin_pages return void
>  * Added two patches to remove PFN list from two s390 callers
>  * Renamed "phys_page" parameter to "pages" for vfio_pin_pages
>  * Updated commit log of kmap_local_page() patch
>  * Added Harald's "Reviewed-by" to pa_ind patch
>  * Rebased on top of Alex's extern removal path
> v1: https://lore.kernel.org/kvm/20220616235212.15185-1-
> nicol...@nvidia.com/
> 
> Nicolin Chen (10):
>   vfio: Make vfio_unpin_pages() return void
>   drm/i915/gvt: Replace roundup with DIV_ROUND_UP
>   vfio/ap: Pass in physical address of ind to ap_aqic()
>   vfio/ccw: Only pass in contiguous pages
>   vfio: Pass in starting IOVA to vfio_pin/unpin_pages API
>   vfio/ap: Change saved_pfn to saved_iova
>   vfio/ccw: Change pa_pfn list to pa_iova list
>   vfio: Rename user_iova of vfio_dma_rw()
>   vfio/ccw: Add kmap_local_page() for memcpy
>   vfio: Replace phys_pfn with pages for vfio_pin_pages()
> 
>  .../driver-api/vfio-mediated-device.rst   |   6 +-
>  arch/s390/include/asm/ap.h|   6 +-
>  drivers/gpu/drm/i915/gvt/kvmgt.c  |  45 ++--
>  drivers/s390/cio/vfio_ccw_cp.c| 195 +++---
>  drivers/s390/crypto/ap_queue.c|   2 +-
>  drivers/s390/crypto/vfio_ap_ops.c |  54 +++--
>  drivers/s390/crypto/vfio_ap_private.h |   4 +-
>  drivers/vfio/vfio.c   |  54 ++---
>  drivers/vfio/vfio.h   |   8 +-
>  drivers/vfio/vfio_iommu_type1.c   |  45 ++--
>  include/linux/vfio.h  |   9 +-
>  11 files changed, 213 insertions(+), 215 deletions(-)

Verified the Intel KVMGT feature, no regression be introduced by v4 patch 
series, the previous Call Trace issue already gone.
Tested-by: Terrence Xu 
> --
> 2.17.1



[Intel-gfx] [PATCH v4 00/10]

2019-12-23 Thread Lucas De Marchi
v4 of https://patchwork.freedesktop.org/series/71224/

Changes from v2:
  - Also remove gen from device_info on first patch
  - Rebase
  - Collect a-b for the entire series

Changes from v3:
  - Collect r-b and add missing conversions for pineview

Lucas De Marchi (10):
  drm/i915: simplify prefixes on device_info
  drm/i915: prefer 3-letter acronym for pineview
  drm/i915: prefer 3-letter acronym for haswell
  drm/i915: prefer 3-letter acronym for skylake
  drm/i915: prefer 3-letter acronym for cannonlake
  drm/i915: prefer 3-letter acronym for icelake
  drm/i915: prefer 3-letter acronym for ironlake
  drm/i915: prefer 3-letter acronym for broadwell
  drm/i915: prefer 3-letter acronym for ivybridge
  drm/i915: prefer 3-letter acronym for tigerlake

 drivers/gpu/drm/i915/display/icl_dsi.c|   2 +-
 drivers/gpu/drm/i915/display/intel_crt.c  |   8 +-
 drivers/gpu/drm/i915/display/intel_ddi.c  |   8 +-
 drivers/gpu/drm/i915/display/intel_display.c  | 284 +-
 drivers/gpu/drm/i915/display/intel_display.h  |   6 +-
 drivers/gpu/drm/i915/display/intel_dp.c   |  34 +--
 drivers/gpu/drm/i915/display/intel_dp_mst.c   |   4 +-
 .../drm/i915/display/intel_fifo_underrun.c|  24 +-
 drivers/gpu/drm/i915/display/vlv_dsi.c|   2 +-
 drivers/gpu/drm/i915/gt/intel_mocs.c  |  18 +-
 drivers/gpu/drm/i915/gt/intel_reset.c |   7 +-
 drivers/gpu/drm/i915/gt/intel_workarounds.c   |   2 +-
 drivers/gpu/drm/i915/gvt/handlers.c   |   8 +-
 drivers/gpu/drm/i915/i915_debugfs.c   |  10 +-
 drivers/gpu/drm/i915/i915_irq.c   |  18 +-
 drivers/gpu/drm/i915/i915_pci.c   | 230 +++---
 drivers/gpu/drm/i915/intel_device_info.c  |   8 +-
 drivers/gpu/drm/i915/intel_pm.c   |  45 +--
 18 files changed, 361 insertions(+), 357 deletions(-)

-- 
2.24.0

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


[Intel-gfx] [PATCH v4 00/10] Clear Color Support for TGL Render Decompression

2019-10-14 Thread Radhakrishna Sripada
Support for Clear Color is contained in the last two patches
submitted by Radhakrishna Sripada. The first 8 patches are
currently undergoing review/revision changes. The first 8 patches
are cherry-picked from the series
https://patchwork.freedesktop.org/series/67078/

Expecting feedback for the last 2 patches. The series is tested with kms_cube
and custom Mesa branch by Nanley.


Dhinakaran Pandiyan (8):
  drm/framebuffer: Format modifier for Intel Gen-12 render compression
  drm/i915: Use intel_tile_height() instead of re-implementing
  drm/i915: Move CCS stride alignment W/A inside
intel_fb_stride_alignment
  drm/i915/tgl: Gen-12 render decompression
  drm/i915: Extract framebufer CCS offset checks into a function
  drm/framebuffer: Format modifier for Intel Gen-12 media compression
  drm/fb: Extend format_info member arrays to handle four planes
  Gen-12 display can decompress surfaces compressed by the media engine.

Radhakrishna Sripada (2):
  drm/framebuffer/tgl: Format modifier for Intel Gen 12 render
compression with Clear Color
  drm/i915/tgl: Add Clear Color supoort for TGL Render Decompression

 drivers/gpu/drm/i915/display/intel_display.c  | 434 ++
 .../drm/i915/display/intel_display_types.h|   5 +-
 drivers/gpu/drm/i915/display/intel_sprite.c   |  70 ++-
 drivers/gpu/drm/i915/i915_reg.h   |  14 +
 include/drm/drm_fourcc.h  |   8 +-
 include/uapi/drm/drm_fourcc.h |  35 ++
 6 files changed, 452 insertions(+), 114 deletions(-)

-- 
2.20.1

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

[Intel-gfx] [PATCH v4 00/10] DSB enablement.

2019-08-30 Thread Animesh Manna
Display State Buffer (DSB) is hardware capability which allows driver
to batch submit HW programming.

As part of initial enablement common api created which currently used
to program gamma lut proramming.

Going forwad DSB support can be added for HDR and flip related operation.

HSDES: 1209978241
BSpec: 32020

v1: Initial version.

v2: Move intel_dsb files under display folder and fixed an issue.

v3: As per review comments from Chris and Jani,
- removed some unwanted code. (Chris)
- Used i915_gem_object_create_internal instead of _shmem. (Chris)
- cmd_buf_tail removed and can be derived through vma object. (Chris)
- Simplified and optimized code few places. (Chris)
- Called dsb-api directly in callsites instead going via I915_WRITE. (Jani)

v4: Addressed review commnets from Shashank.

Cc: Ville Syrjälä 
Cc: Jani Nikula 
Cc: Rodrigo Vivi 
Cc: Daniel Vetter 
Cc: Imre Deak 
Cc: Michel Thierry 
Cc: Uma Shankar 
Cc: Shashank Sharma 
Cc: Swati Sharma 
Cc: Lucas De Marchi 
Signed-off-by: Animesh Manna 

Animesh Manna (10):
  drm/i915/dsb: feature flag added for display state buffer.
  drm/i915/dsb: DSB context creation.
  drm/i915/dsb: single register write function for DSB.
  drm/i915/dsb: Indexed register write function for DSB.
  drm/i915/dsb: Check DSB engine status.
  drm/i915/dsb: functions to enable/disable DSB engine.
  drm/i915/dsb: function to trigger workload execution of DSB.
  drm/i915/dsb: Enable gamma lut programming using DSB.
  drm/i915/dsb: Enable DSB for gen12.
  drm/i915/dsb: Documentation for DSB.

 Documentation/gpu/i915.rst|   9 +
 drivers/gpu/drm/i915/Makefile |   1 +
 drivers/gpu/drm/i915/display/intel_color.c|  64 ++--
 .../drm/i915/display/intel_display_types.h|   3 +
 drivers/gpu/drm/i915/display/intel_dsb.c  | 337 ++
 drivers/gpu/drm/i915/display/intel_dsb.h  |  49 +++
 drivers/gpu/drm/i915/i915_drv.h   |   5 +
 drivers/gpu/drm/i915/i915_pci.c   |   3 +-
 drivers/gpu/drm/i915/i915_reg.h   |  10 +
 drivers/gpu/drm/i915/intel_device_info.h  |   1 +
 10 files changed, 458 insertions(+), 24 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/display/intel_dsb.c
 create mode 100644 drivers/gpu/drm/i915/display/intel_dsb.h

-- 
2.22.0

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

Re: [Intel-gfx] [PATCH v4 00/10] Execlist based engine-reset (v4)

2017-01-12 Thread Michel Thierry


On 11/01/17 23:30, Chris Wilson wrote:

I'm sorry to do this, but there is a regression fix for gen3 required
first that makes this more complicated.

https://cgit.freedesktop.org/~ickle/linux-2.6/commit/?h=prescheduler=de399a0a6baae97910796d81d8b9324db3fdd77c
https://cgit.freedesktop.org/~ickle/linux-2.6/commit/?h=prescheduler=67bea4dbb664b100c108af05d9a0f1f3b4078ab2
https://cgit.freedesktop.org/~ickle/linux-2.6/commit/?h=prescheduler=d91a3e43a8d6f94076b60caa1de3a9918c5cd766
-Chris



No worries, I'll rebase on top of these.
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH v4 00/10] Execlist based engine-reset (v4)

2017-01-11 Thread Chris Wilson
I'm sorry to do this, but there is a regression fix for gen3 required
first that makes this more complicated.

https://cgit.freedesktop.org/~ickle/linux-2.6/commit/?h=prescheduler=de399a0a6baae97910796d81d8b9324db3fdd77c
https://cgit.freedesktop.org/~ickle/linux-2.6/commit/?h=prescheduler=67bea4dbb664b100c108af05d9a0f1f3b4078ab2
https://cgit.freedesktop.org/~ickle/linux-2.6/commit/?h=prescheduler=d91a3e43a8d6f94076b60caa1de3a9918c5cd766
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH v4 00/10] Execlist based engine-reset (v4)

2017-01-11 Thread Michel Thierry
These patches are to add engine reset feature from Gen8. This is also
referred to as Timeout detection and recovery (TDR). This complements to
the full gpu reset feature available in i915 but it only allows to reset a
particular engine instead of all engines thus providing a light weight
engine reset and recovery mechanism.

This implementation is for execlist based submission only hence limited
from Gen8 onwards. For GuC based submission, additional changes can be
added later on.

Timeout detection relies on the existing hangcheck which remains the same,
main changes are to the recovery mechanism. Once we detect a hang on a
particular engine we identify the request that caused the hang, skip the
request and adjust head pointers to allow the execution to proceed
normally. After some cleanup, submissions are restarted to process
remaining work queued to that engine.

If engine reset fails to recover engine correctly then we fallback to full
gpu reset.

v2: ELSP queue request tracking and reset path changes to handle incomplete
requests during reset. Thanks to Chris Wilson for providing these patches.

v3: Let the waiter keep handling the full gpu reset if it already has the
lock; point out that GuC submission needs a different method to restart
workloads after the engine reset completes.

v4: Handle reset as 2 level resets, by first going to engine only and fall
backing to full/chip reset as needed, i.e. reset_engine will need the
struct_mutex.

Arun Siluvery (6):
  drm/i915: Update i915.reset to handle engine resets
  drm/i915/tdr: Modify error handler for per engine hang recovery
  drm/i915/tdr: Add support for per engine reset recovery
  drm/i915/tdr: Add engine reset count to error state
  drm/i915/tdr: Export per-engine reset count info to debugfs
  drm/i915/tdr: Enable Engine reset and recovery support

Michel Thierry (3):
  drm/i915: Keep i915_handle_error kerneldoc parameters together
  drm/i915: Update i915_reset parameter for kerneldoc
  drm/i915: Add engine reset count in get-reset-stats ioctl

Mika Kuoppala (1):
  drm/i915: Skip reset request if there is one already

 drivers/gpu/drm/i915/i915_debugfs.c |  21 ++
 drivers/gpu/drm/i915/i915_drv.c | 118 +++-
 drivers/gpu/drm/i915/i915_drv.h |  16 +
 drivers/gpu/drm/i915/i915_gem.c |   2 +-
 drivers/gpu/drm/i915/i915_gem_context.c |  14 +++-
 drivers/gpu/drm/i915/i915_gpu_error.c   |   3 +
 drivers/gpu/drm/i915/i915_irq.c |  34 ++---
 drivers/gpu/drm/i915/i915_params.c  |   6 +-
 drivers/gpu/drm/i915/i915_params.h  |   2 +-
 drivers/gpu/drm/i915/i915_pci.c |   5 +-
 drivers/gpu/drm/i915/intel_uncore.c |  61 +++--
 include/uapi/drm/i915_drm.h |   3 +-
 12 files changed, 258 insertions(+), 27 deletions(-)

-- 
2.11.0

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


[Intel-gfx] [PATCH v4 00/10] Unduplicate CHV phy code

2016-04-27 Thread Ander Conselvan de Oliveira
Hi,

I checked registre dumps with and without this series and noticed one
difference that was actually intentional but not mentioned, so the
first patch gets an updated commit message.

Also changed chv_phy_post_disable() to chv_phy_post_pll_disable() as
requested by Ville.

Cc: Jim Bride 
Cc: Ville Syrjälä 

Ander Conselvan de Oliveira (10):
  drm/i915: Set crtc_state->lane_count for HDMI
  drm/i915: Unduplicate CHV signal level code
  drm/i915: Unduplicate chv_data_lane_soft_reset()
  drm/i915: Unduplicate CHV phy-releated pre pll enabling code
  drm/i915: Unduplicate CHV pre-encoder enabling phy logic
  drm/i915: Unduplicate CHV encoders' post pll disable code
  drm/i915: Unduplicate VLV signal level code
  drm/i915: Unduplicate VLV phy pre pll enabling code
  drm/i915: Unduplicate pre encoder enabling phy code
  drm/i915: Move VLV HDMI lane reset work around logic to
intel_dpio_phy.c

 drivers/gpu/drm/i915/Makefile |   1 +
 drivers/gpu/drm/i915/i915_drv.h   |  18 ++
 drivers/gpu/drm/i915/intel_ddi.c  |   4 +-
 drivers/gpu/drm/i915/intel_dp.c   | 412 ++---
 drivers/gpu/drm/i915/intel_dpio_phy.c | 470 ++
 drivers/gpu/drm/i915/intel_drv.h  |   5 +
 drivers/gpu/drm/i915/intel_hdmi.c | 356 +
 7 files changed, 526 insertions(+), 740 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/intel_dpio_phy.c

-- 
2.4.11

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


Re: [Intel-gfx] [PATCH v4 00/10] drm/i915: improve the RPM device suspended assert

2015-12-17 Thread Imre Deak
On ti, 2015-12-15 at 20:10 +0200, Imre Deak wrote:
> This is v4 of [1]. It has the following changes:
> - fix module reload that got broken in v3 due to removal of HAS_RUNTIME_PM 
>   (added patch 1-3 + revised patch 4)
> - disable the wakeref asserts in the IRQ handlers and RPS work too
>   (revised patch 7)

[1] http://lists.freedesktop.org/archives/intel-gfx/2015-November/080005.html

Thanks for all the reviews, I pushed the patchset to dinq.

> Imre Deak (10):
>   drm/i915: clarify comment about mandatory RPM put/get during driver
> load/unload
>   drm/i915: disable power well support on platforms without runtime PM
> support
>   drm/i915: refactor RPM disabling due to RC6 being disabled
>   drm/i915: remove HAS_RUNTIME_PM check from RPM get/put/assert helpers
>   drm/i915: add assert_rpm_wakelock_held helper
>   drm/i915: use assert_rpm_wakelock_held instead of opencoding it
>   drm/i915: add support for checking if we hold an RPM reference
>   drm/i915: check that we hold an RPM wakelock ref before we put it
>   drm/i915: add support for checking RPM atomic sections
>   drm/i915: check that we are in an RPM atomic section in GGTT PTE
> updaters
> 
>  drivers/gpu/drm/i915/i915_dma.c |  7 
>  drivers/gpu/drm/i915/i915_drv.c | 39 --
>  drivers/gpu/drm/i915/i915_drv.h |  2 +
>  drivers/gpu/drm/i915/i915_gem_gtt.c | 33 +++
>  drivers/gpu/drm/i915/i915_irq.c | 73 
> ++---
>  drivers/gpu/drm/i915/intel_drv.h| 72 
>  drivers/gpu/drm/i915/intel_pm.c | 17 
>  drivers/gpu/drm/i915/intel_runtime_pm.c | 57 -
>  drivers/gpu/drm/i915/intel_uncore.c | 23 ---
>  9 files changed, 270 insertions(+), 53 deletions(-)
> 
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH v4 00/10] drm/i915: improve the RPM device suspended assert

2015-12-15 Thread Imre Deak
This is v4 of [1]. It has the following changes:
- fix module reload that got broken in v3 due to removal of HAS_RUNTIME_PM 
  (added patch 1-3 + revised patch 4)
- disable the wakeref asserts in the IRQ handlers and RPS work too
  (revised patch 7)

Imre Deak (10):
  drm/i915: clarify comment about mandatory RPM put/get during driver
load/unload
  drm/i915: disable power well support on platforms without runtime PM
support
  drm/i915: refactor RPM disabling due to RC6 being disabled
  drm/i915: remove HAS_RUNTIME_PM check from RPM get/put/assert helpers
  drm/i915: add assert_rpm_wakelock_held helper
  drm/i915: use assert_rpm_wakelock_held instead of opencoding it
  drm/i915: add support for checking if we hold an RPM reference
  drm/i915: check that we hold an RPM wakelock ref before we put it
  drm/i915: add support for checking RPM atomic sections
  drm/i915: check that we are in an RPM atomic section in GGTT PTE
updaters

 drivers/gpu/drm/i915/i915_dma.c |  7 
 drivers/gpu/drm/i915/i915_drv.c | 39 --
 drivers/gpu/drm/i915/i915_drv.h |  2 +
 drivers/gpu/drm/i915/i915_gem_gtt.c | 33 +++
 drivers/gpu/drm/i915/i915_irq.c | 73 ++---
 drivers/gpu/drm/i915/intel_drv.h| 72 
 drivers/gpu/drm/i915/intel_pm.c | 17 
 drivers/gpu/drm/i915/intel_runtime_pm.c | 57 -
 drivers/gpu/drm/i915/intel_uncore.c | 23 ---
 9 files changed, 270 insertions(+), 53 deletions(-)

-- 
2.5.0

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