[Intel-gfx] [PATCH] sna: check for LLC support
Eugeni Dodonov
eugeni.dodonov at intel.com
Tue Jan 17 19:16:37 CET 2012
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 <eugeni.dodonov at intel.com>
---
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
More information about the Intel-gfx
mailing list