summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLionel Landwerlin <[email protected]>2019-10-04 19:37:14 +0300
committerLionel Landwerlin <[email protected]>2019-10-05 23:05:03 +0300
commitd36763b2a45105b2bd4ca714ceb05b488c2d97ce (patch)
treec4cb6bba67a001950f38a3c94e27235dd715f1ae
parent396b41095944ea3675d30c0d47ca8c01db2b4c8f (diff)
intel: fix subslice computation from topology data
We're missing the offset of the slice in the subslice mask... This worked for most platforms that don't have first slice fused off because we would reread the same mask from slice0 again and again... Signed-off-by: Lionel Landwerlin <[email protected]> Fixes: c1900f5b0f ("intel: devinfo: add helper functions to fill fusing masks values") Gitlab: https://gitlab.freedesktop.org/mesa/mesa/issues/1869 Reviewed-by: Mark Janes <[email protected]>
-rw-r--r--src/intel/dev/gen_device_info.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/intel/dev/gen_device_info.c b/src/intel/dev/gen_device_info.c
index 85fa978f9c1..0ab3c354df5 100644
--- a/src/intel/dev/gen_device_info.c
+++ b/src/intel/dev/gen_device_info.c
@@ -1104,7 +1104,7 @@ update_from_topology(struct gen_device_info *devinfo,
for (int b = 0; b < devinfo->subslice_slice_stride; b++) {
devinfo->num_subslices[s] +=
- __builtin_popcount(devinfo->subslice_masks[b]);
+ __builtin_popcount(devinfo->subslice_masks[s * devinfo->subslice_slice_stride + b]);
}
n_subslices += devinfo->num_subslices[s];
}