[PULL] drm-intel-gt-next

Joonas Lahtinen joonas.lahtinen at linux.intel.com
Fri Aug 6 10:10:53 UTC 2021


Quoting Joonas Lahtinen (2021-08-06 13:06:17)
> Hi Dave & Daniel,
> 
> Sorry for the big PR in advance. Had the summer vacations and did not
> notice until tool late how many patches were in already before leaving.
> 
> As requested, there is a lot of refactoring to increase the use of TTM
> allocator and prep for DRM scheduler. Note that at times the patches trade
> simplicity for performance and revert optimizations not seen as critical.
> So some performance regressions are expected.
> 
> As an example is dropping of faster GPU relocation path for older platforms,
> which should be mitigated by updating to the latest UMD versions to regain
> the perf.
> 
> This PR drops various bits of uAPI where userspace has dropped the ball after reviews
> have been completed on both sides (Thanks Jason for doing the due-diligence!). [1]
> Due to the complexity of tracing back who used what, I think we could do better in the
> future to avoid such situations to begin with. See below for my suggestion [2].
> 
> In addition to the refactoring and uAPI cleanup there is preliminay code for
> ADL-P/XeHP and DG2 platforms. Fixes for ADL-S and removal of CNL code.
> A couple of fixes that have been Cc: stable already. Removing unnecessary
> workarounds per stepping and adding missing for Gen12 iGFX.
> 
> I915_MMAP_OFFSET_FIXED is also added to to align with the static/fixed caching
> mode per BO instead of per-mapping mode (for dGFX only). There is GuC firmware
> interface update and backend code major rework that unblock enabling GuC on Gen11
> (not on by default). Then there is the addition of the GuCRC power management
> feature which can be enabled for Gen12+ when submission is enabled.

There is also addition of I915_USERPTR_PROBE with userspace changes in:

https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12044

Regards, Joonas

