drm/xe: Move force_wake init to earlier point in probe
authorMichał Winiarski <michal.winiarski@intel.com>
Tue, 5 Dec 2023 01:33:02 +0000 (02:33 +0100)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Thu, 21 Dec 2023 16:45:11 +0000 (11:45 -0500)
GuC will need to be loaded earlier during probe. And in order to load
GuC, being able to take the forcewake is going to be needed.

Signed-off-by: Michał Winiarski <michal.winiarski@intel.com>
Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/xe/xe_device.c
drivers/gpu/drm/xe/xe_gt.c

index dd56a8c3f80d4f1a292817d95f348e0dbc4af684..bcc10b7f23ab716644b3f9b91c002a20e11eaae5 100644 (file)
@@ -415,6 +415,9 @@ int xe_device_probe(struct xe_device *xe)
 
        xe_ttm_sys_mgr_init(xe);
 
+       for_each_gt(gt, xe, id)
+               xe_force_wake_init_gt(gt, gt_to_fw(gt));
+
        err = drmm_add_action_or_reset(&xe->drm, xe_driver_flr_fini, xe);
        if (err)
                return err;
index 8a6fb9641cd698ec2cfd6d6ff067002d808c0cc4..4db94344bbde7847462fe052725cbec2244cd98f 100644 (file)
@@ -293,8 +293,6 @@ int xe_gt_init_early(struct xe_gt *gt)
 {
        int err;
 
-       xe_force_wake_init_gt(gt, gt_to_fw(gt));
-
        err = xe_force_wake_get(gt_to_fw(gt), XE_FW_GT);
        if (err)
                return err;