Hi Dave and Sima, This is likely our last drm-xe-next PR towards 7.0. But perhaps an extra one coming in the beginning of next week depending on how the THP patches and a few other cases goes.
It is important to highlight that this PR brings a revert of a flag in the new multi-queue uAPI that had been added in the first PR of this round. After that PR, with multiple uAPI changes, I scrutinized them and found out this flag was not used nor planned to be used. Hence, I requested the removal before the 7.0 deadline. Thanks, Rodrigo. drm-xe-next-2026-01-15: UAPI Changes: - Remove unused KEEP_ACTIVE flag in the new multi queue uAPI (Niranjana) - Expose new temperature attributes in HWMON (Karthik) Driver Changes: - Force i2c into polling mode when in survivability (Raag) - Validate preferred system memory placement in xe_svm_range_validate (Brost) - Adjust page count tracepoints in shrinker (Brost) - Fix a couple drm_pagemap issues with multi-GPU (Brost) - Define GuC firmware for NVL-S (Roper) - Handle GT resume failure (Raag) - Improve wedged mode handling (Lukasz) - Add missing newlines to drm_warn messages (Osama) - Fix WQ_MEM_RECLAIM passed as max_active to alloc_workqueue (Marco) - Page-reclaim fixes and PRL stats addition (Brian) - Fix struct guc_lfd_file_header kernel-doc (Jani) - Allow compressible surfaces to be 1-way coherent (Xin) - Fix DRM scheduler layering violations in Xe (Brost) - Minor improvements to MERT code (Michal) - Privatize struct xe_ggtt_node (Maarten) - Convert wait for lmem init into an assert (Bala) - Enable GSC loading and PXP for PTL (Daniele) - Replace use of system_wq with tlb_inval->timeout_wq (Marco) - VRAM addr range bit expansion (Fei) - Cleanup unused header includes (Roper) The following changes since commit 59260fe5821ad108d0fda8a4a4fe0448e9821f27: Merge tag 'drm-xe-next-2025-12-30' of https://gitlab.freedesktop.org/drm/xe/kernel into drm-next (2026-01-01 17:00:59 +1000) are available in the Git repository at: https://gitlab.freedesktop.org/drm/xe/kernel.git tags/drm-xe-next-2026-01-15 for you to fetch changes up to 83675851547e835c15252c601f41acf269c351d9: drm/xe: Cleanup unused header includes (2026-01-15 07:05:04 -0800) ---------------------------------------------------------------- UAPI Changes: - Remove unused KEEP_ACTIVE flag in the new multi queue uAPI (Niranjana) - Expose new temperature attributes in HWMON (Karthik) Driver Changes: - Force i2c into polling mode when in survivability (Raag) - Validate preferred system memory placement in xe_svm_range_validate (Brost) - Adjust page count tracepoints in shrinker (Brost) - Fix a couple drm_pagemap issues with multi-GPU (Brost) - Define GuC firmware for NVL-S (Roper) - Handle GT resume failure (Raag) - Improve wedged mode handling (Lukasz) - Add missing newlines to drm_warn messages (Osama) - Fix WQ_MEM_RECLAIM passed as max_active to alloc_workqueue (Marco) - Page-reclaim fixes and PRL stats addition (Brian) - Fix struct guc_lfd_file_header kernel-doc (Jani) - Allow compressible surfaces to be 1-way coherent (Xin) - Fix DRM scheduler layering violations in Xe (Brost) - Minor improvements to MERT code (Michal) - Privatize struct xe_ggtt_node (Maarten) - Convert wait for lmem init into an assert (Bala) - Enable GSC loading and PXP for PTL (Daniele) - Replace use of system_wq with tlb_inval->timeout_wq (Marco) - VRAM addr range bit expansion (Fei) - Cleanup unused header includes (Roper) ---------------------------------------------------------------- Balasubramani Vivekanandan (1): drm/xe/device: Convert wait for lmem init into an assert Brian Nguyen (4): drm/xe: Remove debug comment in page reclaim drm/xe: Add explicit abort page reclaim list drm/xe: Fix page reclaim entry handling for large pages drm/xe: Add page reclamation related stats Daniele Ceraolo Spurio (3): drm/xe/gsc: Make GSC FW load optional for newer platforms drm/xe/ptl: Define GSC for PTL drm/xe/ptl: Enable PXP for PTL Fei Yang (1): drm/xe: vram addr range is expanded to bit[17:8] Jani Nikula (5): drm/xe/guc: fix struct guc_lfd_file_header kernel-doc drm/xe/vf: fix struct xe_gt_sriov_vf_migration kernel-doc drm/xe/xe_late_bind_fw: fix enum xe_late_bind_fw_id kernel-doc drm/xe/vm: fix xe_vm_validation_exec() kernel-doc drm/xe: improve header check Karthik Poosa (4): drm/xe/hwmon: Expose temperature limits drm/xe/hwmon: Expose memory controller temperature drm/xe/hwmon: Expose GPU PCIe temperature drm/xe/hwmon: Expose individual VRAM channel temperature Lukasz Laguna (4): drm/xe: Validate wedged_mode parameter and define enum for modes drm/xe: Update wedged.mode only after successful reset policy change drm/xe/vf: Disallow setting wedged mode to upon-any-hang drm/xe/pf: Allow upon-any-hang wedged mode only in debug config Maarten Lankhorst (7): drm/xe: Start using ggtt->start in preparation of balloon removal drm/xe: Convert xe_fb_pin to use a callback for insertion into GGTT drm/xe: Add xe_ggtt_node_addr() to avoid dereferencing xe_ggtt_node drm/xe/display: Avoid dereferencing xe_ggtt_node drm/xe: Do not dereference ggtt_node in xe_bo.c drm/xe: Improve xe_gt_sriov_pf_config GGTT handling drm/xe: Privatize xe_ggtt_node Marco Crivellari (2): drm/xe: fix WQ_MEM_RECLAIM passed as max_active to alloc_workqueue() drm/xe: Replace use of system_wq with tlb_inval->timeout_wq Matt Roper (2): drm/xe/nvls: Define GuC firmware for NVL-S drm/xe: Cleanup unused header includes Matthew Brost (11): drm/xe: Validate preferred system memory placement in xe_svm_range_validate drm/xe: Adjust page count tracepoints in shrinker drm/pagemap Fix error paths in drm_pagemap_migrate_to_devmem drm/pagemap: Disable device-to-device migration drm/xe: Add dedicated message lock drm/xe: Stop abusing DRM scheduler internals drm/xe: Only toggle scheduling in TDR if GuC is running drm/xe: Do not deregister queues in TDR drm/xe: Remove special casing for LR queues in submission drm/xe: Disable timestamp WA on VFs drm/xe: Avoid toggling schedule state to check LRC timestamp in TDR Michal Wajdeczko (6): drm/xe/mert: Normalize xe_mert.h include guards drm/xe/mert: Fix kernel-doc for struct xe_mert drm/xe/mert: Always refer to MERT using xe_device drm/xe/mert: Use local mert variable to simplify the code drm/xe/mert: Move MERT initialization to xe_mert.c drm/xe/mert: Improve handling of MERT CAT errors Niranjana Vishwanathapura (2): Revert "drm/xe/multi_queue: Support active group after primary is destroyed" drm/xe/doc: Remove KEEP_ACTIVE feature Osama Abdelkader (1): drm/xe: Add missing newlines to drm_warn messages Raag Jadav (2): drm/xe/i2c: Force polling mode in survivability drm/xe/pm: Handle GT resume failure Rodrigo Vivi (1): Merge drm/drm-next into drm-xe-next Xin Wang (1): drm/xe: Allow compressible surfaces to be 1-way coherent .../ABI/testing/sysfs-driver-intel-xe-hwmon | 110 ++++++ drivers/gpu/drm/drm_pagemap.c | 22 +- drivers/gpu/drm/xe/Makefile | 3 +- drivers/gpu/drm/xe/abi/guc_lfd_abi.h | 5 +- drivers/gpu/drm/xe/compat-i915-headers/i915_vma.h | 4 +- drivers/gpu/drm/xe/display/xe_fb_pin.c | 104 +++--- drivers/gpu/drm/xe/display/xe_hdcp_gsc.c | 2 +- drivers/gpu/drm/xe/display/xe_stolen.c | 2 +- drivers/gpu/drm/xe/regs/xe_gt_regs.h | 6 + drivers/gpu/drm/xe/regs/xe_mert_regs.h | 10 +- drivers/gpu/drm/xe/regs/xe_pcode_regs.h | 3 + drivers/gpu/drm/xe/tests/xe_bo.c | 1 + drivers/gpu/drm/xe/tests/xe_guc_buf_kunit.c | 2 +- drivers/gpu/drm/xe/xe_bb.c | 3 +- drivers/gpu/drm/xe/xe_bo.c | 33 +- drivers/gpu/drm/xe/xe_bo.h | 8 +- drivers/gpu/drm/xe/xe_debugfs.c | 75 +++- drivers/gpu/drm/xe/xe_devcoredump.c | 3 +- drivers/gpu/drm/xe/xe_device.c | 141 ++++---- drivers/gpu/drm/xe/xe_device.h | 2 + drivers/gpu/drm/xe/xe_device_types.h | 25 +- drivers/gpu/drm/xe/xe_exec.c | 1 - drivers/gpu/drm/xe/xe_exec_queue.c | 62 +--- drivers/gpu/drm/xe/xe_exec_queue.h | 2 - drivers/gpu/drm/xe/xe_exec_queue_types.h | 4 - drivers/gpu/drm/xe/xe_execlist.c | 3 +- drivers/gpu/drm/xe/xe_ggtt.c | 219 ++++++++---- drivers/gpu/drm/xe/xe_ggtt.h | 14 +- drivers/gpu/drm/xe/xe_ggtt_types.h | 32 +- drivers/gpu/drm/xe/xe_gpu_scheduler.c | 9 +- drivers/gpu/drm/xe/xe_gpu_scheduler.h | 37 +- drivers/gpu/drm/xe/xe_gpu_scheduler_types.h | 2 + drivers/gpu/drm/xe/xe_gsc.c | 13 +- drivers/gpu/drm/xe/xe_gsc_debugfs.c | 5 +- drivers/gpu/drm/xe/xe_gsc_proxy.c | 2 +- drivers/gpu/drm/xe/xe_gsc_submit.c | 2 - drivers/gpu/drm/xe/xe_gt.c | 34 +- drivers/gpu/drm/xe/xe_gt_clock.c | 6 +- drivers/gpu/drm/xe/xe_gt_debugfs.c | 1 - drivers/gpu/drm/xe/xe_gt_idle.c | 1 - drivers/gpu/drm/xe/xe_gt_mcr.c | 1 - drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c | 21 +- drivers/gpu/drm/xe/xe_gt_sriov_pf_debugfs.c | 1 - drivers/gpu/drm/xe/xe_gt_sriov_pf_migration.c | 2 +- drivers/gpu/drm/xe/xe_gt_sriov_pf_policy.c | 1 - drivers/gpu/drm/xe/xe_gt_sriov_pf_service.c | 5 +- drivers/gpu/drm/xe/xe_gt_sriov_vf.c | 1 - drivers/gpu/drm/xe/xe_gt_sriov_vf_types.h | 4 +- drivers/gpu/drm/xe/xe_gt_stats.c | 7 +- drivers/gpu/drm/xe/xe_gt_stats_types.h | 5 + drivers/gpu/drm/xe/xe_gt_sysfs.c | 2 +- drivers/gpu/drm/xe/xe_gt_throttle.c | 2 +- drivers/gpu/drm/xe/xe_guc_ads.c | 18 +- drivers/gpu/drm/xe/xe_guc_ads.h | 5 +- drivers/gpu/drm/xe/xe_guc_buf.c | 1 - drivers/gpu/drm/xe/xe_guc_capture.c | 14 +- drivers/gpu/drm/xe/xe_guc_debugfs.c | 5 +- drivers/gpu/drm/xe/xe_guc_exec_queue_types.h | 2 - drivers/gpu/drm/xe/xe_guc_hwconfig.c | 4 +- drivers/gpu/drm/xe/xe_guc_log.c | 2 +- drivers/gpu/drm/xe/xe_guc_relay.c | 3 +- drivers/gpu/drm/xe/xe_guc_submit.c | 377 ++++----------------- drivers/gpu/drm/xe/xe_guc_submit_types.h | 11 - drivers/gpu/drm/xe/xe_guc_tlb_inval.c | 3 + drivers/gpu/drm/xe/xe_heci_gsc.c | 1 - drivers/gpu/drm/xe/xe_huc.c | 1 - drivers/gpu/drm/xe/xe_huc_debugfs.c | 5 +- drivers/gpu/drm/xe/xe_hw_engine.c | 1 - drivers/gpu/drm/xe/xe_hw_engine_class_sysfs.c | 2 +- drivers/gpu/drm/xe/xe_hw_engine_group.c | 2 +- drivers/gpu/drm/xe/xe_hw_fence.c | 20 +- drivers/gpu/drm/xe/xe_hw_fence.h | 2 - drivers/gpu/drm/xe/xe_hwmon.c | 279 ++++++++++++++- drivers/gpu/drm/xe/xe_i2c.c | 13 +- drivers/gpu/drm/xe/xe_irq.c | 1 - drivers/gpu/drm/xe/xe_late_bind_fw_types.h | 4 +- drivers/gpu/drm/xe/xe_lmtt.c | 2 +- drivers/gpu/drm/xe/xe_lrc.c | 45 ++- drivers/gpu/drm/xe/xe_lrc.h | 3 +- drivers/gpu/drm/xe/xe_memirq.c | 2 - drivers/gpu/drm/xe/xe_mert.c | 76 +++-- drivers/gpu/drm/xe/xe_mert.h | 15 +- drivers/gpu/drm/xe/xe_mmio.c | 4 - drivers/gpu/drm/xe/xe_mocs.c | 2 - drivers/gpu/drm/xe/xe_module.c | 10 +- drivers/gpu/drm/xe/xe_module.h | 2 +- drivers/gpu/drm/xe/xe_nvm.c | 1 - drivers/gpu/drm/xe/xe_page_reclaim.c | 6 +- drivers/gpu/drm/xe/xe_page_reclaim.h | 20 ++ drivers/gpu/drm/xe/xe_pat.c | 52 ++- drivers/gpu/drm/xe/xe_pat.h | 2 + drivers/gpu/drm/xe/xe_pci.c | 5 +- drivers/gpu/drm/xe/xe_pci_types.h | 1 + drivers/gpu/drm/xe/xe_pcode_api.h | 7 + drivers/gpu/drm/xe/xe_pm.c | 26 +- drivers/gpu/drm/xe/xe_psmi.c | 2 +- drivers/gpu/drm/xe/xe_pt.c | 84 +++-- drivers/gpu/drm/xe/xe_pt_types.h | 1 + drivers/gpu/drm/xe/xe_pxp.c | 1 - drivers/gpu/drm/xe/xe_pxp_debugfs.c | 2 +- drivers/gpu/drm/xe/xe_reg_sr.c | 5 +- drivers/gpu/drm/xe/xe_reg_whitelist.c | 1 - drivers/gpu/drm/xe/xe_ring_ops.c | 29 +- drivers/gpu/drm/xe/xe_rtp.c | 1 - drivers/gpu/drm/xe/xe_sa.c | 2 +- drivers/gpu/drm/xe/xe_sched_job.c | 3 +- drivers/gpu/drm/xe/xe_sched_job_types.h | 2 + drivers/gpu/drm/xe/xe_sriov_packet.c | 1 - drivers/gpu/drm/xe/xe_sriov_pf.c | 4 +- drivers/gpu/drm/xe/xe_sriov_pf_debugfs.c | 1 - drivers/gpu/drm/xe/xe_sriov_vf.c | 1 - drivers/gpu/drm/xe/xe_step.c | 3 +- drivers/gpu/drm/xe/xe_survivability_mode.c | 3 +- drivers/gpu/drm/xe/xe_svm.c | 2 + drivers/gpu/drm/xe/xe_tile.c | 3 +- drivers/gpu/drm/xe/xe_tlb_inval.c | 17 +- drivers/gpu/drm/xe/xe_tlb_inval_types.h | 2 + drivers/gpu/drm/xe/xe_trace.h | 5 - drivers/gpu/drm/xe/xe_ttm_stolen_mgr.c | 1 - drivers/gpu/drm/xe/xe_ttm_sys_mgr.c | 1 - drivers/gpu/drm/xe/xe_ttm_vram_mgr.c | 1 - drivers/gpu/drm/xe/xe_uc.c | 2 - drivers/gpu/drm/xe/xe_uc_debugfs.c | 2 +- drivers/gpu/drm/xe/xe_uc_fw.c | 14 +- drivers/gpu/drm/xe/xe_validation.c | 1 - drivers/gpu/drm/xe/xe_vm.c | 28 +- drivers/gpu/drm/xe/xe_vm.h | 2 +- drivers/gpu/drm/xe/xe_vram.c | 4 +- drivers/gpu/drm/xe/xe_vram_freq.c | 1 - drivers/gpu/drm/xe/xe_vsec.c | 1 - drivers/gpu/drm/xe/xe_wa.c | 2 +- drivers/gpu/drm/xe/xe_wait_user_fence.c | 1 - drivers/gpu/drm/xe/xe_wopcm.c | 2 +- include/uapi/drm/xe_drm.h | 4 - 134 files changed, 1391 insertions(+), 973 deletions(-)