> 
> Then there is finally the drm-next backmerge and 3 topic branch merges.
> 
> I think that is mostly all. I tried to summarize much in the tag description so
> it should hopefully not be horribly long...
> 
> Regards, Joonas
> 
> [1] Given that Jason is only human and there is no way to automate this analysis, we
> may have to bring something back as fixes if we find breakage (like with the MMAP IOCTL).
> 
> [2] As we first require to merge the kernel code, should we introduce some further rules
> that the userspace has to land their code before the final kernel version release? If
> that is not followed through, we would neuter the new uAPI with as small patch as possible
> in the final release candidate and then remove it in next release. Thoughts?
> 
> ***
> 
> drm-intel-gt-next-2021-08-06-1:
> 
> UAPI Changes:
> 
> - Add I915_MMAP_OFFSET_FIXED
> 
>   On devices with local memory `I915_MMAP_OFFSET_FIXED` is the only valid
>   type. On devices without local memory, this caching mode is invalid.
> 
>   As caching mode when specifying `I915_MMAP_OFFSET_FIXED`, WC or WB will
>   be used, depending on the object placement on creation. WB will be used
>   when the object can only exist in system memory, WC otherwise.
> 
>   Userspace: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11888
> 
> - Reinstate the mmap ioctl for (already released) integrated Gen12 platforms
> 
>   Rationale: Otherwise media driver breaks eg. for ADL-P. Long term goal is
>   still to sunset the IOCTL even for integrated and require using mmap_offset.
> 
> - Reject caching/set_domain IOCTLs on discrete
> 
>   Expected to become immutable property of the BO
> 
> - Disallow changing context parameters after first use on Gen12 and earlier
> - Require setting context parameters at creation on platforms after Gen12
> 
>   Rationale (for both): Allow less dynamic changes to the context to simplify
>   the implementation and avoid user shooting theirselves in the foot.
> 
> - Drop I915_CONTEXT_PARAM_RINGSIZE
> 
>   Userspace PR for compute-driver has not been merged
> 
> - Drop I915_CONTEXT_PARAM_NO_ZEROMAP
> 
>   Userspace PR for libdrm / Beignet was never landed
> 
> - Drop CONTEXT_CLONE API
> 
>   Userspace PR for Mesa was never landed
> 
> - Drop getparam support for I915_CONTEXT_PARAM_ENGINES
> 
>   Only existed for symmetry wrt. setparam, never used.
> 
> - Disallow bonding of virtual engines
> 
>   Drop the prep work, no hardware has been released needing it.
> 
> - (Implicit) Disable gpu relocations
> 
>   Media userspace was the last userspace to still use them. They
>   have converted so performance can be regained with an update.
> 
> Core Changes:
> 
> - Merge topic branch 'topic/i915-ttm-2021-06-11' (from Maarten)
> - Merge topic branch 'topic/revid_steppings' (from Matt R)
> - Merge topic branch 'topic/xehp-dg2-definitions-2021-07-21' (from Matt R)
> - Backmerges drm-next (Rodrigo)
> 
> Driver Changes:
> 
> - Initial workarounds for ADL-P (Clint)
> - Preliminary code for XeHP/DG2 (Stuart, Umesh, Matt R, Prathap, Ram,
>   Venkata, Akeem, Tvrtko, John, Lucas)
> - Fix ADL-S DMA mask size to 39 bits (Tejas)
> - Remove code for CNL (Lucas)
> - Add ADL-P GuC/HuC firmwares (John)
> - Update HuC to 7.9.3 for TGL/ADL-S/RKL (John)
> - Fix -EDEADLK handling regression (Ville)
> - Implement Wa_1508744258 for DG1 and Gen12 iGFX (Jose)
> - Extend Wa_1406941453 to ADL-S (Jose)
> - Drop unnecessary workarounds per stepping for SKL/BXT/ICL (Matt R)
> - Use fuse info to enable SFC on Gen12 (Venkata)
> - Unconditionally flush the pages on acquire on EHL/JSL (Matt A)
> - Probe existence of backing struct pages upon userptr creation (Chris, Matt A)
> 
> - Add an intermediate GEM proto-context to delay real context creation (Jason)
> - Implement SINGLE_TIMELINE with a syncobj (Jason)
> - Set the watchdog timeout directly in intel_context_set_gem (Jason)
> - Disallow userspace from creating contexts with too many engines (Jason)
> - Revert "drm/i915/gem: Asynchronous cmdparser" (Jason)
> - Revert "drm/i915: Propagate errors on awaiting already signaled fences" (Jason)
> - Revert "drm/i915: Skip over MI_NOOP when parsing" (Jason)
> - Revert "drm/i915: Shrink the GEM kmem_caches upon idling" (Daniel)
> - Always let TTM handle object migration (Jason)
> - Correct the locking and pin pattern for dma-buf (Thomas H, Michael R, Jason)
> - Migrate to system at dma-buf attach time (Thomas, Michael R)
> 
> - MAJOR refactoring of the GuC backend code to allow for enabling on Gen11+
>   (Matt B, John, Michal Wa., Fernando, Daniele, Vinay)
> - Update GuC firmware interface to v62.0.0 (John, Michal Wa., Matt B)
> - Add GuCRC feature to hand over the control of HW RC6 to the GuC on
>   Gen12+ when GuC submission is enabled (Vinay, Sujaritha, Daniele,
>   John, Tvrtko)
> - Use the correct IRQ during resume and eliminate DRM IRQ midlayer (Thomas Z)
> - Add pipelined page migration and clearing (Chris, Thomas H)
> - Use TTM for system memory on discrete (Thomas H)
> - Implement object migration for display vs. dma-buf (Thomas H)
> - Perform execbuffer object locking as a separate step (Thomas H)
> - Add support for explicit L3BANK steering (Matt, Daniele)
> - Remove duplicated call to ops->pread (Daniel)
> - Fix pagefault disabling in the first execbuf slowpath (Daniel)
> - Simplify userptr locking (Thomas H)
> - Improvements to the GuC CTB code (Matt B, John)
> - Make GT workaround upper bounds exclusive (Matt R)
> - Check for nomodeset in i915_init() first (Daniel)
> - Delete now unused gpu reloc code (Daniel)
> 
> - Document RFC plans for GuC submission, DRM scheduler and new parallel
>   submit uAPI (Matt B)
> - Reintroduce buddy allocator this time with TTM (Matt A)
> - Support forcing page size with LMEM (Matt A)
> - Add i915_sched_engine to abstract a submission queue between backends (Matt B)
> - Use accelerated move in TTM (Ram)
> - Fix memory leaks from TTM backend (Thomas H)
> - Introduce WW transaction helper (Thomas H)
> - Improve debug Kconfig texts a bit (Daniel)
> - Unify user object creation code (Jason)
> - Use a table for i915_init/exit (Jason)
> - Move slabs to module init/exit (Daniel)
> - Remove now unused i915_globals (Daniel)
> - Extract i915_module.c (Daniel)
> 
> - Consistently use adl-p/adl-s in WA comments (Jose)
> - Finish INTEL_GEN and friends conversion (Lucas)
> - Correct variable/function namings (Lucas)
> - Code checker fixes (Wan, Matt A)
> - Tracepoint improvements (Matt B)
> - Kerneldoc improvements (Tvrtko, Jason, Matt A, Maarten)
> - Selftest improvements (Chris, Matt A, Tejas, Thomas H, John, Matt B,
>   Rahul, Vinay)
> The following changes since commit e73f0f0ee7541171d89f2e2491130c7771ba58d3:
> 
>   Linux 5.14-rc1 (2021-07-11 15:07:40 -0700)
> 
> are available in the Git repository at:
> 
>   git://anongit.freedesktop.org/drm/drm-intel tags/drm-intel-gt-next-2021-08-06-1
> 
> for you to fetch changes up to 927dfdd09d8c03ba100ed0c8c3915f8e1d1f5556:
> 
>   drm/i915/dg2: Add SQIDI steering (2021-08-05 08:07:25 -0700)
> 
> ----------------------------------------------------------------
> UAPI Changes:
> 
> - Add I915_MMAP_OFFSET_FIXED
> 
>   On devices with local memory `I915_MMAP_OFFSET_FIXED` is the only valid
>   type. On devices without local memory, this caching mode is invalid.
> 
>   As caching mode when specifying `I915_MMAP_OFFSET_FIXED`, WC or WB will
>   be used, depending on the object placement on creation. WB will be used
>   when the object can only exist in system memory, WC otherwise.
> 
>   Userspace: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11888
> 
> - Reinstate the mmap ioctl for (already released) integrated Gen12 platforms
> 
>   Rationale: Otherwise media driver breaks eg. for ADL-P. Long term goal is
>   still to sunset the IOCTL even for integrated and require using mmap_offset.
> 
> - Reject caching/set_domain IOCTLs on discrete
> 
>   Expected to become immutable property of the BO
> 
> - Disallow changing context parameters after first use on Gen12 and earlier
> - Require setting context parameters at creation on platforms after Gen12
> 
>   Rationale (for both): Allow less dynamic changes to the context to simplify
>   the implementation and avoid user shooting theirselves in the foot.
> 
> - Drop I915_CONTEXT_PARAM_RINGSIZE
> 
>   Userspace PR for compute-driver has not been merged
> 
> - Drop I915_CONTEXT_PARAM_NO_ZEROMAP
> 
>   Userspace PR for libdrm / Beignet was never landed
> 
> - Drop CONTEXT_CLONE API
> 
>   Userspace PR for Mesa was never landed
> 
> - Drop getparam support for I915_CONTEXT_PARAM_ENGINES
> 
>   Only existed for symmetry wrt. setparam, never used.
> 
> - Disallow bonding of virtual engines
> 
>   Drop the prep work, no hardware has been released needing it.
> 
> - (Implicit) Disable gpu relocations
> 
>   Media userspace was the last userspace to still use them. They
>   have converted so performance can be regained with an update.
> 
> Core Changes:
> 
> - Merge topic branch 'topic/i915-ttm-2021-06-11' (from Maarten)
> - Merge topic branch 'topic/revid_steppings' (from Matt R)
> - Merge topic branch 'topic/xehp-dg2-definitions-2021-07-21' (from Matt R)
> - Backmerges drm-next (Rodrigo)
> 
> Driver Changes:
> 
> - Initial workarounds for ADL-P (Clint)
> - Preliminary code for XeHP/DG2 (Stuart, Umesh, Matt R, Prathap, Ram,
>   Venkata, Akeem, Tvrtko, John, Lucas)
> - Fix ADL-S DMA mask size to 39 bits (Tejas)
> - Remove code for CNL (Lucas)
> - Add ADL-P GuC/HuC firmwares (John)
> - Update HuC to 7.9.3 for TGL/ADL-S/RKL (John)
> - Fix -EDEADLK handling regression (Ville)
> - Implement Wa_1508744258 for DG1 and Gen12 iGFX (Jose)
> - Extend Wa_1406941453 to ADL-S (Jose)
> - Drop unnecessary workarounds per stepping for SKL/BXT/ICL (Matt R)
> - Use fuse info to enable SFC on Gen12 (Venkata)
> - Unconditionally flush the pages on acquire on EHL/JSL (Matt A)
> - Probe existence of backing struct pages upon userptr creation (Chris, Matt A)
> 
> - Add an intermediate GEM proto-context to delay real context creation (Jason)
> - Implement SINGLE_TIMELINE with a syncobj (Jason)
> - Set the watchdog timeout directly in intel_context_set_gem (Jason)
> - Disallow userspace from creating contexts with too many engines (Jason)
> - Revert "drm/i915/gem: Asynchronous cmdparser" (Jason)
> - Revert "drm/i915: Propagate errors on awaiting already signaled fences" (Jason)
> - Revert "drm/i915: Skip over MI_NOOP when parsing" (Jason)
> - Revert "drm/i915: Shrink the GEM kmem_caches upon idling" (Daniel)
> - Always let TTM handle object migration (Jason)
> - Correct the locking and pin pattern for dma-buf (Thomas H, Michael R, Jason)
> - Migrate to system at dma-buf attach time (Thomas, Michael R)
> 
> - MAJOR refactoring of the GuC backend code to allow for enabling on Gen11+
>   (Matt B, John, Michal Wa., Fernando, Daniele, Vinay)
> - Update GuC firmware interface to v62.0.0 (John, Michal Wa., Matt B)
> - Add GuCRC feature to hand over the control of HW RC6 to the GuC on
>   Gen12+ when GuC submission is enabled (Vinay, Sujaritha, Daniele,
>   John, Tvrtko)
> - Use the correct IRQ during resume and eliminate DRM IRQ midlayer (Thomas Z)
> - Add pipelined page migration and clearing (Chris, Thomas H)
> - Use TTM for system memory on discrete (Thomas H)
> - Implement object migration for display vs. dma-buf (Thomas H)
> - Perform execbuffer object locking as a separate step (Thomas H)
> - Add support for explicit L3BANK steering (Matt, Daniele)
> - Remove duplicated call to ops->pread (Daniel)
> - Fix pagefault disabling in the first execbuf slowpath (Daniel)
> - Simplify userptr locking (Thomas H)
> - Improvements to the GuC CTB code (Matt B, John)
> - Make GT workaround upper bounds exclusive (Matt R)
> - Check for nomodeset in i915_init() first (Daniel)
> - Delete now unused gpu reloc code (Daniel)
> 
> - Document RFC plans for GuC submission, DRM scheduler and new parallel
>   submit uAPI (Matt B)
> - Reintroduce buddy allocator this time with TTM (Matt A)
> - Support forcing page size with LMEM (Matt A)
> - Add i915_sched_engine to abstract a submission queue between backends (Matt B)
> - Use accelerated move in TTM (Ram)
> - Fix memory leaks from TTM backend (Thomas H)
> - Introduce WW transaction helper (Thomas H)
> - Improve debug Kconfig texts a bit (Daniel)
> - Unify user object creation code (Jason)
> - Use a table for i915_init/exit (Jason)
> - Move slabs to module init/exit (Daniel)
> - Remove now unused i915_globals (Daniel)
> - Extract i915_module.c (Daniel)
> 
> - Consistently use adl-p/adl-s in WA comments (Jose)
> - Finish INTEL_GEN and friends conversion (Lucas)
> - Correct variable/function namings (Lucas)
> - Code checker fixes (Wan, Matt A)
> - Tracepoint improvements (Matt B)
> - Kerneldoc improvements (Tvrtko, Jason, Matt A, Maarten)
> - Selftest improvements (Chris, Matt A, Tejas, Thomas H, John, Matt B,
>   Rahul, Vinay)
> 
> ----------------------------------------------------------------
> Anusha Srivatsa (1):
>       drm/i915/step: s/<platform>_revid_tbl/<platform>_revids
> 
> Chris Wilson (8):
>       drm/i915/selftests: Reorder tasklet_disable vs local_bh_disable
>       drm/i915/gt: Add an insert_entry for gen8_ppgtt
>       drm/i915/gt: Add a routine to iterate over the pagetables of a GTT
>       drm/i915/gt: Export the pinned context constructor and destructor
>       drm/i915/gt: Pipelined page migration
>       drm/i915/gt: Pipelined clear
>       drm/i915/gt: Setup a default migration context on the GT
>       drm/i915/userptr: Probe existence of backing struct pages upon creation
> 
> Clint Taylor (1):
>       drm/i915/adl_p: Add initial ADL_P Workarounds
> 
> Daniel Vetter (17):
>       drm/i915/gem: Remove duplicated call to ops->pread
>       drm/i915/eb: Fix pagefault disabling in the first slowpath
>       drm/i915: Improve debug Kconfig texts a bit
>       drm/i915: Ditch i915 globals shrink infrastructure
>       drm/i915: Check for nomodeset in i915_init() first
>       drm/i915: move i915_active slab to direct module init/exit
>       drm/i915: move i915_buddy slab to direct module init/exit
>       drm/i915: move intel_context slab to direct module init/exit
>       drm/i915: move gem_context slab to direct module init/exit
>       drm/i915: move gem_objects slab to direct module init/exit
>       drm/i915: move request slabs to direct module init/exit
>       drm/i915: move scheduler slabs to direct module init/exit
>       drm/i915: move vma slab to direct module init/exit
>       drm/i915: Remove i915_globals
>       drm/i915: Extract i915_module.c
>       drm/i915: Disable gpu relocations
>       drm/i915: delete gpu reloc code
> 
> Daniele Ceraolo Spurio (3):
>       drm/i915: extract steered reg access to common function
>       drm/i915/guc: Unblock GuC submission on Gen11+
>       drm/i915/xehp: handle new steering options
> 
> Jason Ekstrand (46):
>       drm/i915: Drop I915_CONTEXT_PARAM_RINGSIZE
>       drm/i915: Stop storing the ring size in the ring pointer (v3)
>       drm/i915: Drop I915_CONTEXT_PARAM_NO_ZEROMAP
>       drm/i915/gem: Set the watchdog timeout directly in intel_context_set_gem (v2)
>       drm/i915/gem: Return void from context_apply_all
>       drm/i915: Drop the CONTEXT_CLONE API (v2)
>       drm/i915: Implement SINGLE_TIMELINE with a syncobj (v4)
>       drm/i915: Drop getparam support for I915_CONTEXT_PARAM_ENGINES
>       drm/i915/gem: Disallow bonding of virtual engines (v3)
>       drm/i915/gem: Remove engine auto-magic with FENCE_SUBMIT (v2)
>       drm/i915/request: Remove the hook from await_execution
>       drm/i915/gem: Disallow creating contexts with too many engines
>       drm/i915: Stop manually RCU banging in reset_stats_ioctl (v2)
>       drm/i915/gem: Add a separate validate_priority helper
>       drm/i915: Add gem/i915_gem_context.h to the docs
>       drm/i915/gem: Add an intermediate proto_context struct (v5)
>       drm/i915/gem: Rework error handling in default_engines
>       drm/i915/gem: Optionally set SSEU in intel_context_set_gem
>       drm/i915: Add an i915_gem_vm_lookup helper
>       drm/i915/gem: Make an alignment check more sensible
>       drm/i915/gem: Use the proto-context to handle create parameters (v5)
>       drm/i915/gem: Return an error ptr from context_lookup
>       drm/i915/gt: Drop i915_address_space::file (v2)
>       drm/i915/gem: Delay context creation (v3)
>       drm/i915/gem: Don't allow changing the VM on running contexts (v4)
>       drm/i915/gem: Don't allow changing the engine set on running contexts (v3)
>       drm/i915/selftests: Take a VM in kernel_context()
>       i915/gem/selftests: Assign the VM at context creation in igt_shared_ctx_exec
>       drm/i915/gem: Roll all of context creation together
>       drm/i915: Finalize contexts in GEM_CONTEXT_CREATE on version 13+
>       drm/i915: Revert "drm/i915/gem: Asynchronous cmdparser"
>       Revert "drm/i915: Propagate errors on awaiting already signaled fences"
>       drm/i915: Remove allow_alloc from i915_gem_object_get_sg*
>       drm/i915: Drop error handling from dma_fence_work
>       Revert "drm/i915: Skip over MI_NOOP when parsing"
>       drm/i915: Correct the docs for intel_engine_cmd_parser
>       drm/i915: Call i915_globals_exit() after i915_pmu_exit()
>       drm/i915: Call i915_globals_exit() if pci_register_device() fails
>       drm/i915: Use a table for i915_init/exit (v2)
>       drm/i915: Make the kmem slab for i915_buddy_block a global
>       drm/i915/gem: Check object_can_migrate from object_migrate
>       drm/i915/gem: Refactor placement setup for i915_gem_object_create* (v2)
>       drm/i915/gem: Call i915_gem_flush_free_objects() in i915_gem_dumb_create()
>       drm/i915/gem: Unify user object creation (v3)
>       drm/i915/gem/ttm: Only call __i915_gem_object_set_pages if needed
>       drm/i915/gem: Always call obj->ops->migrate unless can_migrate fails
> 
> John Harrison (19):
>       drm/i915/huc: Update TGL and friends to HuC 7.9.3
>       drm/i915/adlp: Add ADL-P GuC/HuC firmware files
>       drm/i915/guc: Module load failure test for CT buffer creation
>       drm/i915/selftests: Allow for larger engine counts
>       drm/i915/xehp: Extra media engines - Part 1 (engine definitions)
>       drm/i915/xehp: Extra media engines - Part 2 (interrupts)
>       drm/i915/xehp: Extra media engines - Part 3 (reset)
>       drm/i915/guc: Make hangcheck work with GuC virtual engines
>       drm/i915/guc: Provide mmio list to be saved/restored on engine reset
>       drm/i915/guc: Don't complain about reset races
>       drm/i915/guc: Enable GuC engine reset
>       drm/i915/guc: Fix for error capture after full GPU reset with GuC
>       drm/i915/guc: Hook GuC scheduling policies up
>       drm/i915/guc: Connect reset modparam updates to GuC policy flags
>       drm/i915/guc: Include scheduling policies in the debugfs state dump
>       drm/i915/guc: Add golden context to GuC ADS
>       drm/i915/selftest: Better error reporting from hangcheck selftest
>       drm/i915/selftest: Fix hangcheck self test for GuC submission
>       drm/i915/selftest: Bump selftest timeouts for hangcheck
> 
> Joonas Lahtinen (1):
>       Merge tag 'topic/i915-ttm-2021-06-11' of git://anongit.freedesktop.org/drm/drm-misc into drm-intel-gt-next
> 
> José Roberto de Souza (4):
>       drm/i915: Settle on "adl-x" in WA comments
>       drm/i915: Implement Wa_1508744258
>       drm/i915/adl_s: Extend Wa_1406941453
>       drm/i915: Extend Wa_1406941453 to adl-p
> 
> Lucas De Marchi (14):
>       drm/i915/gt: finish INTEL_GEN and friends conversion
>       drm/i915: do not abbreviate version in debugfs
>       drm/i915: Add release id version
>       drm/i915: Add XE_HP initial definitions
>       drm/i915/xehpsdv: add initial XeHP SDV definitions
>       drm/i915/gt: fix platform prefix
>       drm/i915/gt: nuke unused legacy engine hw_id
>       drm/i915/gt: rename legacy engine->hw_id to engine->gen6_hw_id
>       drm/i915/gt: nuke gen6_hw_id
>       drm/i915/gt: remove explicit CNL handling from intel_mocs.c
>       drm/i915/gt: remove explicit CNL handling from intel_sseu.c
>       drm/i915/gt: rename CNL references in intel_engine.h
>       drm/i915/gt: remove GRAPHICS_VER == 10
>       drm/i915/xehp: Fix missing sentinel on mcr_ranges_xehp
> 
> Maarten Lankhorst (2):
>       drm/i915: Fix missing docbook chapters for i915 uapi.
>       drm/i915: Add TTM offset argument to mmap.
> 
> Matt Roper (29):
>       drm/i915: Add GT support for multiple types of multicast steering
>       drm/i915: Add support for explicit L3BANK steering
>       drm/i915: Make pre-production detection use direct revid comparison
>       drm/i915/skl: Use revid->stepping tables
>       drm/i915/kbl: Drop pre-production revision from stepping table
>       drm/i915/bxt: Use revid->stepping tables
>       drm/i915/glk: Use revid->stepping tables
>       drm/i915/icl: Use revid->stepping tables
>       drm/i915/jsl_ehl: Use revid->stepping tables
>       drm/i915/rkl: Use revid->stepping tables
>       drm/i915/dg1: Use revid->stepping tables
>       drm/i915/cnl: Drop all workarounds
>       drm/i915/icl: Drop workarounds that only apply to pre-production steppings
>       Merge branch 'topic/revid_steppings' into drm-intel-gt-next
>       drm/i915: Fix application of WaInPlaceDecompressionHang
>       drm/i915/icl: Drop a couple unnecessary workarounds
>       drm/i915: Program DFR enable/disable as a GT workaround
>       drm/i915: Make GT workaround upper bounds exclusive
>       drm/i915/dg2: add DG2 platform info
>       Merge branch 'topic/xehp-dg2-definitions-2021-07-21' into drm-intel-gt-next
>       drm/i915/xehp: Define multicast register ranges
>       drm/i915/xehp: Xe_HP forcewake support
>       drm/i915/xehpsdv: Correct parameters for IS_XEHPSDV_GT_STEP()
>       drm/i915/dg2: Add forcewake table
>       drm/i915/xehpsdv: Add maximum sseu limits
>       drm/i915/dg2: DG2 uses the same sseu limits as XeHP SDV
>       drm/i915/xehpsdv: Define steering tables
>       drm/i915/dg2: Update steering tables
>       drm/i915/dg2: Add SQIDI steering
> 
> Matthew Auld (25):
>       drm/i915/ttm: add ttm_buddy_man
>       drm/i915/ttm: add i915_sg_from_buddy_resource
>       drm/i915/ttm: pass along the I915_BO_ALLOC_CONTIGUOUS
>       drm/i915/ttm: remove node usage in our naming
>       drm/i915/ttm: switch over to ttm_buddy_man
>       drm/i915/ttm: restore min_page_size behaviour
>       drm/i915/ttm: remove unused function
>       drm/i915/selftests: add back the selftest() hook for the buddy
>       drm/i915/ttm: fix static warning
>       drm/i915/gem: Introduce a selftest for the gem object migrate functionality
>       drm/i915: support forcing the page size with lmem
>       drm/i915/gtt: ignore min_page_size for paging structures
>       drm/i915/selftests: fix smatch warning in igt_check_blocks
>       drm/i915/selftests: fix smatch warning in mock_reserve
>       drm/i915: use consistent CPU mappings for pin_map users
>       drm/i915/uapi: convert drm_i915_gem_caching to kernel doc
>       drm/i915/uapi: convert drm_i915_gem_set_domain to kernel doc
>       drm/i915/gtt: drop the page table optimisation
>       drm/i915/uapi: reject caching ioctls for discrete
>       drm/i915/uapi: convert drm_i915_gem_userptr to kernel doc
>       drm/i915/uapi: reject set_domain for discrete
>       drm/i915: document caching related bits
>       drm/i915/ehl: unconditionally flush the pages on acquire
>       drm/i915/selftests: prefer the create_user helper
>       drm/i915/xehp: Changes to ss/eu definitions
> 
> Matthew Brost (52):
>       drm/i915: Move priolist to new i915_sched_engine object
>       drm/i915: Add i915_sched_engine_is_empty function
>       drm/i915: Reset sched_engine.no_priolist immediately after dequeue
>       drm/i915: Move active tracking to i915_sched_engine
>       drm/i915: Move engine->schedule to i915_sched_engine
>       drm/i915: Add kick_backend function to i915_sched_engine
>       drm/i915: Update i915_scheduler to operate on i915_sched_engine
>       drm/i915: Move submission tasklet to i915_sched_engine
>       drm/doc/rfc: i915 GuC submission / DRM scheduler
>       drm/doc/rfc: i915 new parallel submission uAPI plan
>       drm/i915/guc: Relax CTB response timeout
>       drm/i915/guc: Improve error message for unsolicited CT response
>       drm/i915/guc: Increase size of CTB buffers
>       drm/i915/guc: Add non blocking CTB send function
>       drm/i915/guc: Add stall timer to non blocking CTB send function
>       drm/i915/guc: Optimize CTB writes and reads
>       drm/i915/guc: Add new GuC interface defines and structures
>       drm/i915/guc: Remove GuC stage descriptor, add LRC descriptor
>       drm/i915/guc: Add LRC descriptor context lookup array
>       drm/i915/guc: Implement GuC submission tasklet
>       drm/i915/guc: Add bypass tasklet submission path to GuC
>       drm/i915/guc: Implement GuC context operations for new inteface
>       drm/i915/guc: Insert fence on context when deregistering
>       drm/i915/guc: Defer context unpin until scheduling is disabled
>       drm/i915/guc: Disable engine barriers with GuC during unpin
>       drm/i915/guc: Extend deregistration fence to schedule disable
>       drm/i915: Disable preempt busywait when using GuC scheduling
>       drm/i915/guc: Ensure request ordering via completion fences
>       drm/i915/guc: Disable semaphores when using GuC scheduling
>       drm/i915/guc: Ensure G2H response has space in buffer
>       drm/i915/guc: Update intel_gt_wait_for_idle to work with GuC
>       drm/i915/guc: Update GuC debugfs to support new GuC
>       drm/i915/guc: Add trace point for GuC submit
>       drm/i915: Add intel_context tracing
>       drm/i915/guc: GuC virtual engines
>       drm/i915: Hold reference to intel_context over life of i915_request
>       drm/i915/guc: Disable bonding extension with GuC submission
>       drm/i915/guc: Direct all breadcrumbs for a class to single breadcrumbs
>       drm/i915: Add i915_sched_engine destroy vfunc
>       drm/i915: Move active request tracking to a vfunc
>       drm/i915/guc: Reset implementation for new GuC interface
>       drm/i915: Reset GPU immediately if submission is disabled
>       drm/i915/guc: Add disable interrupts to guc sanitize
>       drm/i915/guc: Suspend/resume implementation for new interface
>       drm/i915/guc: Handle context reset notification
>       drm/i915/guc: Handle engine reset failure notification
>       drm/i915/guc: Enable the timer expired interrupt for GuC
>       drm/i915/guc: Capture error state on context reset
>       drm/i915/guc: Implement banned contexts for GuC submission
>       drm/i915/guc: Support request cancellation
>       drm/i915/selftest: Increase some timeouts in live_requests
>       drm/i915/guc: Implement GuC priority management
> 
> Michal Wajdeczko (3):
>       drm/i915/guc: Introduce unified HXG messages
>       drm/i915/guc: Update firmware to v62.0.0
>       drm/i915/doc: Include GuC ABI documentation
> 
> Prathap Kumar Valsan (1):
>       drm/i915/xehp: New engine context offsets
> 
> Rahul Kumar Singh (2):
>       drm/i915/selftest: Fix workarounds selftest for GuC submission
>       drm/i915/selftest: Fix MOCS selftest for GuC submission
> 
> Ramalingam C (1):
>       drm/i915/ttm: accelerated move implementation
> 
> Rodrigo Vivi (1):
>       Merge drm/drm-next into drm-intel-gt-next
> 
> Stuart Summers (1):
>       drm/i915/xehp: Handle new device context ID format
> 
> Tejas Upadhyay (2):
>       drm/i915/selftest: Extend ctx_timestamp ICL workaround to GEN11
>       drm/i915/adl_s: Fix dma_mask_size to 39 bit
> 
> Thomas Hellström (18):
>       drm/i915: Simplify userptr locking
>       drm/i915/ttm: Fix memory leaks
>       drm/i915/ttm: Calculate the object placement at get_pages time
>       drm/i915: Reference objects on the ww object list
>       drm/i915: Break out dma_resv ww locking utilities to separate files
>       drm/i915: Introduce a ww transaction helper
>       drm/i915/gem: Zap the client blt code
>       drm/i915/gem: Zap the i915_gem_object_blt code
>       drm/i915: Perform execbuffer object locking as a separate step
>       drm/i915/ttm: Fix incorrect assumptions about ttm_bo_validate() semantics
>       drm/i915: Update object placement flags to be mutable
>       drm/i915/ttm: Adjust gem flags and caching settings after a move
>       drm/i915/ttm: Use TTM for system memory
>       drm/i915: Reinstate the mmap ioctl for some platforms
>       drm/i915/gem: Implement object migration
>       drm/i915/display: Migrate objects to LMEM if possible for display
>       drm/i915/gem: Correct the locking and pin pattern for dma-buf (v8)
>       drm/i915/gem: Migrate to system at dma-buf attach time (v7)
> 
> Thomas Zimmermann (2):
>       drm/i915: Use the correct IRQ during resume
>       drm/i915: Drop all references to DRM IRQ midlayer
> 
> Tvrtko Ursulin (3):
>       drm/i915: Fix busy ioctl commentary
>       drm/i915: Document the Virtual Engine uAPI
>       drm/i915/xehp: VDBOX/VEBOX fusing registers are enable-based
> 
> Venkata Sandeep Dhanalakota (1):
>       drm/i915/gen12: Use fuse info to enable SFC
> 
> Ville Syrjälä (1):
>       drm/i915/gt: Fix -EDEADLK handling regression
> 
> Vinay Belgaumkar (14):
>       drm/i915/guc/slpc: Initial definitions for SLPC
>       drm/i915/guc/slpc: Gate Host RPS when SLPC is enabled
>       drm/i915/guc/slpc: Adding SLPC communication interfaces
>       drm/i915/guc/slpc: Allocate, initialize and release SLPC
>       drm/i915/guc/slpc: Enable SLPC and add related H2G events
>       drm/i915/guc/slpc: Remove BUG_ON in guc_submission_disable
>       drm/i915/guc/slpc: Add methods to set min/max frequency
>       drm/i915/guc/slpc: Add get max/min freq hooks
>       drm/i915/guc/slpc: Add debugfs for SLPC info
>       drm/i915/guc/slpc: Enable ARAT timer interrupt
>       drm/i915/guc/slpc: Cache platform frequency limits
>       drm/i915/guc/slpc: Sysfs hooks for SLPC
>       drm/i915/guc/slpc: Add SLPC selftest
>       drm/i915/guc/rc: Setup and enable GuCRC feature
> 
> Wan Jiabing (1):
>       drm/i915: Remove duplicate include of intel_region_lmem.h
> 
>  Documentation/gpu/i915.rst                         |   15 +
>  Documentation/gpu/rfc/i915_parallel_execbuf.h      |  122 +
>  Documentation/gpu/rfc/i915_scheduler.rst           |  148 +
>  Documentation/gpu/rfc/index.rst                    |    4 +
>  drivers/gpu/drm/drm_gem.c                          |    9 -
>  drivers/gpu/drm/i915/Kconfig.debug                 |    6 +
>  drivers/gpu/drm/i915/Makefile                      |   14 +-
>  drivers/gpu/drm/i915/display/intel_display.c       |    5 +-
>  drivers/gpu/drm/i915/display/intel_display_power.c |    2 +-
>  drivers/gpu/drm/i915/display/intel_dpll_mgr.c      |    6 +-
>  drivers/gpu/drm/i915/display/intel_psr.c           |    4 +-
>  drivers/gpu/drm/i915/gem/i915_gem_clflush.c        |    4 +-
>  drivers/gpu/drm/i915/gem/i915_gem_client_blt.c     |  355 ---
>  drivers/gpu/drm/i915/gem/i915_gem_client_blt.h     |   21 -
>  drivers/gpu/drm/i915/gem/i915_gem_context.c        | 2920 +++++++++-----------
>  drivers/gpu/drm/i915/gem/i915_gem_context.h        |    6 +
>  drivers/gpu/drm/i915/gem/i915_gem_context_types.h  |  196 +-
>  drivers/gpu/drm/i915/gem/i915_gem_create.c         |  188 +-
>  drivers/gpu/drm/i915/gem/i915_gem_dmabuf.c         |   58 +-
>  drivers/gpu/drm/i915/gem/i915_gem_domain.c         |   11 +-
>  drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c     |  699 +----
>  drivers/gpu/drm/i915/gem/i915_gem_internal.c       |    4 +-
>  drivers/gpu/drm/i915/gem/i915_gem_lmem.c           |  160 +-
>  drivers/gpu/drm/i915/gem/i915_gem_lmem.h           |   12 +-
>  drivers/gpu/drm/i915/gem/i915_gem_mman.c           |  107 +-
>  drivers/gpu/drm/i915/gem/i915_gem_object.c         |  350 ++-
>  drivers/gpu/drm/i915/gem/i915_gem_object.h         |   69 +-
>  drivers/gpu/drm/i915/gem/i915_gem_object_blt.c     |  461 ---
>  drivers/gpu/drm/i915/gem/i915_gem_object_blt.h     |   39 -
>  drivers/gpu/drm/i915/gem/i915_gem_object_types.h   |  255 +-
>  drivers/gpu/drm/i915/gem/i915_gem_pages.c          |   54 +-
>  drivers/gpu/drm/i915/gem/i915_gem_phys.c           |    2 +-
>  drivers/gpu/drm/i915/gem/i915_gem_region.c         |   23 +-
>  drivers/gpu/drm/i915/gem/i915_gem_region.h         |    1 +
>  drivers/gpu/drm/i915/gem/i915_gem_shmem.c          |   30 +-
>  drivers/gpu/drm/i915/gem/i915_gem_stolen.c         |    3 +-
>  drivers/gpu/drm/i915/gem/i915_gem_ttm.c            |  965 +++++++
>  drivers/gpu/drm/i915/gem/i915_gem_ttm.h            |   49 +
>  drivers/gpu/drm/i915/gem/i915_gem_userptr.c        |  117 +-
>  drivers/gpu/drm/i915/gem/i915_gem_wait.c           |   23 +-
>  .../gpu/drm/i915/gem/selftests/huge_gem_object.c   |    4 +-
>  drivers/gpu/drm/i915/gem/selftests/huge_pages.c    |    8 +-
>  .../drm/i915/gem/selftests/i915_gem_client_blt.c   |  114 +-
>  .../gpu/drm/i915/gem/selftests/i915_gem_context.c  |  127 +-
>  .../gpu/drm/i915/gem/selftests/i915_gem_dmabuf.c   |  190 +-
>  .../drm/i915/gem/selftests/i915_gem_execbuffer.c   |    4 +
>  .../gpu/drm/i915/gem/selftests/i915_gem_migrate.c  |  243 ++
>  drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c |  164 +-
>  .../drm/i915/gem/selftests/i915_gem_object_blt.c   |  597 ----
>  drivers/gpu/drm/i915/gem/selftests/i915_gem_phys.c |    3 +-
>  drivers/gpu/drm/i915/gem/selftests/mock_context.c  |   67 +-
>  drivers/gpu/drm/i915/gem/selftests/mock_context.h  |    4 +-
>  drivers/gpu/drm/i915/gt/debugfs_gt_pm.c            |   10 +-
>  drivers/gpu/drm/i915/gt/gen8_engine_cs.c           |   17 +-
>  drivers/gpu/drm/i915/gt/gen8_ppgtt.c               |   73 +-
>  drivers/gpu/drm/i915/gt/intel_breadcrumbs.c        |   44 +-
>  drivers/gpu/drm/i915/gt/intel_breadcrumbs.h        |   16 +-
>  drivers/gpu/drm/i915/gt/intel_breadcrumbs_types.h  |    7 +
>  drivers/gpu/drm/i915/gt/intel_context.c            |   88 +-
>  drivers/gpu/drm/i915/gt/intel_context.h            |   56 +-
>  drivers/gpu/drm/i915/gt/intel_context_param.c      |   63 -
>  drivers/gpu/drm/i915/gt/intel_context_param.h      |    6 +-
>  drivers/gpu/drm/i915/gt/intel_context_types.h      |   64 +-
>  drivers/gpu/drm/i915/gt/intel_engine.h             |   87 +-
>  drivers/gpu/drm/i915/gt/intel_engine_cs.c          |  420 +--
>  drivers/gpu/drm/i915/gt/intel_engine_heartbeat.c   |   74 +-
>  drivers/gpu/drm/i915/gt/intel_engine_heartbeat.h   |    4 +
>  drivers/gpu/drm/i915/gt/intel_engine_pm.c          |    4 +-
>  drivers/gpu/drm/i915/gt/intel_engine_types.h       |   93 +-
>  drivers/gpu/drm/i915/gt/intel_engine_user.c        |    6 +-
>  .../gpu/drm/i915/gt/intel_execlists_submission.c   |  604 ++--
>  .../gpu/drm/i915/gt/intel_execlists_submission.h   |   12 +-
>  drivers/gpu/drm/i915/gt/intel_ggtt.c               |    6 +-
>  drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c       |    2 +-
>  drivers/gpu/drm/i915/gt/intel_gpu_commands.h       |    2 +
>  drivers/gpu/drm/i915/gt/intel_gt.c                 |  197 +-
>  drivers/gpu/drm/i915/gt/intel_gt.h                 |   10 +
>  drivers/gpu/drm/i915/gt/intel_gt_clock_utils.c     |   10 +-
>  drivers/gpu/drm/i915/gt/intel_gt_irq.c             |   13 +-
>  drivers/gpu/drm/i915/gt/intel_gt_pm.c              |   11 +-
>  drivers/gpu/drm/i915/gt/intel_gt_requests.c        |   21 +-
>  drivers/gpu/drm/i915/gt/intel_gt_requests.h        |    9 +-
>  drivers/gpu/drm/i915/gt/intel_gt_types.h           |   37 +
>  drivers/gpu/drm/i915/gt/intel_gtt.c                |   20 +-
>  drivers/gpu/drm/i915/gt/intel_gtt.h                |   18 +-
>  drivers/gpu/drm/i915/gt/intel_lrc.c                |  117 +-
>  drivers/gpu/drm/i915/gt/intel_lrc_reg.h            |    3 +-
>  drivers/gpu/drm/i915/gt/intel_migrate.c            |  688 +++++
>  drivers/gpu/drm/i915/gt/intel_migrate.h            |   65 +
>  drivers/gpu/drm/i915/gt/intel_migrate_types.h      |   15 +
>  drivers/gpu/drm/i915/gt/intel_mocs.c               |    2 +-
>  drivers/gpu/drm/i915/gt/intel_rc6.c                |   49 +-
>  drivers/gpu/drm/i915/gt/intel_region_lmem.c        |    7 +-
>  drivers/gpu/drm/i915/gt/intel_renderstate.h        |    1 +
>  drivers/gpu/drm/i915/gt/intel_reset.c              |   56 +-
>  drivers/gpu/drm/i915/gt/intel_ring.h               |    1 +
>  drivers/gpu/drm/i915/gt/intel_ring_submission.c    |   70 +-
>  drivers/gpu/drm/i915/gt/intel_rps.c                |  209 +-
>  drivers/gpu/drm/i915/gt/intel_rps.h                |   10 +
>  drivers/gpu/drm/i915/gt/intel_sseu.c               |  126 +-
>  drivers/gpu/drm/i915/gt/intel_sseu.h               |   10 +-
>  drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c       |    8 +-
>  drivers/gpu/drm/i915/gt/intel_workarounds.c        |  498 ++--
>  drivers/gpu/drm/i915/gt/intel_workarounds_types.h  |    1 +
>  drivers/gpu/drm/i915/gt/mock_engine.c              |   51 +-
>  drivers/gpu/drm/i915/gt/selftest_context.c         |   10 +
>  .../gpu/drm/i915/gt/selftest_engine_heartbeat.c    |   22 +
>  .../gpu/drm/i915/gt/selftest_engine_heartbeat.h    |    2 +
>  drivers/gpu/drm/i915/gt/selftest_engine_pm.c       |    4 +-
>  drivers/gpu/drm/i915/gt/selftest_execlists.c       |  307 +-
>  drivers/gpu/drm/i915/gt/selftest_hangcheck.c       |  330 ++-
>  drivers/gpu/drm/i915/gt/selftest_lrc.c             |    6 +-
>  drivers/gpu/drm/i915/gt/selftest_migrate.c         |  669 +++++
>  drivers/gpu/drm/i915/gt/selftest_mocs.c            |   52 +-
>  drivers/gpu/drm/i915/gt/selftest_reset.c           |    2 +-
>  drivers/gpu/drm/i915/gt/selftest_slpc.c            |  311 +++
>  drivers/gpu/drm/i915/gt/selftest_timeline.c        |    2 +-
>  drivers/gpu/drm/i915/gt/selftest_workarounds.c     |  162 +-
>  drivers/gpu/drm/i915/gt/uc/abi/guc_actions_abi.h   |  129 +-
>  .../gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h  |  235 ++
>  .../drm/i915/gt/uc/abi/guc_communication_ctb_abi.h |  127 +-
>  .../i915/gt/uc/abi/guc_communication_mmio_abi.h    |   65 +-
>  drivers/gpu/drm/i915/gt/uc/abi/guc_messages_abi.h  |  213 ++
>  drivers/gpu/drm/i915/gt/uc/intel_guc.c             |  206 +-
>  drivers/gpu/drm/i915/gt/uc/intel_guc.h             |  119 +-
>  drivers/gpu/drm/i915/gt/uc/intel_guc_ads.c         |  487 +++-
>  drivers/gpu/drm/i915/gt/uc/intel_guc_ads.h         |    4 +
>  drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c          |  703 +++--
>  drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h          |   36 +-
>  drivers/gpu/drm/i915/gt/uc/intel_guc_debugfs.c     |   47 +-
>  drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h        |  167 +-
>  drivers/gpu/drm/i915/gt/uc/intel_guc_log.c         |   29 +-
>  drivers/gpu/drm/i915/gt/uc/intel_guc_log.h         |    6 +-
>  drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c          |   80 +
>  drivers/gpu/drm/i915/gt/uc/intel_guc_rc.h          |   31 +
>  drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c        |  626 +++++
>  drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h        |   42 +
>  drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h  |   29 +
>  drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c  | 2895 +++++++++++++++++--
>  drivers/gpu/drm/i915/gt/uc/intel_guc_submission.h  |   18 +-
>  drivers/gpu/drm/i915/gt/uc/intel_uc.c              |  126 +-
>  drivers/gpu/drm/i915/gt/uc/intel_uc.h              |   15 +
>  drivers/gpu/drm/i915/gt/uc/intel_uc_fw.c           |   27 +-
>  drivers/gpu/drm/i915/gvt/scheduler.c               |    7 +-
>  drivers/gpu/drm/i915/i915_active.c                 |   37 +-
>  drivers/gpu/drm/i915/i915_active.h                 |    3 +
>  drivers/gpu/drm/i915/i915_buddy.c                  |  421 +++
>  drivers/gpu/drm/i915/i915_buddy.h                  |  135 +
>  drivers/gpu/drm/i915/i915_cmd_parser.c             |  203 +-
>  drivers/gpu/drm/i915/i915_debugfs_params.c         |   32 +
>  drivers/gpu/drm/i915/i915_drv.c                    |    9 +-
>  drivers/gpu/drm/i915/i915_drv.h                    |  228 +-
>  drivers/gpu/drm/i915/i915_gem.c                    |   63 +-
>  drivers/gpu/drm/i915/i915_gem.h                    |   12 -
>  drivers/gpu/drm/i915/i915_gem_evict.c              |    1 +
>  drivers/gpu/drm/i915/i915_gem_ww.c                 |   63 +
>  drivers/gpu/drm/i915/i915_gem_ww.h                 |   50 +
>  drivers/gpu/drm/i915/i915_getparam.c               |    7 +-
>  drivers/gpu/drm/i915/i915_globals.c                |  160 --
>  drivers/gpu/drm/i915/i915_globals.h                |   37 -
>  drivers/gpu/drm/i915/i915_gpu_error.c              |   27 +-
>  drivers/gpu/drm/i915/i915_module.c                 |  113 +
>  drivers/gpu/drm/i915/i915_pci.c                    |  129 +-
>  drivers/gpu/drm/i915/i915_pci.h                    |    8 +
>  drivers/gpu/drm/i915/i915_perf.c                   |   36 +-
>  drivers/gpu/drm/i915/i915_perf.h                   |    2 +-
>  drivers/gpu/drm/i915/i915_pmu.c                    |    6 +-
>  drivers/gpu/drm/i915/i915_pmu.h                    |    4 +-
>  drivers/gpu/drm/i915/i915_reg.h                    |   48 +-
>  drivers/gpu/drm/i915/i915_request.c                |  307 +-
>  drivers/gpu/drm/i915/i915_request.h                |   38 +-
>  drivers/gpu/drm/i915/i915_scatterlist.c            |   80 +
>  drivers/gpu/drm/i915/i915_scatterlist.h            |    5 +
>  drivers/gpu/drm/i915/i915_scheduler.c              |  220 +-
>  drivers/gpu/drm/i915/i915_scheduler.h              |   54 +-
>  drivers/gpu/drm/i915/i915_scheduler_types.h        |  111 +
>  drivers/gpu/drm/i915/i915_sw_fence_work.c          |    5 +-
>  drivers/gpu/drm/i915/i915_sw_fence_work.h          |    2 +-
>  drivers/gpu/drm/i915/i915_sysfs.c                  |   83 +-
>  drivers/gpu/drm/i915/i915_trace.h                  |  201 +-
>  drivers/gpu/drm/i915/i915_ttm_buddy_manager.c      |  258 ++
>  drivers/gpu/drm/i915/i915_ttm_buddy_manager.h      |   56 +
>  drivers/gpu/drm/i915/i915_vma.c                    |   34 +-
>  drivers/gpu/drm/i915/i915_vma.h                    |    3 +
>  drivers/gpu/drm/i915/intel_device_info.c           |   16 +-
>  drivers/gpu/drm/i915/intel_device_info.h           |   12 +-
>  drivers/gpu/drm/i915/intel_memory_region.c         |   63 +-
>  drivers/gpu/drm/i915/intel_memory_region.h         |   30 +-
>  drivers/gpu/drm/i915/intel_pm.c                    |   22 +-
>  drivers/gpu/drm/i915/intel_region_ttm.c            |  150 +-
>  drivers/gpu/drm/i915/intel_region_ttm.h            |   23 +-
>  drivers/gpu/drm/i915/intel_step.c                  |  134 +-
>  drivers/gpu/drm/i915/intel_step.h                  |    5 +
>  drivers/gpu/drm/i915/intel_uncore.c                |  422 ++-
>  drivers/gpu/drm/i915/intel_uncore.h                |   20 +-
>  drivers/gpu/drm/i915/selftests/i915_buddy.c        |  787 ++++++
>  .../gpu/drm/i915/selftests/i915_live_selftests.h   |    5 +-
>  .../gpu/drm/i915/selftests/i915_mock_selftests.h   |    2 +-
>  .../gpu/drm/i915/selftests/i915_perf_selftests.h   |    2 +-
>  drivers/gpu/drm/i915/selftests/i915_request.c      |    4 +-
>  drivers/gpu/drm/i915/selftests/i915_selftest.c     |    4 +-
>  drivers/gpu/drm/i915/selftests/igt_flush_test.c    |    2 +-
>  drivers/gpu/drm/i915/selftests/igt_live_test.c     |    2 +-
>  drivers/gpu/drm/i915/selftests/igt_mmap.c          |   25 +-
>  drivers/gpu/drm/i915/selftests/igt_mmap.h          |   12 +-
>  .../gpu/drm/i915/selftests/intel_memory_region.c   |  257 +-
>  .../drm/i915/selftests/intel_scheduler_helpers.c   |   88 +
>  .../drm/i915/selftests/intel_scheduler_helpers.h   |   33 +
>  drivers/gpu/drm/i915/selftests/intel_uncore.c      |    2 +
>  drivers/gpu/drm/i915/selftests/mock_gem_device.c   |    3 +-
>  drivers/gpu/drm/i915/selftests/mock_gtt.c          |    1 -
>  drivers/gpu/drm/i915/selftests/mock_region.c       |   29 +-
>  include/drm/drm_vma_manager.h                      |    2 +-
>  include/uapi/drm/i915_drm.h                        |  498 +++-
>  214 files changed, 18965 insertions(+), 8462 deletions(-)
>  create mode 100644 Documentation/gpu/rfc/i915_parallel_execbuf.h
>  create mode 100644 Documentation/gpu/rfc/i915_scheduler.rst
>  delete mode 100644 drivers/gpu/drm/i915/gem/i915_gem_client_blt.c
>  delete mode 100644 drivers/gpu/drm/i915/gem/i915_gem_client_blt.h
>  delete mode 100644 drivers/gpu/drm/i915/gem/i915_gem_object_blt.c
>  delete mode 100644 drivers/gpu/drm/i915/gem/i915_gem_object_blt.h
>  create mode 100644 drivers/gpu/drm/i915/gem/i915_gem_ttm.c
>  create mode 100644 drivers/gpu/drm/i915/gem/i915_gem_ttm.h
>  create mode 100644 drivers/gpu/drm/i915/gem/selftests/i915_gem_migrate.c
>  delete mode 100644 drivers/gpu/drm/i915/gem/selftests/i915_gem_object_blt.c
>  delete mode 100644 drivers/gpu/drm/i915/gt/intel_context_param.c
>  create mode 100644 drivers/gpu/drm/i915/gt/intel_migrate.c
>  create mode 100644 drivers/gpu/drm/i915/gt/intel_migrate.h
>  create mode 100644 drivers/gpu/drm/i915/gt/intel_migrate_types.h
>  create mode 100644 drivers/gpu/drm/i915/gt/selftest_migrate.c
>  create mode 100644 drivers/gpu/drm/i915/gt/selftest_slpc.c
>  create mode 100644 drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
>  create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c
>  create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_guc_rc.h
>  create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
>  create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
>  create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
>  create mode 100644 drivers/gpu/drm/i915/i915_buddy.c
>  create mode 100644 drivers/gpu/drm/i915/i915_buddy.h
>  create mode 100644 drivers/gpu/drm/i915/i915_gem_ww.c
>  create mode 100644 drivers/gpu/drm/i915/i915_gem_ww.h
>  delete mode 100644 drivers/gpu/drm/i915/i915_globals.c
>  delete mode 100644 drivers/gpu/drm/i915/i915_globals.h
>  create mode 100644 drivers/gpu/drm/i915/i915_module.c
>  create mode 100644 drivers/gpu/drm/i915/i915_pci.h
>  create mode 100644 drivers/gpu/drm/i915/i915_ttm_buddy_manager.c
>  create mode 100644 drivers/gpu/drm/i915/i915_ttm_buddy_manager.h
>  create mode 100644 drivers/gpu/drm/i915/selftests/i915_buddy.c
>  create mode 100644 drivers/gpu/drm/i915/selftests/intel_scheduler_helpers.c
>  create mode 100644 drivers/gpu/drm/i915/selftests/intel_scheduler_helpers.h


More information about the dri-devel mailing list