Instead of checking for CPU generation, use the libdrm-provided
I915_PARAM_HAS_LLC instead.

v2: use a define check to verify if we have I915_PARAM_HAS_LLC.

Signed-off-by: Eugeni Dodonov <[email protected]>
---
 src/sna/kgem.c |   12 ++++++++++++
 1 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/src/sna/kgem.c b/src/sna/kgem.c
index 970e462..aa9029d 100644
--- a/src/sna/kgem.c
+++ b/src/sna/kgem.c
@@ -603,8 +603,20 @@ void kgem_init(struct kgem *kgem, int fd, struct 
pci_device *dev, int gen)
             kgem->has_relaxed_fencing));
 
        kgem->has_llc = false;
+#ifdef I915_PARAM_HAS_LLC
+       if (!DBG_NO_LLC)
+               kgem->has_llc = gem_param(kgem, I915_PARAM_HAS_LLC);
+#else
+       /* If I915_PARAM_HAS_LLC is not defined by the libdrm, fallback
+        * to previous GPU generation check and assume that GPUs superior
+        * to Gen6 support it.
+        */
+       DBG(("%s: libdrm does not provides I915_PARAM_HAS_LLC, detect GPU gen 
instead\n",
+                               __FUNCTION__));
        if (!DBG_NO_LLC && gen >= 60)
                kgem->has_llc = true;
+#endif
+
        kgem->has_cpu_bo = kgem->has_llc;
        DBG(("%s: cpu bo enabled %d: llc? %d\n", __FUNCTION__,
             kgem->has_cpu_bo, kgem->has_llc));
-- 
1.7.8.3

_______________________________________________
Intel-gfx mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to