mirror_ubuntu-kernels/drivers/gpu/drm/i915/gt
Andi Shyti 6a35f22d22 drm/i915/gt: Support aux invalidation on all engines
Perform some refactoring with the purpose of keeping in one
single place all the operations around the aux table
invalidation.

With this refactoring add more engines where the invalidation
should be performed.

Fixes: 972282c4cf ("drm/i915/gen12: Add aux table invalidate for all engines")
Signed-off-by: Andi Shyti <andi.shyti@linux.intel.com>
Cc: Jonathan Cavitt <jonathan.cavitt@intel.com>
Cc: Matt Roper <matthew.d.roper@intel.com>
Cc: <stable@vger.kernel.org> # v5.8+
Reviewed-by: Andrzej Hajda <andrzej.hajda@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230725001950.1014671-8-andi.shyti@linux.intel.com
(cherry picked from commit 76ff7789d6)
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
2023-08-01 10:50:23 +01:00
..
selftests
shaders
uc drm/i915/guc/slpc: Apply min softlimit correctly 2023-06-26 09:17:50 +01:00
gen2_engine_cs.c drm/i915: Only include i915_reg.h from .c files 2022-02-02 07:59:54 -08:00
gen2_engine_cs.h
gen6_engine_cs.c drm/i915/gt: Move engine registers to their own header 2022-01-11 14:03:25 -08:00
gen6_engine_cs.h
gen6_ppgtt.c drm/i915: use pat_index instead of cache_level 2023-05-11 17:38:55 +02:00
gen6_ppgtt.h drm/i915: Create a dummy object for gen6 ppgtt 2021-11-19 17:38:03 +00:00
gen6_renderstate.c drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
gen7_renderclear.c drm/i915: Wrap all access to i915_vma.node.start|size 2022-12-06 10:52:42 +01:00
gen7_renderclear.h
gen7_renderstate.c drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
gen8_engine_cs.c drm/i915/gt: Support aux invalidation on all engines 2023-08-01 10:50:23 +01:00
gen8_engine_cs.h drm/i915/gt: Support aux invalidation on all engines 2023-08-01 10:50:23 +01:00
gen8_ppgtt.c drm/i915: Remove dead code from gen8_pte_encode 2023-07-11 09:21:28 +01:00
gen8_ppgtt.h drm/i915: use pat_index instead of cache_level 2023-05-11 17:38:55 +02:00
gen8_renderstate.c drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
gen9_renderstate.c drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
hsw_clear_kernel.c
intel_breadcrumbs_types.h drm/i915/guc: Direct all breadcrumbs for a class to single breadcrumbs 2021-07-27 17:31:35 -07:00
intel_breadcrumbs.c drm/i915/gt: Only kick the signal worker if there's been an update 2022-07-12 17:44:43 -04:00
intel_breadcrumbs.h drm/i915/guc: Direct all breadcrumbs for a class to single breadcrumbs 2021-07-27 17:31:35 -07:00
intel_context_param.h drm/i915/gem: Set the watchdog timeout directly in intel_context_set_gem (v2) 2021-07-08 19:43:49 +02:00
intel_context_sseu.c drm/i915/lrc: move lrc_get_runtime() to intel_lrc.c 2022-02-17 15:42:09 +02:00
intel_context_types.h i915/pmu: Add support for total context runtime for GuC back-end 2023-05-02 10:22:47 -07:00
intel_context.c i915/pmu: Add support for total context runtime for GuC back-end 2023-05-02 10:22:47 -07:00
intel_context.h drm/i915/context: fix kernel-doc parameter descriptions 2023-05-04 12:11:36 +03:00
intel_engine_cs.c drm/i915/engine: fix kernel-doc function name for intel_engine_cleanup_common() 2023-05-04 12:11:34 +03:00
intel_engine_heartbeat.c drm/i915: Make the heartbeat play nice with long pre-emption timeouts 2022-10-24 12:12:36 -07:00
intel_engine_heartbeat.h drm/i915: Reset GPU immediately if submission is disabled 2021-07-27 17:31:45 -07:00
intel_engine_pm.c drm/i915: use pointer to i915 instead of rpm in wakeref 2023-06-10 06:32:58 +03:00
intel_engine_pm.h drm/i915/guc: Take engine PM when a context is pinned with GuC submission 2021-10-15 10:37:26 -07:00
intel_engine_regs.h drm/i915: Move/adjust register definitions related to Wa_22011450934 2023-01-18 12:29:10 -08:00
intel_engine_stats.h drm/i915/pmu: Add a name to the execlists stats 2021-10-28 11:02:18 -07:00
intel_engine_types.h drm/i915/engine: hide preempt_hang selftest member from kernel-doc 2023-05-04 12:11:39 +03:00
intel_engine_user.c drm/i915/gt: Consider multi-gt instead of to_gt() 2023-04-19 16:04:52 +02:00
intel_engine_user.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_engine.h drm/i915: Fix up locking around dumping requests lists 2023-01-30 15:48:21 -05:00
intel_execlists_submission.c drm/i915: add a dedicated workqueue inside drm_i915_private 2023-06-10 06:33:11 +03:00
intel_execlists_submission.h drm/i915: Fix up locking around dumping requests lists 2023-01-30 15:48:21 -05:00
intel_ggtt_fencing.c drm/i915/display: add intel_display_limits.h for key enums 2023-01-25 13:59:12 +02:00
intel_ggtt_fencing.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_ggtt_gmch.c drm/i915/gt: Fix parameter in gmch_ggtt_insert_{entries, page}() 2023-06-02 02:46:09 +02:00
intel_ggtt_gmch.h drm/i915/gt: Re-do the intel-gtt split 2022-06-22 15:52:56 -07:00
intel_ggtt.c drm/i915/uc: perma-pin firmwares 2023-06-05 09:52:42 -07:00
intel_gpu_commands.h drm/i915/gt: Poll aux invalidation register bit on invalidation 2023-08-01 10:50:16 +01:00
intel_gsc.c drm/i915/gsc: Only initialize GSC in tile 0 2022-11-22 06:02:29 -08:00
intel_gsc.h drm/i915/gt: Rename dev_priv to i915 for private data naming consistency 2023-02-27 23:22:54 +01:00
intel_gt_buffer_pool_types.h Merge tag 'drm-intel-gt-next-2021-04-06' of git://anongit.freedesktop.org/drm/drm-intel into drm-next 2021-04-08 12:46:12 +10:00
intel_gt_buffer_pool.c drm/i915: add a dedicated workqueue inside drm_i915_private 2023-06-10 06:33:11 +03:00
intel_gt_buffer_pool.h
intel_gt_clock_utils.c drm/i915/gt: Start adding module oriented dmesg output 2023-01-17 15:28:28 -08:00
intel_gt_clock_utils.h
intel_gt_debugfs.c drm/i915/gt: Create per-gt debugfs files 2023-03-21 10:09:31 +01:00
intel_gt_debugfs.h drm/i915/debugfs: Do not return '0' if there is nothing to return 2022-03-22 10:08:20 +00:00
intel_gt_engines_debugfs.c drm/i915: rename debugfs_engines files 2021-09-18 23:33:22 -07:00
intel_gt_engines_debugfs.h drm/i915: rename debugfs_engines files 2021-09-18 23:33:22 -07:00
intel_gt_irq.c drm/i915: add a dedicated workqueue inside drm_i915_private 2023-06-10 06:33:11 +03:00
intel_gt_irq.h drm/i915/gt: Move CS interrupt handler to the backend 2021-05-25 15:14:40 +02:00
intel_gt_mcr.c drm/i915/gt: Rename dev_priv to i915 for private data naming consistency 2023-02-27 23:22:54 +01:00
intel_gt_mcr.h drm/i915/gt: Add dedicated MCR lock 2022-11-30 09:06:34 -08:00
intel_gt_pm_debugfs.c drm/i915/guc/slpc: Disable rps_boost debugfs 2023-05-17 16:20:32 -07:00
intel_gt_pm_debugfs.h drm/i915/debugfs: Do not return '0' if there is nothing to return 2022-03-22 10:08:20 +00:00
intel_gt_pm_irq.c drm/i915/mtl: Use primary GT's irq lock for media GT 2022-09-12 15:23:12 +03:00
intel_gt_pm_irq.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_gt_pm.c drm/i915: use pointer to i915 instead of rpm in wakeref 2023-06-10 06:32:58 +03:00
intel_gt_pm.h drm/i915/gt: Ignore TLB invalidations on idle engines 2022-08-08 13:14:47 -04:00
intel_gt_print.h drm/i915/guc: More debug print updates - GuC logging 2023-02-08 23:51:05 -08:00
intel_gt_regs.h drm/i915/gt: Cleanup aux invalidation registers 2023-08-01 10:37:51 +01:00
intel_gt_requests.c drm/i915: add a dedicated workqueue inside drm_i915_private 2023-06-10 06:33:11 +03:00
intel_gt_requests.h drm/i915: use linux/stddef.h due to "isystem: trim/fixup stdarg.h and other headers" 2021-09-06 09:31:23 +02:00
intel_gt_sysfs_pm.c drm/i915/guc/slpc: Provide sysfs for efficient freq 2023-04-28 09:59:51 -07:00
intel_gt_sysfs_pm.h drm/i915/gt: Create per-tile RC6 sysfs interface 2022-03-21 08:37:42 +00:00
intel_gt_sysfs.c drm/i915: Make kobj_type structures constant 2023-02-17 11:50:28 +02:00
intel_gt_sysfs.h drm/i915: Fix CFI violations in gt_sysfs 2022-10-27 19:14:53 +02:00
intel_gt_types.h drm/i915/mtl: Resize noa_wait BO size to save restore GPR regs 2022-12-17 00:54:46 -08:00
intel_gt.c Linux 6.3-rc4 2023-03-29 16:00:23 +02:00
intel_gt.h drm/i915/uc: Introduce GSC FW 2022-12-09 08:28:41 -08:00
intel_gtt.c drm/i915: Fix one wrong caching mode enum usage 2023-07-11 09:21:32 +01:00
intel_gtt.h drm/i915: use pat_index instead of cache_level 2023-05-11 17:38:55 +02:00
intel_hwconfig.h drm/i915/guc: Add fetch of hwconfig blob 2022-03-17 19:51:48 -07:00
intel_llc_types.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_llc.c drm/i915/slpc: Let's fix the PCODE min freq table setup for SLPC 2022-09-06 14:51:43 -04:00
intel_llc.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_lrc_reg.h drm/i915/gt: Move engine registers to their own header 2022-01-11 14:03:25 -08:00
intel_lrc.c drm/i915/gt: Support aux invalidation on all engines 2023-08-01 10:50:23 +01:00
intel_lrc.h drm/i915/perf: Fix OA filtering logic for GuC mode 2022-10-27 12:35:56 -07:00
intel_migrate_types.h drm/i915/gt: Pipelined page migration 2021-06-17 14:23:05 +01:00
intel_migrate.c drm/i915: use pat_index instead of cache_level 2023-05-11 17:38:55 +02:00
intel_migrate.h drm/i915: use pat_index instead of cache_level 2023-05-11 17:38:55 +02:00
intel_mocs.c drm/i915/mtl: Define MOCS and PAT tables for MTL 2023-04-23 02:11:21 +02:00
intel_mocs.h drm/i915/gt: Add "intel_" as prefix in set_mocs_index() 2021-09-20 08:23:27 -07:00
intel_ppgtt.c drm/i915: use pat_index instead of cache_level 2023-05-11 17:38:55 +02:00
intel_rc6_types.h drm/i915/mtl: Synchronize i915/BIOS on C6 enabling 2023-03-24 08:43:32 -07:00
intel_rc6.c drm/i915/mtl: do not enable render power-gating on MTL 2023-05-18 18:36:18 +02:00
intel_rc6.h drm/i915/mtl: Synchronize i915/BIOS on C6 enabling 2023-03-24 08:43:32 -07:00
intel_region_lmem.c Merge tag 'drm-intel-gt-next-2023-04-06' of git://anongit.freedesktop.org/drm/drm-intel into drm-next 2023-04-06 14:21:00 +02:00
intel_region_lmem.h drm/i915: Kill the fake lmem support 2022-02-18 22:31:46 -08:00
intel_renderstate.c drm/i915: Wrap all access to i915_vma.node.start|size 2022-12-06 10:52:42 +01:00
intel_renderstate.h drm/i915: Break out dma_resv ww locking utilities to separate files 2021-06-17 14:22:59 +01:00
intel_reset_types.h drm/i915/gt: Rename dev_priv to i915 for private data naming consistency 2023-02-27 23:22:54 +01:00
intel_reset.c drm/i915: add a dedicated workqueue inside drm_i915_private 2023-06-10 06:33:11 +03:00
intel_reset.h drm/i915/guc: Don't deadlock busyness stats vs reset 2022-11-04 13:45:45 -07:00
intel_ring_submission.c drm/i915/gt: Rename dev_priv to i915 for private data naming consistency 2023-02-27 23:22:54 +01:00
intel_ring_types.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_ring.c drm/i915: Don't use BAR mappings for ring buffers with LLC 2023-02-23 13:58:22 +02:00
intel_ring.h drm/i915/gt: Pipelined page migration 2021-06-17 14:23:05 +01:00
intel_rps_types.h drm/i915/gt: Rename dev_priv to i915 for private data naming consistency 2023-02-27 23:22:54 +01:00
intel_rps.c drm/i915: add a dedicated workqueue inside drm_i915_private 2023-06-10 06:33:11 +03:00
intel_rps.h Merge tag 'drm-intel-gt-next-2023-04-06' of git://anongit.freedesktop.org/drm/drm-intel into drm-next 2023-04-06 14:21:00 +02:00
intel_sa_media.c drm/i915/mtl: Hook up interrupts for standalone media 2022-09-12 15:23:12 +03:00
intel_sa_media.h drm/i915/xelpmp: Expose media as another GT 2022-09-12 15:23:12 +03:00
intel_sseu_debugfs.c drm/i915/sseu: Disassociate internal subslice mask representation from uapi 2022-06-02 07:20:59 -07:00
intel_sseu_debugfs.h
intel_sseu.c drm/i915/perf: Group engines into respective OA groups 2023-03-24 08:45:28 -07:00
intel_sseu.h drm/i915/sseu: fix max_subslices array-index-out-of-bounds access 2023-03-13 11:38:05 +02:00
intel_timeline_types.h Merge tag 'drm-intel-gt-next-2021-04-06' of git://anongit.freedesktop.org/drm/drm-intel into drm-next 2021-04-08 12:46:12 +10:00
intel_timeline.c drm/i915: don't include drm_cache.h in i915_drv.h 2022-02-14 13:19:37 +02:00
intel_timeline.h Merge tag 'drm-intel-gt-next-2021-04-06' of git://anongit.freedesktop.org/drm/drm-intel into drm-next 2021-04-08 12:46:12 +10:00
intel_wopcm.c drm/i915/mtl: Handle wopcm per-GT and limit calculations. 2022-11-14 10:11:47 -08:00
intel_wopcm.h drm/i915/mtl: Handle wopcm per-GT and limit calculations. 2022-11-14 10:11:47 -08:00
intel_workarounds_types.h drm/i915: Partial abandonment of legacy DRM logging macros 2022-11-10 12:35:46 +00:00
intel_workarounds.c drm/i915/mtl: Add MTL performance tuning changes 2023-05-18 09:57:43 -07:00
intel_workarounds.h drm/i915: Make wa list per-gt 2021-09-20 08:06:36 -07:00
ivb_clear_kernel.c
mock_engine.c drm/i915: Add ww ctx to i915_gem_object_trylock 2021-12-21 13:27:29 +01:00
mock_engine.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
selftest_context.c drm/i915/gt: Use to_gt() helper 2021-12-17 21:50:06 -08:00
selftest_engine_cs.c drm/i915: add a dedicated workqueue inside drm_i915_private 2023-06-10 06:33:11 +03:00
selftest_engine_heartbeat.c drm/i915/gt: Use to_gt() helper 2021-12-17 21:50:06 -08:00
selftest_engine_heartbeat.h drm/i915/selftest: Fix hangcheck self test for GuC submission 2021-07-27 17:32:23 -07:00
selftest_engine_pm.c drm/i915/gt: Use gt_err for GT info 2023-05-03 12:56:10 +02:00
selftest_engine.c drm/i915/gt: Use to_gt() helper 2021-12-17 21:50:06 -08:00
selftest_engine.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
selftest_execlists.c drm/i915/gt: Use the correct error value when kernel_context() fails 2023-06-01 18:14:53 +02:00
selftest_gt_pm.c drm/i915/selftest: Fix engine timestamp and ktime disparity 2023-03-03 19:36:33 +05:30
selftest_hangcheck.c drm/i915: Wrap all access to i915_vma.node.start|size 2022-12-06 10:52:42 +01:00
selftest_llc.c drm/i915: remove unnecessary intel_pm.h includes 2023-03-06 18:26:30 +02:00
selftest_llc.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
selftest_lrc.c drm/i915/selftest: use igt_vma_move_to_active_unlocked if possible 2023-01-09 14:23:52 +01:00
selftest_migrate.c drm/i915: use pat_index instead of cache_level 2023-05-11 17:38:55 +02:00
selftest_mocs.c drm/i915/mtl: fix mocs selftest 2023-04-23 02:11:23 +02:00
selftest_rc6.c drm/i915/gt: Use RC6 residency types as arguments to residency functions 2022-11-17 10:46:58 -05:00
selftest_rc6.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
selftest_reset.c drm/i915: use pat_index instead of cache_level 2023-05-11 17:38:55 +02:00
selftest_ring_submission.c drm/i915: Wrap all access to i915_vma.node.start|size 2022-12-06 10:52:42 +01:00
selftest_ring.c
selftest_rps.c drm/i915: use explicit includes for i915_reg.h and i915_irq.h 2023-04-19 15:55:05 +03:00
selftest_rps.h
selftest_slpc.c drm/i915/selftest: Update the SLPC selftest 2023-04-28 09:59:54 -07:00
selftest_timeline.c drm/i915: use pat_index instead of cache_level 2023-05-11 17:38:55 +02:00
selftest_tlb.c drm/i915/gt: limit lmem allocation size to succeed on SmallBars 2023-06-02 14:01:23 +02:00
selftest_workarounds.c drm/i915/selftest: use igt_vma_move_to_active_unlocked if possible 2023-01-09 14:23:52 +01:00
shmem_utils.c drm/i915: Use helper func to find out map type 2022-12-20 09:57:03 +00:00
shmem_utils.h drm/i915/gt: Add helper for shmem copy to iosys_map 2022-02-25 15:23:18 -08:00
st_shmem_utils.c
sysfs_engines.c drm/i915/gt: make kobj attributes const 2023-03-15 12:20:11 +02:00
sysfs_engines.h