linux/drivers/gpu/drm/xe
Daniele Ceraolo Spurio 26caeae9fb
drm/xe/guc: Set RCS/CCS yield policy
All recent platforms (including all the ones officially supported by the
Xe driver) do not allow concurrent execution of RCS and CCS workloads
from different address spaces, with the HW blocking the context switch
when it detects such a scenario.
The DUAL_QUEUE flag helps with this, by causing the GuC to not submit a
context it knows will not be able to execute. This, however, causes a new
problem: if RCS and CCS queues have pending workloads from different
address spaces, the GuC needs to choose from which of the 2 queues to
pick the next workload to execute. By default, the GuC prioritizes RCS
submissions over CCS ones, which can lead to CCS workloads being
significantly (or completely) starved of execution time.
The driver can tune this by setting a dedicated scheduling policy KLV;
this KLV allows the driver to specify a quantum (in ms) and a ratio
(percentage value between 0 and 100), and the GuC will prioritize the CCS
for that percentage of each quantum.
Given that we want to guarantee enough RCS throughput to avoid missing
frames, we set the yield policy to 20% of each 80ms interval.

v2: updated quantum and ratio, improved comment, use xe_guc_submit_disable
in gt_sanitize

Fixes: d9a1ae0d17 ("drm/xe/guc: Enable WA_DUAL_QUEUE for newer platforms")
Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Cc: John Harrison <John.C.Harrison@Intel.com>
Cc: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
Reviewed-by: John Harrison <John.C.Harrison@Intel.com>
Tested-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
Link: https://lore.kernel.org/r/20250905235632.3333247-2-daniele.ceraolospurio@intel.com
(cherry picked from commit 8843444843)
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
[Rodrigo added #include "xe_guc_submit.h" while backporting]
2025-09-17 20:23:47 -04:00
..
abi drm/xe/guc: Set RCS/CCS yield policy 2025-09-17 20:23:47 -04:00
compat-i915-headers drm/xe/compat: remove old pcode compat interface 2025-06-23 21:45:17 +03:00
display drm-misc-next for 6.17: 2025-07-21 09:16:51 +10:00
instructions drm for 6.16-rc1 2025-05-28 09:46:39 -07:00
regs drm/xe/pf: Set VF LMEM BAR size 2025-08-14 10:30:53 -04:00
tests drm/xe: Attempt to bring bos back to VRAM after eviction 2025-09-09 13:20:22 -04:00
.gitignore
.kunitconfig
Kconfig Mark xe driver as BROKEN if kernel page size is not 4kB 2025-08-04 11:59:11 -04:00
Kconfig.debug drm/xe/guc: Track FAST_REQ H2Gs to report where errors came from 2025-05-15 12:27:37 -07:00
Kconfig.profile drm/xe: Add missing SPDX license identifiers 2025-01-17 15:25:52 +01:00
Makefile Driver Changes: 2025-07-18 19:48:20 +10:00
xe_args.h
xe_assert.h drm/xe: Fix case for asserts in documentation 2024-11-05 05:59:01 -08:00
xe_bb.c drm/xe: Introduce xe_gt_is_main_type helper 2025-07-14 18:19:29 +02:00
xe_bb.h drm/xe: Count dwords before allocating 2025-07-14 13:20:02 -07:00
xe_bb_types.h
xe_bo.c drm/xe: Attempt to bring bos back to VRAM after eviction 2025-09-09 13:20:22 -04:00
xe_bo.h drm/xe: Attempt to bring bos back to VRAM after eviction 2025-09-09 13:20:22 -04:00
xe_bo_doc.h drm/xe: Fix all typos in xe 2025-01-09 17:58:09 +01:00
xe_bo_evict.c drm/xe: Use xe_ggtt_map_bo_unlocked for resume 2025-06-09 10:21:44 +02:00
xe_bo_evict.h drm/xe: handle pinned memory in PM notifier 2025-04-23 09:32:16 +01:00
xe_bo_types.h drm/xe: Drop bo->size 2025-06-27 14:52:31 -07:00
xe_configfs.c drm/xe/configfs: Fix pci_dev reference leak 2025-07-28 10:22:48 -04:00
xe_configfs.h drm/xe: Allow to disable engines 2025-06-02 11:00:46 -07:00
xe_debugfs.c drm/xe/pf: Expose basic info about VFs in debugfs 2025-07-14 18:19:29 +02:00
xe_debugfs.h drm/xe: Allow to compile out debugfs 2024-08-09 21:15:14 -07:00
xe_devcoredump.c drm/xe: Release runtime pm for error path of xe_devcoredump_read() 2025-07-10 20:59:38 -07:00
xe_devcoredump.h drm/xe: Fix and re-enable xe_print_blob_ascii85() 2025-02-03 12:56:52 -05:00
xe_devcoredump_types.h drm/xe: Add devcoredump chunking 2025-04-24 15:51:38 -07:00
xe_device.c drm/xe/devcoredump: Defer devcoredump initialization during probe 2025-08-04 11:58:56 -04:00
xe_device.h drm/xe/pf: Invalidate LMTT during LMEM unprovisioning 2025-07-15 13:05:20 +02:00
xe_device_sysfs.c drm/xe/sysfs: Add cleanup action in xe_device_sysfs_init 2025-09-17 12:28:55 -04:00
xe_device_sysfs.h
xe_device_types.h drm/xe: Block exec and rebind worker while evicting for suspend / hibernate 2025-09-09 13:20:31 -04:00
xe_device_wa_oob.rules drm/xe: extend Wa_15015404425 to apply to PTL 2025-07-10 15:36:31 -07:00
xe_dma_buf.c drm/xe: Attempt to bring bos back to VRAM after eviction 2025-09-09 13:20:22 -04:00
xe_dma_buf.h
xe_drm_client.c drm/xe: Drop bo->size 2025-06-27 14:52:31 -07:00
xe_drm_client.h
xe_drv.h drm/xe: Fix kconfig prompt 2025-07-01 13:58:50 -07:00
xe_eu_stall.c drm/xe: Don't compare GT ID to GT count when determining valid GTs 2025-07-02 16:08:54 -07:00
xe_eu_stall.h drm/xe/eustall: Do not support EU stall on SRIOV VF 2025-05-01 09:36:48 -07:00
xe_exec.c drm/xe: Block exec and rebind worker while evicting for suspend / hibernate 2025-09-09 13:20:31 -04:00
xe_exec.h
xe_exec_queue.c drm/xe: Fix error handling if PXP fails to start 2025-09-17 12:28:55 -04:00
xe_exec_queue.h drm/xe/pxp/uapi: Add userspace and LRC support for PXP-using queues 2025-02-03 11:51:18 -08:00
xe_exec_queue_types.h drm/xe: Fix error handling if PXP fails to start 2025-09-17 12:28:55 -04:00
xe_execlist.c drm/xe: Fix error handling if PXP fails to start 2025-09-17 12:28:55 -04:00
xe_execlist.h
xe_execlist_types.h drm/xe: Fix error handling if PXP fails to start 2025-09-17 12:28:55 -04:00
xe_force_wake.c drm/xe: Introduce xe_gt_is_main_type helper 2025-07-14 18:19:29 +02:00
xe_force_wake.h drm/xe: Change return type to void for xe_force_wake_put 2024-10-17 10:17:10 -04:00
xe_force_wake_types.h drm/xe: Error handling in xe_force_wake_get() 2024-10-17 10:17:07 -04:00
xe_gen_wa_oob.c drm/xe: switch to local xbasename() helper 2025-08-26 10:12:11 -04:00
xe_ggtt.c drm/xe: Drop bo->size 2025-06-27 14:52:31 -07:00
xe_ggtt.h drm/xe: Do not rely on GGTT internals in xe_guc_buf kunit tests 2025-06-09 10:24:23 +02:00
xe_ggtt_types.h drm/xe: Remove pte_encode_bo callback 2025-06-09 10:24:23 +02:00
xe_gpu_scheduler.c drm/sched: Use struct for drm_sched_init() params 2025-02-12 11:59:52 +01:00
xe_gpu_scheduler.h drm/xe/sched: stop re-submitting signalled jobs 2025-06-05 18:07:15 +02:00
xe_gpu_scheduler_types.h
xe_gsc.c drm/xe: Drop bo->size 2025-06-27 14:52:31 -07:00
xe_gsc.h drm/xe/gsc: do not flush the GSC worker from the reset path 2025-05-08 12:44:41 -07:00
xe_gsc_debugfs.c drm/xe/gsc: Add debugfs to print GSC info 2024-08-29 10:32:20 -07:00
xe_gsc_debugfs.h drm/xe/gsc: Add debugfs to print GSC info 2024-08-29 10:32:20 -07:00
xe_gsc_proxy.c drm/xe: Introduce xe_tile_is_root helper 2025-07-14 18:19:28 +02:00
xe_gsc_proxy.h drm/xe/gsc: do not flush the GSC worker from the reset path 2025-05-08 12:44:41 -07:00
xe_gsc_submit.c
xe_gsc_submit.h
xe_gsc_types.h drm/xe: Cleanup unwind of gt initialization 2025-02-14 11:42:55 -08:00
xe_gt.c drm/xe/guc: Set RCS/CCS yield policy 2025-09-17 20:23:47 -04:00
xe_gt.h drm for 6.17-rc1 2025-07-30 19:26:49 -07:00
xe_gt_ccs_mode.c drm/xe: make change ccs_mode a synchronous action 2025-01-15 11:32:50 +01:00
xe_gt_ccs_mode.h
xe_gt_clock.c drm/xe: Apply Wa_16023105232 2025-03-25 20:51:29 -07:00
xe_gt_clock.h drm/xe: Add xe_gt_clock_interval_to_ms helper 2024-06-12 19:10:22 -07:00
xe_gt_debugfs.c drm/xe: Allow to trigger GT resets using debugfs writes 2025-05-28 20:13:18 +02:00
xe_gt_debugfs.h
xe_gt_freq.c drm/xe: Add missing documentation of rpa_freq 2025-05-28 17:23:13 +02:00
xe_gt_freq.h
xe_gt_idle.c drm/xe: Introduce xe_gt_is_main_type helper 2025-07-14 18:19:29 +02:00
xe_gt_idle.h drm/xe: Add locks in gtidle code 2025-01-14 07:02:49 -08:00
xe_gt_idle_types.h drm/xe: Add locks in gtidle code 2025-01-14 07:02:49 -08:00
xe_gt_mcr.c drm/xe: Make it possible to read instance0 MCR registers after xe_gt_mcr_init_early 2025-06-26 22:11:28 +02:00
xe_gt_mcr.h drm/xe/guc: Adding steering info support for GuC register lists 2025-01-15 11:32:50 +01:00
xe_gt_pagefault.c drm/xe: Allocate PF queue size on pow2 boundary 2025-07-07 20:57:17 -07:00
xe_gt_pagefault.h
xe_gt_printk.h drm/xe: Introduce xe_gt_dbg_printer() 2024-12-11 07:28:08 -08:00
xe_gt_sriov_pf.c drm/xe/pf: Make sure PF is ready to configure VFs 2025-08-04 11:59:06 -04:00
xe_gt_sriov_pf.h drm/xe/pf: Make sure PF is ready to configure VFs 2025-08-04 11:59:06 -04:00
xe_gt_sriov_pf_config.c drm/xe/pf: Drop rounddown_pow_of_two fair LMEM limitation 2025-09-15 08:26:26 -04:00
xe_gt_sriov_pf_config.h drm/xe/pf: Release all VFs configs on device removal 2025-02-16 21:36:38 +01:00
xe_gt_sriov_pf_config_types.h drm/xe/pf: Add functions to configure VF scheduling priority 2024-11-08 13:31:15 +01:00
xe_gt_sriov_pf_control.c drm/xe/pf: Stop requiring VF/PF version negotiation on every GT 2025-07-14 18:19:31 +02:00
xe_gt_sriov_pf_control.h drm/xe/pf: Improve VF control 2024-08-30 10:51:09 +02:00
xe_gt_sriov_pf_control_types.h drm/xe/pf: Save VF GuC state when pausing VF 2024-09-16 13:00:31 +02:00
xe_gt_sriov_pf_debugfs.c drm/xe/pf: Make sure PF is ready to configure VFs 2025-08-04 11:59:06 -04:00
xe_gt_sriov_pf_debugfs.h
xe_gt_sriov_pf_helpers.h drm/xe: Fix case for asserts in documentation 2024-11-05 05:59:01 -08:00
xe_gt_sriov_pf_migration.c drm/xe/pf: Allow to view and replace VF GuC state over debugfs 2024-09-16 13:00:39 +02:00
xe_gt_sriov_pf_migration.h drm/xe/pf: Allow to view and replace VF GuC state over debugfs 2024-09-16 13:00:39 +02:00
xe_gt_sriov_pf_migration_types.h drm/xe/pf: Add functions to save and restore VF GuC state 2024-09-16 13:00:22 +02:00
xe_gt_sriov_pf_monitor.c
xe_gt_sriov_pf_monitor.h
xe_gt_sriov_pf_monitor_types.h
xe_gt_sriov_pf_policy.c drm/xe/pf: Use GuC Buffer Cache during policy provisioning 2025-01-27 19:53:59 +01:00
xe_gt_sriov_pf_policy.h
xe_gt_sriov_pf_policy_types.h
xe_gt_sriov_pf_service.c drm/xe/pf: Stop requiring VF/PF version negotiation on every GT 2025-07-14 18:19:31 +02:00
xe_gt_sriov_pf_service.h drm/xe/pf: Stop requiring VF/PF version negotiation on every GT 2025-07-14 18:19:31 +02:00
xe_gt_sriov_pf_service_types.h
xe_gt_sriov_pf_types.h drm/xe/pf: Move VFs reprovisioning to worker 2025-01-27 20:34:18 +01:00
xe_gt_sriov_printk.h
xe_gt_sriov_vf.c drm/xe/vf: Store negotiated VF/PF ABI version at device level 2025-07-14 18:19:39 +02:00
xe_gt_sriov_vf.h drm/xe/vf: Store the GuC FW info in guc->fw 2025-06-06 08:37:26 -07:00
xe_gt_sriov_vf_debugfs.c drm/xe: use IS_ENABLED() instead of defined() on config options 2024-09-06 16:32:49 +03:00
xe_gt_sriov_vf_debugfs.h
xe_gt_sriov_vf_types.h drm/xe/vf: Store negotiated VF/PF ABI version at device level 2025-07-14 18:19:39 +02:00
xe_gt_stats.c drm/xe/svm: Add stats for SVM page faults 2025-03-13 10:05:45 +01:00
xe_gt_stats.h drm/xe: Split xe_gt_stat.h 2024-11-15 15:59:51 -08:00
xe_gt_stats_types.h drm/xe/svm: Add stats for SVM page faults 2025-03-13 10:05:45 +01:00
xe_gt_sysfs.c drm/xe: use devm_add_action_or_reset() helper 2024-10-03 01:13:54 -05:00
xe_gt_sysfs.h
xe_gt_sysfs_types.h
xe_gt_throttle.c drm/xe: Fix CFI violation when accessing sysfs files 2025-04-23 15:24:06 -04:00
xe_gt_throttle.h
xe_gt_tlb_invalidation.c drm/xe/pf: Invalidate LMTT during LMEM unprovisioning 2025-07-15 13:05:20 +02:00
xe_gt_tlb_invalidation.h drm/xe/pf: Invalidate LMTT during LMEM unprovisioning 2025-07-15 13:05:20 +02:00
xe_gt_tlb_invalidation_types.h drm/xe: Hold a PM ref when GT TLB invalidations are inflight 2024-08-15 09:44:22 -04:00
xe_gt_topology.c drm/xe: Remove unused functions 2025-07-14 07:55:18 -07:00
xe_gt_topology.h drm/xe: Remove unused functions 2025-07-14 07:55:18 -07:00
xe_gt_types.h drm/xe: Make it possible to read instance0 MCR registers after xe_gt_mcr_init_early 2025-06-26 22:11:28 +02:00
xe_guc.c drm/xe/guc: Set RCS/CCS yield policy 2025-09-17 20:23:47 -04:00
xe_guc.h drm/xe/guc: Enable extended CAT error reporting 2025-06-27 11:08:40 -07:00
xe_guc_ads.c drm/xe/guc: Don't allocate temporary policies object 2025-07-10 16:00:13 +02:00
xe_guc_ads.h
xe_guc_ads_types.h drm/xe/guc: Prepare GuC register list and update ADS size for error capture 2024-10-08 09:34:04 -07:00
xe_guc_buf.c drm/xe/guc: Unblock GuC buffer cache for all modes 2025-05-15 12:29:54 +02:00
xe_guc_buf.h drm/xe/guc: Introduce the GuC Buffer Cache 2025-01-19 00:12:03 +01:00
xe_guc_buf_types.h drm/xe/guc: Introduce the GuC Buffer Cache 2025-01-19 00:12:03 +01:00
xe_guc_capture.c drm/xe/devcoredump: Defer devcoredump initialization during probe 2025-08-04 11:58:56 -04:00
xe_guc_capture.h drm/xe: Change xe_engine_snapshot_capture_for_job to be for queue 2024-11-14 06:38:46 -08:00
xe_guc_capture_types.h drm/xe/guc: Cache DSS info when creating capture register list 2025-04-22 10:24:47 -07:00
xe_guc_ct.c drm/xe/guc: Clear whole g2h_fence during initialization 2025-07-28 10:22:38 -04:00
xe_guc_ct.h drm/xe: Simplify GuC early initialization 2025-06-26 22:10:30 +02:00
xe_guc_ct_types.h drm/xe/guc: Track FAST_REQ H2Gs to report where errors came from 2025-05-15 12:27:37 -07:00
xe_guc_db_mgr.c
xe_guc_db_mgr.h
xe_guc_debugfs.c drm/xe/guc: Make creation of SLPC debugfs files conditional 2025-05-23 09:40:55 +02:00
xe_guc_debugfs.h
xe_guc_engine_activity.c drm/xe/uc: Prepare uc_fw_version for storing the VF ABI version 2025-06-06 08:33:16 -07:00
xe_guc_engine_activity.h drm/xe: Add support for per-function engine activity 2025-03-25 07:14:32 -07:00
xe_guc_engine_activity_types.h drm/xe: Add support for per-function engine activity 2025-03-25 07:14:32 -07:00
xe_guc_exec_queue_types.h drm/xe: Fix error handling if PXP fails to start 2025-09-17 12:28:55 -04:00
xe_guc_fwif.h drm/xe: Add engine activity support 2025-02-24 12:32:09 -08:00
xe_guc_hwconfig.c drm/xe/mcr: Try to derive dss_per_grp from hwconfig attributes 2024-08-16 11:07:13 -07:00
xe_guc_hwconfig.h drm/xe/mcr: Try to derive dss_per_grp from hwconfig attributes 2024-08-16 11:07:13 -07:00
xe_guc_hxg_helpers.h
xe_guc_id_mgr.c drm/xe/guc: Demote GuC IDs usage message to debug 2024-07-02 18:33:19 +02:00
xe_guc_id_mgr.h
xe_guc_klv_helpers.c drm/xe/guc: Add VF_CFG_SCHED_PRIORITY to KLV helper 2024-11-08 13:31:14 +01:00
xe_guc_klv_helpers.h
xe_guc_klv_thresholds_set.h drm/xe/guc: Add yet another helper macro for threshold 2024-10-07 12:58:38 +02:00
xe_guc_klv_thresholds_set_types.h
xe_guc_log.c drm/xe: Drop bo->size 2025-06-27 14:52:31 -07:00
xe_guc_log.h drm/xe/guc: Rename CONFIG_XE_LARGE_GUC_BUFFER 2025-05-15 12:27:36 -07:00
xe_guc_log_types.h drm/xe/guc: Capture all available bits of GuC timestamp 2024-10-29 13:11:33 -07:00
xe_guc_pc.c drm/xe/bmg: Update Wa_22019338487 2025-07-01 13:55:19 -07:00
xe_guc_pc.h drm/xe/bmg: Update Wa_22019338487 2025-07-01 13:55:19 -07:00
xe_guc_pc_types.h drm/xe/bmg: Update Wa_22019338487 2025-07-01 13:55:19 -07:00
xe_guc_relay.c drm/xe/relay: Don't use GFP_KERNEL for new transactions 2025-02-04 15:05:49 +01:00
xe_guc_relay.h
xe_guc_relay_types.h
xe_guc_submit.c drm/xe/guc: Set RCS/CCS yield policy 2025-09-17 20:23:47 -04:00
xe_guc_submit.h drm/xe/guc: Set RCS/CCS yield policy 2025-09-17 20:23:47 -04:00
xe_guc_submit_types.h
xe_guc_types.h drm/xe: Fix taking invalid lock on wedge 2025-04-07 14:22:35 -07:00
xe_heci_gsc.c drm/xe/nvm: add support for access mode 2025-06-23 13:14:50 -04:00
xe_heci_gsc.h drm/xe: Stop ignoring errors from xe_heci_gsc_init() 2025-02-25 14:32:03 -08:00
xe_hmm.c drm/xe/userptr: fix notifier vs folio deadlock 2025-04-17 18:53:38 -07:00
xe_hmm.h drm/xe/userptr: Unmap userptrs in the mmu notifier 2025-03-05 14:25:27 -05:00
xe_huc.c drm/xe: Drop bo->size 2025-06-27 14:52:31 -07:00
xe_huc.h
xe_huc_debugfs.c
xe_huc_debugfs.h
xe_huc_types.h
xe_hw_engine.c drm/xe: Don't compare GT ID to GT count when determining valid GTs 2025-07-02 16:08:54 -07:00
xe_hw_engine.h drm/xe: Change xe_engine_snapshot_capture_for_job to be for queue 2024-11-14 06:38:46 -08:00
xe_hw_engine_class_sysfs.c drm/xe/hw_engine: define sysfs_ops on all directories 2025-04-07 13:16:07 -07:00
xe_hw_engine_class_sysfs.h
xe_hw_engine_group.c drm/xe/hw_engine_group: Avoid call kfree() for drmm_kzalloc() 2025-07-28 10:22:43 -04:00
xe_hw_engine_group.h drm/xe/exec: Switch hw engine group execution mode upon job submission 2024-08-17 18:31:57 -07:00
xe_hw_engine_group_types.h drm/xe/hw_engine_group: Introduce xe_hw_engine_group 2024-08-17 18:31:47 -07:00
xe_hw_engine_types.h drm/xe: Remove "graphics tile" from kernel doc 2025-01-03 12:43:02 -08:00
xe_hw_fence.c drm/xe: Make dma-fences compliant with the safe access rules 2025-06-13 08:28:22 +01:00
xe_hw_fence.h
xe_hw_fence_types.h drm/xe: Remove "graphics tile" from kernel doc 2025-01-03 12:43:02 -08:00
xe_hwmon.c drm/xe/hwmon: Remove type casting 2025-09-15 13:11:40 -04:00
xe_hwmon.h drm/xe/hwmon: Stop ignoring errors on probe 2025-02-14 11:42:55 -08:00
xe_i2c.c drm/xe/vf: Don't register I2C devices if VF 2025-07-28 10:22:33 -04:00
xe_i2c.h drm/xe/pm: Wire up suspend/resume for I2C controller 2025-07-10 10:19:41 -04:00
xe_irq.c drm/xe: Introduce xe_gt_is_main_type helper 2025-07-14 18:19:29 +02:00
xe_irq.h drm/xe/irq: Manage MSI-X interrupts allocation 2024-12-13 13:38:13 -05:00
xe_lmtt.c drm/xe/pf: Invalidate LMTT during LMEM unprovisioning 2025-07-15 13:05:20 +02:00
xe_lmtt.h drm/xe/pf: Invalidate LMTT during LMEM unprovisioning 2025-07-15 13:05:20 +02:00
xe_lmtt_2l.c
xe_lmtt_ml.c
xe_lmtt_types.h
xe_lrc.c drm/xe/lrc: Add table with LRC layout 2025-07-14 13:40:17 -07:00
xe_lrc.h drm/xe: Waste fewer instructions in emit_wa_job() 2025-07-14 13:40:17 -07:00
xe_lrc_types.h drm/xe: Add plumbing for indirect context workarounds 2025-07-14 08:22:10 -07:00
xe_macros.h drm/xe: Fix build error for XE_IOCTL_DBG macro 2024-11-04 23:24:26 -08:00
xe_map.h drm/xe/vf: Fixup CTB send buffer messages after migration 2025-05-12 15:53:38 +02:00
xe_memirq.c drm/xe: Remove GEN11 prefixes from documentation 2025-03-10 06:04:38 -07:00
xe_memirq.h drm/xe: memirq handler changes 2024-09-19 10:15:40 +02:00
xe_memirq_types.h drm/xe: memirq infra changes for MSI-X 2024-09-19 10:14:20 +02:00
xe_migrate.c drm/xe: Assign ioctl xe file handler to vm in xe_vm_create 2025-08-19 10:15:08 -04:00
xe_migrate.h drm/xe: Update xe_ttm_access_memory to use GPU for non-visible access 2025-04-24 15:51:39 -07:00
xe_migrate_doc.h
xe_mmio.c drm/xe: Move Wa_15015404425 to use the new XE_DEVICE_WA macro 2025-07-10 15:36:31 -07:00
xe_mmio.h drm/xe: Add xe_mmio_init() initialization function 2025-02-18 08:27:11 -08:00
xe_mocs.c drm/xe/mocs: Check if all domains awake 2025-05-22 20:48:50 -07:00
xe_mocs.h
xe_module.c drm/xe/pf: Enable SR-IOV PF mode by default 2025-08-04 11:56:18 -04:00
xe_module.h drm/xe: Strict migration policy for atomic SVM faults 2025-05-14 09:03:29 -07:00
xe_nvm.c drm/xe: defer free of NVM auxiliary container to device release callback 2025-09-15 13:12:19 -04:00
xe_nvm.h drm/xe/nvm: add on-die non-volatile memory device 2025-06-23 13:14:50 -04:00
xe_oa.c drm/xe/oa: Fix static checker warning about null gt 2025-07-28 10:22:17 -04:00
xe_oa.h drm/xe/oa: Handle errors in xe_oa_register() 2025-02-14 11:42:55 -08:00
xe_oa_types.h drm/xe/oa: Assign hwe for OAM_SAG 2025-06-17 11:31:57 -07:00
xe_observation.c Merge drm/drm-next into drm-xe-next 2025-02-28 06:54:14 -08:00
xe_observation.h drm/xe/uapi: Rename xe perf layer as xe observation layer 2024-07-11 09:54:24 -04:00
xe_pat.c drm/xe/pat: Consolidate PAT programming logic for pre-Xe2 and post-Xe2 2025-06-16 08:58:59 -07:00
xe_pat.h
xe_pci.c drm/xe/sriov: Mark BMG as SR-IOV capable 2025-07-10 20:50:17 -07:00
xe_pci.h
xe_pci_sriov.c drm/xe/pf: Set VF LMEM BAR size 2025-08-14 10:30:53 -04:00
xe_pci_sriov.h drm/xe/pf: Remove inlined #ifdef CONFIG_PCI_IOV 2024-07-01 18:01:31 +02:00
xe_pci_types.h drm/xe/tests/pci: Ensure all platforms have a valid GT/tile count 2025-07-02 16:08:54 -07:00
xe_pcode.c drm/xe: Fix conflicting intel_pcode_* symbols 2025-06-28 06:56:58 -07:00
xe_pcode.h drm/xe/pcode: add struct drm_device based interface 2025-06-23 21:45:16 +03:00
xe_pcode_api.h drm/xe: Expose fan control and voltage regulator version 2025-07-09 18:25:22 -04:00
xe_platform_types.h drm/xe/ptl: Add PTL platform definition 2024-10-08 09:19:50 -07:00
xe_pm.c drm/xe: Block exec and rebind worker while evicting for suspend / hibernate 2025-09-09 13:20:31 -04:00
xe_pm.h drm/xe: evict user memory in PM notifier 2025-04-23 09:32:16 +01:00
xe_pmu.c drm/xe/xe_pmu: Validate gt in event supported 2025-07-02 16:09:11 -07:00
xe_pmu.h drm/xe/pmu: Enable PMU interface 2025-01-27 08:54:06 -08:00
xe_pmu_types.h drm/xe/pmu: Add attribute skeleton 2025-01-27 08:55:04 -08:00
xe_preempt_fence.c Linux 6.11-rc5 2024-08-27 14:09:45 +02:00
xe_preempt_fence.h
xe_preempt_fence_types.h drm/xe: prevent UAF around preempt fence 2024-08-19 10:39:28 -04:00
xe_pt.c drm/xe: Opportunistically skip TLB invalidaion on unbind 2025-06-17 15:38:14 -07:00
xe_pt.h drm/xe: Add SVM range invalidation and page fault 2025-03-06 11:35:40 -08:00
xe_pt_types.h drm/xe: Add (re)bind to SVM page fault handler 2025-03-06 11:35:43 -08:00
xe_pt_walk.c drm/xe: Add staging tree for VM binds 2025-03-05 14:25:11 -05:00
xe_pt_walk.h drm/xe: Add staging tree for VM binds 2025-03-05 14:25:11 -05:00
xe_pxp.c drm/xe/pxp: Clarify PXP queue creation behavior if PXP is not ready 2025-06-05 18:07:33 +02:00
xe_pxp.h drm/i915/pxp & drm/xe/pxp: Figure out pxp instance from the gem object 2025-03-03 12:16:04 +02:00
xe_pxp_debugfs.c drm/xe/pxp: do not queue unneeded terminations from debugfs 2025-04-17 18:53:38 -07:00
xe_pxp_debugfs.h drm/xe/pxp: Add PXP debugfs support 2025-02-03 11:51:28 -08:00
xe_pxp_submit.c drm/xe: Assign ioctl xe file handler to vm in xe_vm_create 2025-08-19 10:15:08 -04:00
xe_pxp_submit.h drm/xe/pxp: Add GSC session initialization support 2025-02-03 11:51:15 -08:00
xe_pxp_types.h drm/xe/pxp: add PXP PM support 2025-02-03 11:51:26 -08:00
xe_query.c drm/xe/xe_query: Use separate iterator while filling GT list 2025-07-02 16:08:54 -07:00
xe_query.h
xe_range_fence.c
xe_range_fence.h
xe_reg_sr.c drm/xe/vf: Stop applying save-restore MMIOs if VF 2025-03-12 11:37:52 +01:00
xe_reg_sr.h
xe_reg_sr_types.h drm/xe/reg_sr: Remove register pool 2024-12-12 16:57:28 +01:00
xe_reg_whitelist.c drm/xe/rtp: Drop sentinels from arg to xe_rtp_process_to_sr() 2025-03-12 20:54:17 -07:00
xe_reg_whitelist.h
xe_res_cursor.h drm/xe: Add dma_addr res cursor 2025-03-06 11:35:37 -08:00
xe_ring_ops.c drm/xe: Dont skip TLB invalidations on VF 2025-07-17 09:45:19 -03:00
xe_ring_ops.h
xe_ring_ops_types.h drm/xe: Adjust ringbuf emission for maximum possible size 2025-04-15 07:20:41 -07:00
xe_rtp.c drm/xe: Remove unused functions 2025-07-14 07:55:18 -07:00
xe_rtp.h drm/xe: Remove unused functions 2025-07-14 07:55:18 -07:00
xe_rtp_helpers.h drm/xe/rtp: Expand max rules/actions per entry again 2024-07-29 11:19:40 -07:00
xe_rtp_types.h drm/xe: add new type to RTP context 2025-07-10 15:36:30 -07:00
xe_sa.c drm/xe: Add XE_BO_FLAG_PINNED_NORESTORE 2025-04-04 11:41:01 +01:00
xe_sa.h drm/xe/sa: Minor header cleanups 2025-01-19 00:12:02 +01:00
xe_sa_types.h drm/xe: Update xe_sa to use xe_managed_bo_create_pin_map 2024-08-23 09:54:32 -07:00
xe_sched_job.c drm/xe: Fix NPD when saving default context 2025-05-28 17:44:28 -07:00
xe_sched_job.h drm/xe/sched_job: Promote xe_sched_job_add_deps() 2024-06-14 16:51:43 -04:00
xe_sched_job_types.h drm/xe: Fix typo in xe_job_ptrs 2025-02-17 10:52:01 +05:30
xe_shrinker.c drm/xe: Defer buffer object shrinker write-backs and GPU waits 2025-08-12 12:52:26 -04:00
xe_shrinker.h drm/xe: Make the gem shrinker drm managed 2025-05-12 10:01:31 +02:00
xe_sriov.c drm/xe: Suppress printing of mode when running in non-sriov mode 2025-01-19 00:39:45 +01:00
xe_sriov.h drm/xe: Allow const pointer when checking SR-IOV mode 2024-06-18 10:51:59 +02:00
xe_sriov_pf.c drm/xe/pf: Make sure PF is ready to configure VFs 2025-08-04 11:59:06 -04:00
xe_sriov_pf.h drm/xe/pf: Make sure PF is ready to configure VFs 2025-08-04 11:59:06 -04:00
xe_sriov_pf_helpers.h drm/xe: Fix case for asserts in documentation 2024-11-05 05:59:01 -08:00
xe_sriov_pf_service.c drm/xe/pf: Stop requiring VF/PF version negotiation on every GT 2025-07-14 18:19:31 +02:00
xe_sriov_pf_service.h drm/xe/pf: Stop requiring VF/PF version negotiation on every GT 2025-07-14 18:19:31 +02:00
xe_sriov_pf_service_types.h drm/xe/pf: Stop requiring VF/PF version negotiation on every GT 2025-07-14 18:19:31 +02:00
xe_sriov_pf_types.h drm/xe/pf: Stop requiring VF/PF version negotiation on every GT 2025-07-14 18:19:31 +02:00
xe_sriov_printk.h
xe_sriov_types.h drm/xe: Move PF and VF device types to separate headers 2025-07-14 18:18:49 +02:00
xe_sriov_vf.c drm/xe/vf: Make multi-GT migration less error prone 2025-07-03 21:05:21 +02:00
xe_sriov_vf.h drm/xe/vf: React to MIGRATED interrupt 2024-11-06 14:53:35 +01:00
xe_sriov_vf_types.h drm/xe/vf: Store negotiated VF/PF ABI version at device level 2025-07-14 18:19:39 +02:00
xe_step.c drm/xe: Export xe_step_name for kunit tests 2025-07-02 16:08:54 -07:00
xe_step.h
xe_step_types.h drm/xe: remove display stepping handling 2024-08-22 15:48:21 +03:00
xe_survivability_mode.c drm/xe/configfs: Don't touch survivability_mode on fini 2025-09-09 13:20:17 -04:00
xe_survivability_mode.h drm/xe: Enable configfs support for survivability mode 2025-04-08 22:24:00 -07:00
xe_survivability_mode_types.h drm/xe: Add functions and sysfs for boot survivability 2025-01-28 08:58:45 -05:00
xe_svm.c drm/xe: Implement and use the drm_pagemap populate_mm op 2025-06-26 18:00:10 +02:00
xe_svm.h drm/xe: Implement and use the drm_pagemap populate_mm op 2025-06-26 18:00:10 +02:00
xe_sync.c drm/xe/xe_sync: avoid race during ufence signaling 2025-08-26 10:12:11 -04:00
xe_sync.h drm/xe: Remove unused xe_sync_entry_wait 2024-07-18 10:17:30 -07:00
xe_sync_types.h
xe_tile.c drm/xe: Defer memirq init until needed 2025-06-26 22:07:44 +02:00
xe_tile.h drm/xe: Introduce xe_tile_is_root helper 2025-07-14 18:19:28 +02:00
xe_tile_sriov_vf.c drm/xe/vf: Add sanity check for GGTT configuration 2025-06-03 12:36:00 +02:00
xe_tile_sriov_vf.h drm/xe/vf: Move tile-related VF functions to separate file 2025-06-03 12:35:57 +02:00
xe_tile_sysfs.c drm/xe/tile: Release kobject for the failure path 2025-09-15 08:26:19 -04:00
xe_tile_sysfs.h
xe_tile_sysfs_types.h
xe_trace.c
xe_trace.h drm/xe/eustall: Add support to read() and poll() EU stall data 2025-02-26 11:31:01 -08:00
xe_trace_bo.c drm/xe/trace: Extract bo, vm, vma traces 2024-06-12 09:25:07 -07:00
xe_trace_bo.h drm/xe: Drop bo->size 2025-06-27 14:52:31 -07:00
xe_trace_guc.c drm/xe/trace: Extract guc related traces 2024-06-12 09:25:10 -07:00
xe_trace_guc.h drm/xe/trace: Add trace for engine activity 2025-02-24 12:32:09 -08:00
xe_trace_lrc.c drm/xe: Add trace to lrc timestamp update 2024-11-05 13:38:46 -08:00
xe_trace_lrc.h drm/xe: Add WA BB to capture active context utilization 2025-05-14 09:03:29 -07:00
xe_ttm_stolen_mgr.c drm/xe: Stop ignoring errors from xe_ttm_stolen_mgr_init() 2025-02-14 11:42:54 -08:00
xe_ttm_stolen_mgr.h drm/xe: Stop ignoring errors from xe_ttm_stolen_mgr_init() 2025-02-14 11:42:54 -08:00
xe_ttm_sys_mgr.c drm/xe: Increase the XE_PL_TT watermark 2025-03-05 17:08:59 +01:00
xe_ttm_sys_mgr.h
xe_ttm_vram_mgr.c drm/xe: Move VRAM manager to struct xe_vram_region 2025-02-10 13:08:59 +01:00
xe_ttm_vram_mgr.h
xe_ttm_vram_mgr_types.h drm/xe: Move VRAM manager to struct xe_vram_region 2025-02-10 13:08:59 +01:00
xe_tuning.c drm/xe/xe3: Disable null query for anyhit shader 2025-06-05 15:57:37 -07:00
xe_tuning.h drm/xe: Add performance tunings to debugfs 2025-02-28 21:47:33 -08:00
xe_uc.c drm/xe/uc: Fix missing unwind goto 2025-07-28 10:22:28 -04:00
xe_uc.h drm/xe: Rename xe_uc_init_hw to xe_uc_load_hw 2025-06-26 22:11:35 +02:00
xe_uc_debugfs.c drm/xe/gsc: Add debugfs to print GSC info 2024-08-29 10:32:20 -07:00
xe_uc_debugfs.h
xe_uc_fw.c drm/xe/guc: Recommend GuC v70.46.2 for BMG, LNL, DG2 2025-07-10 20:59:39 -07:00
xe_uc_fw.h drm/xe/gsc: Do not attempt to load the GSC multiple times 2024-09-03 10:36:38 -04:00
xe_uc_fw_abi.h
xe_uc_fw_types.h drm/xe/uc: Prepare uc_fw_version for storing the VF ABI version 2025-06-06 08:33:16 -07:00
xe_uc_types.h
xe_vm.c drm/xe: Fix a NULL vs IS_ERR() in xe_vm_add_compute_exec_queue() 2025-09-16 11:49:16 -04:00
xe_vm.h drm/xe: Block exec and rebind worker while evicting for suspend / hibernate 2025-09-09 13:20:31 -04:00
xe_vm_doc.h drm/xe: Fix a typo in xe_vm_doc.h 2025-01-17 00:01:58 +05:30
xe_vm_types.h drm/xe: Block exec and rebind worker while evicting for suspend / hibernate 2025-09-09 13:20:31 -04:00
xe_vram.c drm/xe: Allow to drop vram resizing 2025-04-10 15:50:01 -07:00
xe_vram.h drm/xe: Promote VRAM initialization function to own file 2024-05-30 23:50:28 +02:00
xe_vram_freq.c drm/xe/pcode: Treat pcode as per-tile rather than per-GT 2024-09-03 10:36:46 -04:00
xe_vram_freq.h
xe_vsec.c drm for 6.17-rc1 2025-07-30 19:26:49 -07:00
xe_vsec.h drm/xe/hwmon: Read energy status from PMT 2025-05-30 11:30:01 -04:00
xe_wa.c drm/xe: Add infrastructure for Device OOB workarounds 2025-07-10 15:36:30 -07:00
xe_wa.h drm/xe: extend Wa_15015404425 to apply to PTL 2025-07-10 15:36:31 -07:00
xe_wa_oob.rules drm/xe: Extend Wa_13011645652 to PTL-H, WCL 2025-09-09 13:20:36 -04:00
xe_wait_user_fence.c drm/xe/ufence: Flush xe ordered_wq in case of ufence timeout 2024-11-04 08:12:30 -08:00
xe_wait_user_fence.h
xe_wopcm.c drm/xe: Use fault injection infrastructure to find issues at probe time 2024-10-03 08:58:26 -04:00
xe_wopcm.h
xe_wopcm_types.h