]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
drm/i915/bdw: sseu: Fix sseu status parsing
authorImre Deak <imre.deak@intel.com>
Wed, 31 Aug 2016 16:13:07 +0000 (19:13 +0300)
committerImre Deak <imre.deak@intel.com>
Fri, 2 Sep 2016 15:17:55 +0000 (18:17 +0300)
Currently when checking for fused off EUs we may ignore the EU count in
an enabled slice if there is any disabled slice preceding the enabled
one (with a lower slice ID). Perhaps this can't happen in reality, but
there is no reason to have this assumption built-in, the code is clearer
without it.

Reviewed-by: Robert Bragg <robert@sixbynine.org>
Reviewed-by: Ben Widawsky <benjamin.widawsky@intel.com>
Tested-by: Ben Widawsky <benjamin.widawsky@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/1472659987-10417-8-git-send-email-imre.deak@intel.com
drivers/gpu/drm/i915/i915_debugfs.c

index 413989a62f7525867d1a673282fb2e161264fe53..7be8321a32b31f73716b3e4509e844dae8ad3fbc 100644 (file)
@@ -5095,7 +5095,7 @@ static void broadwell_sseu_device_status(struct drm_i915_private *dev_priv,
                                 sseu_subslice_total(sseu);
 
                /* subtract fused off EU(s) from enabled slice(s) */
-               for (s = 0; s < hweight8(sseu->slice_mask); s++) {
+               for (s = 0; s < fls(sseu->slice_mask); s++) {
                        u8 subslice_7eu =
                                INTEL_INFO(dev_priv)->sseu.subslice_7eu[s];