]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/xe: Enable CPU address mirror uAPI
authorMatthew Brost <matthew.brost@intel.com>
Thu, 6 Mar 2025 01:26:43 +0000 (17:26 -0800)
committerMatthew Brost <matthew.brost@intel.com>
Thu, 6 Mar 2025 19:35:51 +0000 (11:35 -0800)
Support for CPU address mirror bindings in SRAM fully in place, enable the
implementation.

v3:
 - s/system allocator/CPU address mirror (Thomas)
v7:
 - Only enable uAPI if selected by GPU SVM (CI)

Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250306012657.3505757-19-matthew.brost@intel.com
drivers/gpu/drm/xe/xe_vm.c

index ea56b8379634e889a86486b1d0264a7cc51dd157..22a26aff3a6e1b00be416e86dd1bc3703908d18d 100644 (file)
@@ -3110,14 +3110,9 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, struct xe_vm *vm,
                u16 pat_index = (*bind_ops)[i].pat_index;
                u16 coh_mode;
 
-               /* FIXME: Disabling CPU address mirror for now */
-               if (XE_IOCTL_DBG(xe, is_cpu_addr_mirror)) {
-                       err = -EOPNOTSUPP;
-                       goto free_bind_ops;
-               }
-
                if (XE_IOCTL_DBG(xe, is_cpu_addr_mirror &&
-                                !xe_vm_in_fault_mode(vm))) {
+                                (!xe_vm_in_fault_mode(vm) ||
+                                !IS_ENABLED(CONFIG_DRM_GPUSVM)))) {
                        err = -EINVAL;
                        goto free_bind_ops;
                }