Re: [Intel-gfx] [PATCH 1/3] i915/gvt: Introduce the mmio_table.c to support VFIO new mdev API

2022-02-08 Thread Joonas Lahtinen
Quoting Jani Nikula (2022-02-07 12:48:08) > On Mon, 07 Feb 2022, Christoph Hellwig wrote: > > On Mon, Feb 07, 2022 at 08:28:13AM +, Wang, Zhi A wrote: > >> 1) About having the mmio_table.h, I would like to keep the stuff in a > >> dedicated header as putting them in intel_gvt.h might needs i91

Re: [Intel-gfx] [PATCH v7 1/3] gpu: drm: separate panel orientation property creating and value setting

2022-02-08 Thread Hsin-Yi Wang
On Tue, Feb 8, 2022 at 3:52 PM Ville Syrjälä wrote: > > On Tue, Feb 08, 2022 at 03:37:12PM +0800, Hsin-Yi Wang wrote: > > +int drm_connector_init_panel_orientation_property( > > + struct drm_connector *connector) > > +{ > > + struct drm_device *dev = connector->dev; > > + struct drm_pr

[Intel-gfx] ✗ Fi.CI.BAT: failure for series starting with [v7,1/3] gpu: drm: separate panel orientation property creating and value setting

2022-02-08 Thread Patchwork
== Series Details == Series: series starting with [v7,1/3] gpu: drm: separate panel orientation property creating and value setting URL : https://patchwork.freedesktop.org/series/99815/ State : failure == Summary == CI Bug Log - changes from CI_DRM_11199 -> Patchwork_22198 ===

[Intel-gfx] [PATCH v8 1/3] gpu: drm: separate panel orientation property creating and value setting

2022-02-08 Thread Hsin-Yi Wang
drm_dev_register() sets connector->registration_state to DRM_CONNECTOR_REGISTERED and dev->registered to true. If drm_connector_set_panel_orientation() is first called after drm_dev_register(), it will fail several checks and results in following warning. Add a function to create panel orientation

[Intel-gfx] [PATCH v8 2/3] drm/mediatek: init panel orientation property

2022-02-08 Thread Hsin-Yi Wang
Init panel orientation property after connector is initialized. Let the panel driver decides the orientation value later. Signed-off-by: Hsin-Yi Wang Acked-by: Chun-Kuang Hu --- drivers/gpu/drm/mediatek/mtk_dsi.c | 7 +++ 1 file changed, 7 insertions(+) diff --git a/drivers/gpu/drm/mediate

[Intel-gfx] [PATCH v8 3/3] arm64: dts: mt8183: Add panel rotation

2022-02-08 Thread Hsin-Yi Wang
krane, kakadu, and kodama boards have a default panel rotation. Signed-off-by: Hsin-Yi Wang Reviewed-by: Enric Balletbo i Serra Tested-by: Enric Balletbo i Serra --- arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm64/boot/dts/mediatek/

[Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915/guc: Use temporary memory for regset

2022-02-08 Thread Patchwork
== Series Details == Series: drm/i915/guc: Use temporary memory for regset URL : https://patchwork.freedesktop.org/series/99813/ State : failure == Summary == CI Bug Log - changes from CI_DRM_11199_full -> Patchwork_22197_full Summary -

Re: [Intel-gfx] [PATCH v5 0/5] Use drm_clflush* instead of clflush

2022-02-08 Thread Tvrtko Ursulin
On 07/02/2022 12:44, Jani Nikula wrote: On Mon, 07 Feb 2022, Tvrtko Ursulin wrote: On 04/02/2022 16:37, Michael Cheng wrote: This patch series re-work a few i915 functions to use drm_clflush_virt_range instead of calling clflush or clflushopt directly. This will prevent errors when building

Re: [Intel-gfx] [PATCH v2 5/8] drm/i915/dp: rewrite DP 2.0 128b/132b link training based on errata

2022-02-08 Thread Jani Nikula
On Fri, 04 Feb 2022, Ville Syrjälä wrote: > On Thu, Feb 03, 2022 at 11:03:54AM +0200, Jani Nikula wrote: >> The DP 2.0 errata completely overhauls the 128b/132b link training, with >> no provisions for backward compatibility with the original DP 2.0 >> specification. >> >> The changes are too int

Re: [Intel-gfx] [PATCH 3/4] drm/i915/uapi: Add struct drm_i915_query_hwconfig_blob_item

2022-02-08 Thread Tvrtko Ursulin
On 07/02/2022 19:28, Jordan Justen wrote: Also, document DRM_I915_QUERY_HWCONFIG_BLOB with this struct. Cc: Daniel Vetter Signed-off-by: Jordan Justen --- include/uapi/drm/i915_drm.h | 24 1 file changed, 24 insertions(+) diff --git a/include/uapi/drm/i915_drm.h

Re: [Intel-gfx] [PATCH 4/4] drm/i915/guc: Verify hwconfig blob matches supported format

2022-02-08 Thread Tvrtko Ursulin
Hi, Commit message please. Will GuC folks be reviewing this work? Quick sanity check maybe makes sense, given data is being "sent" to userspace directly, I am just not sure if it is worth having in non-debug builds of i915. Though I will agree not having it in production then largely defea

Re: [Intel-gfx] [PATCH v2 5/8] drm/i915/dp: rewrite DP 2.0 128b/132b link training based on errata

2022-02-08 Thread Ville Syrjälä
On Tue, Feb 08, 2022 at 11:17:22AM +0200, Jani Nikula wrote: > On Fri, 04 Feb 2022, Ville Syrjälä wrote: > > On Thu, Feb 03, 2022 at 11:03:54AM +0200, Jani Nikula wrote: > >> The DP 2.0 errata completely overhauls the 128b/132b link training, with > >> no provisions for backward compatibility with

Re: [Intel-gfx] [PATCH] drm/i915/guc: Fix flag query to not modify state

2022-02-08 Thread Tvrtko Ursulin
On 08/02/2022 02:07, john.c.harri...@intel.com wrote: From: John Harrison A flag query helper was actually writing to the flags word rather than just reading. Fix that. Also update the function's comment as it was out of date. Fixes: 0f7976506de61 ("drm/i915/guc: Rework and simplify locking"

Re: [Intel-gfx] [PATCH 2/7] drm/selftests: add drm buddy alloc limit testcase

2022-02-08 Thread Matthew Auld
On 03/02/2022 13:32, Arunpravin wrote: add a test to check the maximum allocation limit Signed-off-by: Arunpravin --- .../gpu/drm/selftests/drm_buddy_selftests.h | 1 + drivers/gpu/drm/selftests/test-drm_buddy.c| 60 +++ 2 files changed, 61 insertions(+) diff --git a

[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [v8,1/3] gpu: drm: separate panel orientation property creating and value setting

2022-02-08 Thread Patchwork
== Series Details == Series: series starting with [v8,1/3] gpu: drm: separate panel orientation property creating and value setting URL : https://patchwork.freedesktop.org/series/99828/ State : warning == Summary == $ dim checkpatch origin/drm-tip a832dc08d88f gpu: drm: separate panel orienta

Re: [Intel-gfx] [PATCH 5/6] drm/rcar_du: changes to rcar-du driver resulting from drm_writeback_connector structure changes

2022-02-08 Thread Dmitry Baryshkov
On Wed, 2 Feb 2022 at 16:26, Laurent Pinchart wrote: > > Hi Jani, > > On Wed, Feb 02, 2022 at 03:15:03PM +0200, Jani Nikula wrote: > > On Wed, 02 Feb 2022, Laurent Pinchart wrote: > > > On Wed, Feb 02, 2022 at 02:24:28PM +0530, Kandpal Suraj wrote: > > >> Changing rcar_du driver to accomadate the

[Intel-gfx] [PATCH 2/2] drm/msm/dp: Implement oob_hotplug_event()

2022-02-08 Thread Bjorn Andersson
The Qualcomm DisplayPort driver contains traces of the necessary plumbing to hook up USB HPD, in the form of the dp_hpd module and the dp_usbpd_cb struct. Use this as basis for implementing the oob_hotplug_event() callback, by amending the dp_hpd module with the missing logic. Overall the solution

[Intel-gfx] [PATCH 1/2] drm: Add HPD state to drm_connector_oob_hotplug_event()

2022-02-08 Thread Bjorn Andersson
In some implementations, such as the Qualcomm platforms, the display driver has no way to query the current HPD state and as such it's impossible to distinguish between disconnect and attention events. Add a parameter to drm_connector_oob_hotplug_event() to pass the HPD state. Also push the test

[Intel-gfx] ✗ Fi.CI.SPARSE: warning for series starting with [v8,1/3] gpu: drm: separate panel orientation property creating and value setting

2022-02-08 Thread Patchwork
== Series Details == Series: series starting with [v8,1/3] gpu: drm: separate panel orientation property creating and value setting URL : https://patchwork.freedesktop.org/series/99828/ State : warning == Summary == $ dim sparse --fast origin/drm-tip Sparse version: v0.6.2 Fast mode used, eac

Re: [Intel-gfx] [PATCH 3/7] drm/selftests: add drm buddy alloc range testcase

2022-02-08 Thread Matthew Auld
On 03/02/2022 13:32, Arunpravin wrote: - add a test to check the range allocation - export get_buddy() function in drm_buddy.c - export drm_prandom_u32_max_state() in lib/drm_random.c - include helper functions - include prime number header file Signed-off-by: Arunpravin --- drivers/gpu/drm/d

Re: [Intel-gfx] [PATCH 4/7] drm/selftests: add drm buddy optimistic testcase

2022-02-08 Thread Matthew Auld
On 03/02/2022 13:32, Arunpravin wrote: create a mm with one block of each order available, and try to allocate them all. Signed-off-by: Arunpravin Reviewed-by: Matthew Auld

[Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [v8,1/3] gpu: drm: separate panel orientation property creating and value setting

2022-02-08 Thread Patchwork
== Series Details == Series: series starting with [v8,1/3] gpu: drm: separate panel orientation property creating and value setting URL : https://patchwork.freedesktop.org/series/99828/ State : success == Summary == CI Bug Log - changes from CI_DRM_11200 -> Patchwork_22199 ===

Re: [Intel-gfx] [PATCH 5/7] drm/selftests: add drm buddy pessimistic testcase

2022-02-08 Thread Matthew Auld
On 03/02/2022 13:32, Arunpravin wrote: create a pot-sized mm, then allocate one of each possible order within. This should leave the mm with exactly one page left. Signed-off-by: Arunpravin --- .../gpu/drm/selftests/drm_buddy_selftests.h | 1 + drivers/gpu/drm/selftests/test-drm_buddy.c

[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [1/2] drm: Add HPD state to drm_connector_oob_hotplug_event()

2022-02-08 Thread Patchwork
== Series Details == Series: series starting with [1/2] drm: Add HPD state to drm_connector_oob_hotplug_event() URL : https://patchwork.freedesktop.org/series/99830/ State : warning == Summary == $ dim checkpatch origin/drm-tip 74980bd036b7 drm: Add HPD state to drm_connector_oob_hotplug_even

Re: [Intel-gfx] [PATCH v6 6/6] drm: Add arch arm64 for drm_clflush_virt_range

2022-02-08 Thread Tvrtko Ursulin
On 07/02/2022 20:11, Michael Cheng wrote: Use flush_tlb_kernel_range when invoking drm_clflush_virt_range on arm64 platforms. Using flush_tlb_kernel_range will: 1. Make sure prior page-table updates have been completed 2. Invalidate the TLB 3. Check if the TLB invalidation has been completed

[Intel-gfx] ✗ Fi.CI.SPARSE: warning for series starting with [1/2] drm: Add HPD state to drm_connector_oob_hotplug_event()

2022-02-08 Thread Patchwork
== Series Details == Series: series starting with [1/2] drm: Add HPD state to drm_connector_oob_hotplug_event() URL : https://patchwork.freedesktop.org/series/99830/ State : warning == Summary == $ dim sparse --fast origin/drm-tip Sparse version: v0.6.2 Fast mode used, each commit won't be ch

Re: [Intel-gfx] [PATCH 6/7] drm/selftests: add drm buddy smoke testcase

2022-02-08 Thread Matthew Auld
On 03/02/2022 13:32, Arunpravin wrote: - add a test to ascertain that the critical functionalities of the program is working fine - add a timeout helper function Signed-off-by: Arunpravin --- .../gpu/drm/selftests/drm_buddy_selftests.h | 1 + drivers/gpu/drm/selftests/test-drm_buddy.c

Re: [Intel-gfx] [PATCH 7/7] drm/selftests: add drm buddy pathological testcase

2022-02-08 Thread Matthew Auld
On 03/02/2022 13:32, Arunpravin wrote: create a pot-sized mm, then allocate one of each possible order within. This should leave the mm with exactly one page left. Free the largest block, then whittle down again. Eventually we will have a fully 50% fragmented mm. Signed-off-by: Arunpravin ---

Re: [Intel-gfx] [RFC 0/2] Compile out integrated

2022-02-08 Thread Tvrtko Ursulin
On 02/02/2022 16:26, Lucas De Marchi wrote: On Wed, Feb 02, 2022 at 10:26:46AM +, Tvrtko Ursulin wrote: On 01/02/2022 17:28, Lucas De Marchi wrote: On Tue, Feb 01, 2022 at 07:09:14PM +0200, Jani Nikula wrote: On Tue, 01 Feb 2022, Lucas De Marchi wrote: On Tue, Feb 01, 2022 at 11:15:31

Re: [Intel-gfx] [PATCH 1/7] drm/selftests: Move i915 buddy selftests into drm

2022-02-08 Thread Matthew Auld
On 03/02/2022 13:32, Arunpravin wrote: - move i915 buddy selftests into drm selftests folder - add Makefile and Kconfig support - add sanitycheck testcase Prerequisites - These series of selftests patches are created on top of drm buddy series - Enable kselftests for DRM as a module in .confi

Re: [Intel-gfx] [PATCH 1/2] drm: Add HPD state to drm_connector_oob_hotplug_event()

2022-02-08 Thread Greg Kroah-Hartman
On Mon, Feb 07, 2022 at 08:43:27PM -0800, Bjorn Andersson wrote: > In some implementations, such as the Qualcomm platforms, the display > driver has no way to query the current HPD state and as such it's > impossible to distinguish between disconnect and attention events. > > Add a parameter to dr

[Intel-gfx] [PATCH v2 00/18] drm/i915/guc: Refactor ADS access to use iosys_map

2022-02-08 Thread Lucas De Marchi
v1: https://patchwork.freedesktop.org/series/99378/ v2: https://patchwork.freedesktop.org/series/99711/ Main from previous version: - Rename to iosys-map is already applied - Rewrite IOSYS_MAP_INIT_OFFSET() and eliminate most of its users, favoring a offset variable to k

[Intel-gfx] [PATCH v2 02/18] iosys-map: Add a few more helpers

2022-02-08 Thread Lucas De Marchi
First the simplest ones: - iosys_map_memset(): when abstracting system and I/O memory, just like the memcpy() use case, memset() also has dedicated functions to be called for using IO memory. - iosys_map_memcpy_from(): we may need to copy data from I/O

[Intel-gfx] [PATCH v2 08/18] drm/i915/guc: Convert engine record to iosys_map

2022-02-08 Thread Lucas De Marchi
Use iosys_map to read fields from the dma_blob so access to IO and system memory is abstracted away. Cc: Matt Roper Cc: Thomas Hellström Cc: Daniel Vetter Cc: John Harrison Cc: Matthew Brost Cc: Daniele Ceraolo Spurio Signed-off-by: Lucas De Marchi --- drivers/gpu/drm/i915/gt/uc/intel_guc_

[Intel-gfx] [PATCH v2 03/18] drm/i915/gt: Add helper for shmem copy to iosys_map

2022-02-08 Thread Lucas De Marchi
Add a variant of shmem_read() that takes a iosys_map pointer rather than a plain pointer as argument. It's mostly a copy __shmem_rw() but adapting the api and removing the write support since there's currently only need to use iosys_map as destination. Reworking __shmem_rw() to share the implement

[Intel-gfx] [PATCH v2 12/18] drm/i915/guc: Convert mapping table to iosys_map

2022-02-08 Thread Lucas De Marchi
Use iosys_map to write the fields system_info.mapping_table[][]. Since we already have the info_map around where needed, just use it instead of going through guc->ads_map. Cc: Matt Roper Cc: Thomas Hellström Cc: Daniel Vetter Cc: John Harrison Cc: Matthew Brost Cc: Daniele Ceraolo Spurio Sig

[Intel-gfx] [PATCH v2 05/18] drm/i915/guc: Add read/write helpers for ADS blob

2022-02-08 Thread Lucas De Marchi
Add helpers on top of iosys_map_read_field() / iosys_map_write_field() functions so they always use the right arguments and make code easier to read. Cc: Matt Roper Cc: Thomas Hellström Cc: Daniel Vetter Cc: John Harrison Cc: Matthew Brost Cc: Daniele Ceraolo Spurio Signed-off-by: Lucas De M

[Intel-gfx] [PATCH v2 06/18] drm/i915/guc: Convert golden context init to iosys_map

2022-02-08 Thread Lucas De Marchi
Now the map is saved during creation, so use it to initialize the golden context, reading from shmem and writing to either system or IO memory. v2: Do not use a map iterator: add an offset to keep track of destination Cc: Matt Roper Cc: Thomas Hellström Cc: Daniel Vetter Cc: John Harrison Cc:

[Intel-gfx] [PATCH v2 10/18] drm/i915/guc: Convert golden context prep to iosys_map

2022-02-08 Thread Lucas De Marchi
Use the saved ads_map to prepare the golden context. One difference from the init context is that this function can be called before there is a gem object (and thus the guc->ads_map) to calculare the size of the golden context that should be allocated for that object. So in this case the function

[Intel-gfx] [PATCH v2 15/18] drm/i915/guc: Use a single pass to calculate regset

2022-02-08 Thread Lucas De Marchi
The ADS initialitazion was using 2 passes to calculate the regset sent to GuC to initialize each engine: the first pass to just have the final object size and the second to set each register in place in the final gem object. However in order to maintain an ordered set of registers to pass to guc,

[Intel-gfx] [PATCH v2 01/18] iosys-map: Add offset to iosys_map_memcpy_to()

2022-02-08 Thread Lucas De Marchi
In certain situations it's useful to be able to write to an offset of the mapping. Add a dst_offset to iosys_map_memcpy_to(). Cc: Sumit Semwal Cc: Christian König Cc: Thomas Zimmermann Cc: dri-de...@lists.freedesktop.org Cc: linux-ker...@vger.kernel.org Signed-off-by: Lucas De Marchi Reviewed-

[Intel-gfx] [PATCH v2 07/18] drm/i915/guc: Convert policies update to iosys_map

2022-02-08 Thread Lucas De Marchi
Use iosys_map to write the policies update so access to IO and system memory is abstracted away. Cc: Matt Roper Cc: Thomas Hellström Cc: Daniel Vetter Cc: John Harrison Cc: Matthew Brost Cc: Daniele Ceraolo Spurio Signed-off-by: Lucas De Marchi --- drivers/gpu/drm/i915/gt/uc/intel_guc_ads.

[Intel-gfx] [PATCH v2 13/18] drm/i915/guc: Convert capture list to iosys_map

2022-02-08 Thread Lucas De Marchi
Use iosys_map to write the fields ads.capture_*. Cc: Matt Roper Cc: Thomas Hellström Cc: Daniel Vetter Cc: John Harrison Cc: Matthew Brost Cc: Daniele Ceraolo Spurio Signed-off-by: Lucas De Marchi --- drivers/gpu/drm/i915/gt/uc/intel_guc_ads.c | 10 +- 1 file changed, 5 insertions(

[Intel-gfx] [PATCH v2 16/18] drm/i915/guc: Convert guc_mmio_reg_state_init to iosys_map

2022-02-08 Thread Lucas De Marchi
Now that the regset list is prepared, convert guc_mmio_reg_state_init() to use iosys_map to copy the array to the final location and initialize additional fields in ads.reg_state_list. v2: Just use an offset instead of temporary iosys_map. Cc: Matt Roper Cc: Thomas Hellström Cc: Daniel Vetter

[Intel-gfx] [PATCH v2 04/18] drm/i915/guc: Keep iosys_map of ads_blob around

2022-02-08 Thread Lucas De Marchi
Convert intel_guc_ads_create() and initialization to use iosys_map rather than plain pointer and save it in the guc struct. This will help with additional updates to the ads_blob after the creation/initialization by abstracting the IO vs system memory. Cc: Matt Roper Cc: Thomas Hellström Cc: Dan

[Intel-gfx] [PATCH v2 14/18] drm/i915/guc: Prepare for error propagation

2022-02-08 Thread Lucas De Marchi
Currently guc_mmio_reg_add() relies on having enough memory available in the array to add a new slot. It uses `GEM_BUG_ON(count >= regset->size);` to protect going above the threshold. In order to allow guc_mmio_reg_add() to handle the memory allocation by itself, it must return an error in case o

[Intel-gfx] [PATCH v2 11/18] drm/i915/guc: Replace check for golden context size

2022-02-08 Thread Lucas De Marchi
In the other places in this function, guc->ads_map is being protected from access when it's not yet set. However the last check is actually about guc->ads_golden_ctxt_size been set before. These checks should always match as the size is initialized on the first call to guc_prep_golden_context(), b

[Intel-gfx] [PATCH v2 18/18] drm/i915/guc: Remove plain ads_blob pointer

2022-02-08 Thread Lucas De Marchi
Now we have the access to content of GuC ADS either using iosys_map API or using a temporary buffer. Remove guc->ads_blob as there shouldn't be updates using the bare pointer anymore. Cc: Matt Roper Cc: Thomas Hellström Cc: Daniel Vetter Cc: John Harrison Cc: Matthew Brost Cc: Daniele Ceraolo

[Intel-gfx] [PATCH v2 09/18] drm/i915/guc: Convert guc_ads_private_data_reset to iosys_map

2022-02-08 Thread Lucas De Marchi
Use iosys_map_memset() to zero the private data as ADS may be either on system or IO memory. Cc: Matt Roper Cc: Thomas Hellström Cc: Daniel Vetter Cc: John Harrison Cc: Matthew Brost Cc: Daniele Ceraolo Spurio Signed-off-by: Lucas De Marchi --- drivers/gpu/drm/i915/gt/uc/intel_guc_ads.c |

[Intel-gfx] [PATCH v2 17/18] drm/i915/guc: Convert __guc_ads_init to iosys_map

2022-02-08 Thread Lucas De Marchi
Now that all the called functions from __guc_ads_init() are converted to use ads_map, stop using ads_blob in __guc_ads_init(). Cc: Matt Roper Cc: Thomas Hellström Cc: Daniel Vetter Cc: John Harrison Cc: Matthew Brost Cc: Daniele Ceraolo Spurio Signed-off-by: Lucas De Marchi --- drivers/gpu

[Intel-gfx] ✗ Fi.CI.BAT: failure for series starting with [1/2] drm: Add HPD state to drm_connector_oob_hotplug_event()

2022-02-08 Thread Patchwork
== Series Details == Series: series starting with [1/2] drm: Add HPD state to drm_connector_oob_hotplug_event() URL : https://patchwork.freedesktop.org/series/99830/ State : failure == Summary == CI Bug Log - changes from CI_DRM_11200 -> Patchwork_22200 ===

[Intel-gfx] [PATCH v2 0/4] GuC HWCONFIG with documentation

2022-02-08 Thread Jordan Justen
This is John/Rodrigo's 2 patches with some minor changes, and I added 2 patches. "drm/i915/uapi: Add query for hwconfig blob" was changed: * Rename DRM_I915_QUERY_HWCONFIG_TABLE to DRM_I915_QUERY_HWCONFIG_BLOB as requested by Joonas. * Reword commit message * I added Acked-by to this patc

[Intel-gfx] [PATCH v2 1/4] drm/i915/guc: Add fetch of hwconfig table

2022-02-08 Thread Jordan Justen
From: John Harrison Implement support for fetching the hardware description table from the GuC. The call is made twice - once without a destination buffer to query the size and then a second time to fill in the buffer. Note that the table is only available on ADL-P and later platforms. Cc: Mich

[Intel-gfx] [PATCH v2 2/4] drm/i915/uapi: Add query for hwconfig blob

2022-02-08 Thread Jordan Justen
From: Rodrigo Vivi The DRM_I915_QUERY_HWCONFIG_BLOB query item returns a blob of data which it receives from the GuC software. This blob provides some useful data about the hardware for drivers. Although the blob is not fully documented at this time, the basic format is an array of u32 values. T

[Intel-gfx] [PATCH v2 3/4] drm/i915/uapi: Add struct drm_i915_query_hwconfig_blob_item

2022-02-08 Thread Jordan Justen
Also, document DRM_I915_QUERY_HWCONFIG_BLOB with this struct. Cc: Daniel Vetter Signed-off-by: Jordan Justen --- include/uapi/drm/i915_drm.h | 30 ++ 1 file changed, 30 insertions(+) diff --git a/include/uapi/drm/i915_drm.h b/include/uapi/drm/i915_drm.h index 069d2f

[Intel-gfx] [PATCH v2 4/4] drm/i915/guc: Verify hwconfig blob matches supported format

2022-02-08 Thread Jordan Justen
i915_drm.h now defines the format of the returned DRM_I915_QUERY_HWCONFIG_BLOB query item. Since i915 receives this from the black box GuC software, it should verify that the data matches that format before sending it to user-space. The verification makes a single simple pass through the blob cont

Re: [Intel-gfx] [PATCH] drm/i915/psr: Disable PSR2 selective fetch for all TGL steps

2022-02-08 Thread Hogander, Jouni
Hello Paul, On Mon, 2022-02-07 at 16:38 -0500, Lyude Paul wrote: > As we've unfortunately started to come to expect from PSR on Intel > platforms, PSR2 selective fetch is not at all ready to be enabled on > Tigerlake as it results in severe flickering issues - at least on > this > ThinkPad X1 Carb

[Intel-gfx] [PATCH v6 2/3] i915/gvt: Save the initial HW state snapshot in i915

2022-02-08 Thread Zhi Wang
Save the initial HW state snapshot in i915 so that the rest code of GVT-g can be moved into a dedicated module while it can still get a clean initial HW state saved at the correct time during the initialization of i915. The futhrer vGPU created by GVT-g will use this HW state as the initial HW stat

[Intel-gfx] [PATCH v6 1/3] i915/gvt: Introduce the mmio table to support VFIO new mdev API

2022-02-08 Thread Zhi Wang
From: Zhi Wang To support the new mdev interfaces and the re-factor patches from Christoph, which moves the GVT-g code into a dedicated module, the GVT-g initialization path has to be separated into two phases: a) Early initialization. The early initialization of GVT requires to be done when lo

[Intel-gfx] [PATCH v6 3/3] i915/gvt: Use the initial HW state snapshot saved in i915

2022-02-08 Thread Zhi Wang
The code of saving initial HW state snapshot has been moved into i915. Let the GVT-g core logic use that snapshot. Cc: Christoph Hellwig Cc: Jason Gunthorpe Cc: Jani Nikula Cc: Joonas Lahtinen Cc: Vivi Rodrigo Cc: Zhenyu Wang Cc: Zhi Wang Signed-off-by: Zhi Wang --- drivers/gpu/drm/i915/g

[Intel-gfx] ✗ Fi.CI.IGT: failure for series starting with [v8,1/3] gpu: drm: separate panel orientation property creating and value setting

2022-02-08 Thread Patchwork
== Series Details == Series: series starting with [v8,1/3] gpu: drm: separate panel orientation property creating and value setting URL : https://patchwork.freedesktop.org/series/99828/ State : failure == Summary == CI Bug Log - changes from CI_DRM_11200_full -> Patchwork_22199_full =

[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915/guc: Refactor ADS access to use iosys_map (rev2)

2022-02-08 Thread Patchwork
== Series Details == Series: drm/i915/guc: Refactor ADS access to use iosys_map (rev2) URL : https://patchwork.freedesktop.org/series/99711/ State : warning == Summary == $ dim checkpatch origin/drm-tip 80cfc4e5862f iosys-map: Add offset to iosys_map_memcpy_to() 2997557ba29b iosys-map: Add a f

[Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915/guc: Refactor ADS access to use iosys_map (rev2)

2022-02-08 Thread Patchwork
== Series Details == Series: drm/i915/guc: Refactor ADS access to use iosys_map (rev2) URL : https://patchwork.freedesktop.org/series/99711/ State : warning == Summary == $ dim sparse --fast origin/drm-tip Sparse version: v0.6.2 Fast mode used, each commit won't be checked separately.

[Intel-gfx] [PATCH v2 02/26] drm/i915: Sanitize open-coded power well enable()/disable() calls

2022-02-08 Thread Imre Deak
Instead of open-coding the call of the power wells' enable()/disable() hooks use the corresponding helper functions. This will also ensure that the power well's cached-enable state is always up-to-date. Luckily the lack of this updating hasn't been a problem, since the state either didn't change (i

[Intel-gfx] [PATCH v2 03/26] drm/i915: Remove redundant state verification during TypeC AUX power well disabling

2022-02-08 Thread Imre Deak
Commit d5ce34da31456a ("drm/i915: Add state verification for the TypeC port mode") added a verification to the TypeC AUX power well enable()/disable() hooks to check if the TypeC port related to this power well is properly locked. If the disabling happens asynchronously the verification is skipped,

[Intel-gfx] [PATCH v2 01/26] drm/i915: Fix the VDSC_PW2 power domain enum value

2022-02-08 Thread Imre Deak
The POWER_DOMAIN_TRANSCODER() macro depends on the POWER_DOMAIN_TRANSCODER_A/B .. DSI_A/C enum values to be consecutive, move POWER_DOMAIN_TRANSCODER_VDSC_PW2 after these to ensure this. The wrong order didn't cause a problem, since the DSI_A/C domains are in always-on power wells on all relevant p

[Intel-gfx] [PATCH v2 05/26] drm/i915: Move power well get/put/enable/disable functions to a new file

2022-02-08 Thread Imre Deak
Move the power well get/put/enable/disable hooks to the new intel_display_power_well.c file. The motivation is to reduce the clutter in intel_display_power.c, keeping the functionality related to power domains in that file and moving the low-level power well functionality to intel_display_power_wel

[Intel-gfx] [PATCH v2 06/26] drm/i915: Add function to call a power well's sync_hw() hook

2022-02-08 Thread Imre Deak
Add a function to call a power well's sync_hw() hook, instead of open-coding the same, as a step towards making the low-level power well internals (i915_power_well_ops/desc structs) hidden. The cached-enable state should be always up-to-date, so update it whenever sync_hw() is called. No function

[Intel-gfx] [PATCH v2 08/26] drm/i915: Move intel_display_power_well_is_enabled() to intel_display_power_well.c

2022-02-08 Thread Imre Deak
Move intel_display_power_well_is_enabled() to intel_power_well.c, as a step towards making the low-level power well internals (i915_power_well_ops/desc structs) hidden. Eventually the call to this function and in general accessing power wells directly from elsewhere in the driver should be replace

[Intel-gfx] [PATCH v2 04/26] drm/i915: Move i915_power_well_regs struct into i915_power_well_ops

2022-02-08 Thread Imre Deak
Move the i915_power_well_regs struct into i915_power_well_ops. Most of the power wells use the same ops/regs combination, so this saves some space and also simplifies the platform power domain->power well definitions. Signed-off-by: Imre Deak --- .../drm/i915/display/intel_display_power.c| 2

[Intel-gfx] [PATCH v2 00/26] drm/i915: Refactor the display power domain mappings

2022-02-08 Thread Imre Deak
This is v2 of [1] addressing the review comments from Jani, moving the power well ops/desc struct accessor functions and implementation of the platform specific power well hooks to a separate file. [1] https://patchwork.freedesktop.org/series/99476/ Cc: Jani Nikula Imre Deak (26): drm/i915: F

[Intel-gfx] [PATCH v2 07/26] drm/i915: Add functions to get a power well's state/name/domains/mask/refcount

2022-02-08 Thread Imre Deak
Add functions to get a power well's actual- and cached-enabled state, name, domain mask and refcount, as a step towards making the low-level power well internals (i915_power_well_ops/desc structs) hidden. No functional change. Suggested-by: Jani Nikula Cc: Jani Nikula Signed-off-by: Imre Deak

[Intel-gfx] [PATCH v2 13/26] drm/i915: Move the HSW power well flags to a common bitfield

2022-02-08 Thread Imre Deak
Save some space by grouping the HSW power well descriptor flags along with other flags in one bitfield. This change also lets simplifying the definition of power well descriptors sharing the same flags in an upcoming patch. Signed-off-by: Imre Deak --- .../i915/display/intel_display_power_map.c

[Intel-gfx] [PATCH v2 09/26] drm/i915: Move per-platform power well hooks to intel_display_power_well.c

2022-02-08 Thread Imre Deak
Move the implementation of platform specific power well hooks to intel_display_power_well.c, to reduce the clutter in intel_display_power.c. No functional change. Signed-off-by: Imre Deak --- .../drm/i915/display/intel_display_power.c| 1759 .../i915/display/intel_display_p

[Intel-gfx] [PATCH v2 10/26] drm/i915: Unexport the for_each_power_well() macros

2022-02-08 Thread Imre Deak
The for_each_power_well() macros are only used in intel_display_power.c and intel_display_power_well.c, so unexport them. Signed-off-by: Imre Deak --- .../drm/i915/display/intel_display_power.c| 8 .../drm/i915/display/intel_display_power.h| 20 --- .../i915/dis

[Intel-gfx] [PATCH v2 16/26] drm/i915: Convert the power well descriptor domain mask to an array of domains

2022-02-08 Thread Imre Deak
The next patch converts the i915_power_well_desc::domain mask from a u64 mask to a bitmap. I didn't find a reasonably simple way to initialize bitmaps statically, so prepare for the next patch here by converting the masks to an array of domain enums and initing the masks from these arrays during mo

[Intel-gfx] [PATCH v2 14/26] drm/i915: Rename the power domain names to end with pipes/ports

2022-02-08 Thread Imre Deak
Make all power domain names end with the pipe/port instance for consistency. No functional changes. Signed-off-by: Imre Deak --- drivers/gpu/drm/i915/display/icl_dsi.c| 8 +- drivers/gpu/drm/i915/display/intel_ddi.c | 2 +- drivers/gpu/drm/i915/display/intel_display.c | 34 ++

[Intel-gfx] [PATCH v2 11/26] drm/i915: Move the power domain->well mappings to intel_display_power_map.c

2022-02-08 Thread Imre Deak
Move the list of platform specific power domain -> power well definitions to intel_display_power_map.c. While at it group the platforms' power domain macros with the corresponding power well lists and keep all the power domain lists in the same order (matching the enum order). No functional change

[Intel-gfx] [PATCH v2 15/26] drm/i915: Sanitize the power well names

2022-02-08 Thread Imre Deak
Use the shortest descriptive name for all power wells for simplicity and to use the same name for the same type of power wells on multiple platforms. Signed-off-by: Imre Deak --- .../i915/display/intel_display_power_map.c| 254 +- 1 file changed, 127 insertions(+), 127 deleti

[Intel-gfx] [PATCH v2 17/26] drm/i915: Convert the u64 power well domains mask to a bitmap

2022-02-08 Thread Imre Deak
To remove the aliasing of the power domain enum values in a follow-up patch in this patchset (requiring a bigger mask) and allow for defining additional power domains in the future (at least some upcoming TypeC changes requires this) convert the u64 i915_power_well_desc::domains mask to a bitmap.

[Intel-gfx] [PATCH v2 12/26] drm/i915: Move the dg2 fixed_enable_delay power well param to a common bitfield

2022-02-08 Thread Imre Deak
The DG2 fixed delay duration is always 600usec, so save some space in the power well descriptors by converting the parameter to a flag. While at it also use a bitfield for both the always_on and fixed_enable_delay flag. This change also lets simplifying the definiton of power wells sharing the sam

[Intel-gfx] [PATCH v2 18/26] drm/i915: Simplify power well definitions by adding power well instances

2022-02-08 Thread Imre Deak
All the port specific AUX/DDI_IO power wells share the same power well ops struct and flags, so we can save some space and simplify the definition of these by listing for all such power wells only the params specific to them (name, domains, power well register index, id). Move these params to a new

[Intel-gfx] [PATCH v2 20/26] drm/i915: Simplify the DG1 power well descriptors

2022-02-08 Thread Imre Deak
Simplify the definition of DG1 power wells by reusing the identical RKL DDI/AUX descriptors. This reorders the DG1 DDI/AUX vs. PW4/5 power wells, but this shouldn't make a difference (it is the order on RKL and the DDI/AUX power wells don't have a dependency on PW4/5). Signed-off-by: Imre Deak -

[Intel-gfx] [PATCH v2 22/26] drm/i915: Sanitize the port -> DDI/AUX power domain mapping for each platform

2022-02-08 Thread Imre Deak
Atm the port -> DDI and AUX power domain mapping is specified by relying on the aliasing of the platform specific intel_display_power_domain enum values. For instance D12+ platforms refer to the 'D' port and power domain instances, which doesn't match the bspec terminology, on these platforms the c

[Intel-gfx] [PATCH v2 19/26] drm/i915: Allow platforms to share power well descriptors

2022-02-08 Thread Imre Deak
Some power wells - like always-on and skl+/icl+ PW_1 - with the same name, domain list, flags, ops are used by multiple platforms, so allow platforms to reuse the descriptors of such power wells. This change also lets the follow up patches to simplify the DG1/RKL power well definitions, and remove

[Intel-gfx] [PATCH v2 25/26] drm/i915: Remove duplicate DDI/AUX power domain mappings

2022-02-08 Thread Imre Deak
The DDI and AUX domain -> power well mappings are identical for a few platforms/power well instances, reuse the mappings of earlier platforms for these removing the duplicate mapping of new platforms. Signed-off-by: Imre Deak --- .../i915/display/intel_display_power_map.c| 89 +++

[Intel-gfx] [PATCH v2 24/26] drm/i915: Remove the ICL specific TBT power domains

2022-02-08 Thread Imre Deak
The spec calls the ICL TBT AUX power well instances TBT1-4 (similarly to all later platforms), align the power domain names with the spec. Signed-off-by: Imre Deak --- .../gpu/drm/i915/display/intel_display_power.c | 10 +- .../gpu/drm/i915/display/intel_display_power.h | 4 ..

[Intel-gfx] [PATCH v2 23/26] drm/i915: Remove the aliasing of power domain enum values

2022-02-08 Thread Imre Deak
Aliasing the intel_display_power_domain enum values was required because of the u64 power domain mask size limit. This makes the dmesg/debugfs printouts of the domain names somewhat unclear, for instance domain names for port D are shown on D12+ platforms where the corresponding port is called TC1.

[Intel-gfx] [PATCH v2 26/26] drm/i915: Remove the XELPD specific AUX and DDI power domains

2022-02-08 Thread Imre Deak
The spec calls the XELPD_D/E ports just D/E, the platform prefix in the domain names was only needed by the port->domain mapping relying on matching enum values for the whole port/domain range (and the corresponding aliasing between the platform specific domain enums). Since a previous patch we can

[Intel-gfx] [PATCH v2 21/26] drm/i915: Sanitize the ADL-S power well definition

2022-02-08 Thread Imre Deak
Instead of the skip_mask special casing of the ADL-S power well descriptors, add a power well descriptor list for ADL-S as well reusing the TGL descriptors, w/o the TC-cold power well. ADL-S doesn't have TypeC PHYs, so a better way would be having ADL-S specific AUX descriptors, but I left changing

[Intel-gfx] [PATCH] drm/buddy: fixup potential uaf

2022-02-08 Thread Matthew Auld
If we are unlucky and somehow can't allocate enough memory when splitting blocks, where we temporarily end up with the given block and its buddy on the respective free list, then we need to ensure we delete both blocks, and not just the buddy, before potentially freeing them. v2: rebase on i915_bu

[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/guc: Refactor ADS access to use iosys_map (rev2)

2022-02-08 Thread Patchwork
== Series Details == Series: drm/i915/guc: Refactor ADS access to use iosys_map (rev2) URL : https://patchwork.freedesktop.org/series/99711/ State : success == Summary == CI Bug Log - changes from CI_DRM_11200 -> Patchwork_22201 Summary ---

[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for GuC HWCONFIG with documentation (rev2)

2022-02-08 Thread Patchwork
== Series Details == Series: GuC HWCONFIG with documentation (rev2) URL : https://patchwork.freedesktop.org/series/99787/ State : warning == Summary == $ dim checkpatch origin/drm-tip 0d55eb6c8da5 drm/i915/guc: Add fetch of hwconfig table -:78: WARNING:FILE_PATH_CHANGES: added, moved or delete

[Intel-gfx] ✗ Fi.CI.SPARSE: warning for GuC HWCONFIG with documentation (rev2)

2022-02-08 Thread Patchwork
== Series Details == Series: GuC HWCONFIG with documentation (rev2) URL : https://patchwork.freedesktop.org/series/99787/ State : warning == Summary == $ dim sparse --fast origin/drm-tip Sparse version: v0.6.2 Fast mode used, each commit won't be checked separately.

Re: [Intel-gfx] [PATCH v2 5/8] drm/i915/dp: rewrite DP 2.0 128b/132b link training based on errata

2022-02-08 Thread Jani Nikula
On Tue, 08 Feb 2022, Ville Syrjälä wrote: > On Tue, Feb 08, 2022 at 11:17:22AM +0200, Jani Nikula wrote: >> On Fri, 04 Feb 2022, Ville Syrjälä wrote: >> > On Thu, Feb 03, 2022 at 11:03:54AM +0200, Jani Nikula wrote: >> >> + >> >> + if (timeout) { >> >> + intel_dp_dump_link

[Intel-gfx] ✗ Fi.CI.BUILD: failure for series starting with [v6,1/3] i915/gvt: Introduce the mmio table to support VFIO new mdev API

2022-02-08 Thread Patchwork
== Series Details == Series: series starting with [v6,1/3] i915/gvt: Introduce the mmio table to support VFIO new mdev API URL : https://patchwork.freedesktop.org/series/99838/ State : failure == Summary == CALLscripts/checksyscalls.sh CALLscripts/atomic/check-atomics.sh DESCEND o

[Intel-gfx] ✓ Fi.CI.BAT: success for GuC HWCONFIG with documentation (rev2)

2022-02-08 Thread Patchwork
== Series Details == Series: GuC HWCONFIG with documentation (rev2) URL : https://patchwork.freedesktop.org/series/99787/ State : success == Summary == CI Bug Log - changes from CI_DRM_11200 -> Patchwork_22202 Summary --- **SUCCESS**

[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Refactor the display power domain mappings (rev2)

2022-02-08 Thread Patchwork
== Series Details == Series: drm/i915: Refactor the display power domain mappings (rev2) URL : https://patchwork.freedesktop.org/series/99476/ State : warning == Summary == $ dim checkpatch origin/drm-tip fa34bdc13d82 drm/i915: Fix the VDSC_PW2 power domain enum value 69200c39d539 drm/i915: Sa

[Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915: Refactor the display power domain mappings (rev2)

2022-02-08 Thread Patchwork
== Series Details == Series: drm/i915: Refactor the display power domain mappings (rev2) URL : https://patchwork.freedesktop.org/series/99476/ State : warning == Summary == $ dim sparse --fast origin/drm-tip Sparse version: v0.6.2 Fast mode used, each commit won't be checked separately.

Re: [Intel-gfx] [PATCH v2 5/8] drm/i915/dp: rewrite DP 2.0 128b/132b link training based on errata

2022-02-08 Thread Ville Syrjälä
On Tue, Feb 08, 2022 at 02:12:33PM +0200, Jani Nikula wrote: > On Tue, 08 Feb 2022, Ville Syrjälä wrote: > > On Tue, Feb 08, 2022 at 11:17:22AM +0200, Jani Nikula wrote: > >> On Fri, 04 Feb 2022, Ville Syrjälä wrote: > >> > On Thu, Feb 03, 2022 at 11:03:54AM +0200, Jani Nikula wrote: > >> >> + >

  1   2   3   >