]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
drm/xe/mcr: Avoid clobbering DSS steering
authorMatt Roper <matthew.d.roper@intel.com>
Wed, 26 Jun 2024 21:05:37 +0000 (14:05 -0700)
committerMatt Roper <matthew.d.roper@intel.com>
Fri, 28 Jun 2024 21:19:38 +0000 (14:19 -0700)
A couple copy/paste mistakes in the code that selects steering targets
for OADDRM and INSTANCE0 unintentionally clobbered the steering target
for DSS ranges in some cases.

The OADDRM/INSTANCE0 values were also not assigned as intended, although
that mistake wound up being harmless since the desired values for those
specific ranges were '0' which the kzalloc of the GT structure should
have already taken care of implicitly.

Fixes: dd08ebf6c352 ("drm/xe: Introduce a new DRM driver for Intel GPUs")
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240626210536.1620176-2-matthew.d.roper@intel.com
drivers/gpu/drm/xe/xe_gt_mcr.c

index 386ac32699092c5c29f406891bc2b1e45d8b0311..6d948a46912642e5d920f3aaaa1d709e32ea2944 100644 (file)
@@ -342,7 +342,7 @@ static void init_steering_oaddrm(struct xe_gt *gt)
        else
                gt->steering[OADDRM].group_target = 1;
 
-       gt->steering[DSS].instance_target = 0;          /* unused */
+       gt->steering[OADDRM].instance_target = 0;       /* unused */
 }
 
 static void init_steering_sqidi_psmi(struct xe_gt *gt)
@@ -357,8 +357,8 @@ static void init_steering_sqidi_psmi(struct xe_gt *gt)
 
 static void init_steering_inst0(struct xe_gt *gt)
 {
-       gt->steering[DSS].group_target = 0;             /* unused */
-       gt->steering[DSS].instance_target = 0;          /* unused */
+       gt->steering[INSTANCE0].group_target = 0;       /* unused */
+       gt->steering[INSTANCE0].instance_target = 0;    /* unused */
 }
 
 static const struct {