[Intel-gfx] [PATCH] sna: check for LLC support
Daniel Vetter
daniel at ffwll.ch
Tue Jan 17 19:37:11 CET 2012
On Tue, Jan 17, 2012 at 04:16:37PM -0200, Eugeni Dodonov wrote:
> 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);
I still think you want the fallback to use the heuristics here in case we
have a new libdrm, but an old kernel lacking the param.
-Daniel
> +#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
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Daniel Vetter
Mail: daniel at ffwll.ch
Mobile: +41 (0)79 365 57 48
More information about the Intel-gfx
mailing list