drm/xe: Defer irq init until after xe_display_init_noaccel
authorMaarten Lankhorst <dev@lankhorst.se>
Tue, 21 Jan 2025 14:28:49 +0000 (15:28 +0100)
committerMaarten Lankhorst <dev@lankhorst.se>
Fri, 31 Jan 2025 08:42:18 +0000 (09:42 +0100)
As stated in previous commit, we have to move interrupt handling
until after xe_display_init_noaccel, as using memirqs would require
an allocation.

A full solution will of course require memirq allocation to be moved,
but the first part only focuses on the required changes to display.

Reviewed-by: Ilia Levi <ilia.levi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250121142850.4960-2-dev@lankhorst.se
Signed-off-by: Maarten Lankhorst <dev@lankhorst.se>
drivers/gpu/drm/xe/xe_device.c

index 8fedc72e9db40f5d44c0da86d85aa6d281e9f3b2..4d401e4da70b90fb0c53008990dff0623e626688 100644 (file)
@@ -814,10 +814,6 @@ int xe_device_probe(struct xe_device *xe)
        if (err)
                return err;
 
-       err = xe_irq_install(xe);
-       if (err)
-               goto err;
-
        err = probe_has_flat_ccs(xe);
        if (err)
                goto err;
@@ -851,6 +847,10 @@ int xe_device_probe(struct xe_device *xe)
                        goto err;
        }
 
+       err = xe_irq_install(xe);
+       if (err)
+               goto err;
+
        for_each_gt(gt, xe, id) {
                last_gt = id;