[Intel-gfx] [PATCH 66/66] drm/i915: Getparam full ppgtt

Ben Widawsky ben at bwidawsk.net
Fri Jun 28 01:31:07 CEST 2013


As of now (and this may change) we can't have aliasing PPGTT anymore (it
just won't happen). We do still have the aliasing ppgtt internally
though so we can use that to tell userspace if we have full PPGTT.

Signed-off-by: Ben Widawsky <ben at bwidawsk.net>
---
 drivers/gpu/drm/i915/i915_dma.c | 7 +++++--
 include/uapi/drm/i915_drm.h     | 1 +
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
index 9955dc7..d354c64 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
@@ -977,8 +977,7 @@ static int i915_getparam(struct drm_device *dev, void *data,
 		value = HAS_LLC(dev);
 		break;
 	case I915_PARAM_HAS_ALIASING_PPGTT:
-		if (intel_enable_ppgtt(dev) && dev_priv->gtt.aliasing_ppgtt)
-			value = 1;
+		value = 0;
 		break;
 	case I915_PARAM_HAS_WAIT_TIMEOUT:
 		value = 1;
@@ -1001,6 +1000,10 @@ static int i915_getparam(struct drm_device *dev, void *data,
 	case I915_PARAM_HAS_EXEC_HANDLE_LUT:
 		value = 1;
 		break;
+	case I915_PARAM_HAS_FULL_PPGTT:
+		if (intel_enable_ppgtt(dev) && dev_priv->gtt.aliasing_ppgtt)
+			value = 1;
+		break;
 	default:
 		DRM_DEBUG("Unknown parameter %d\n", param->param);
 		return -EINVAL;
diff --git a/include/uapi/drm/i915_drm.h b/include/uapi/drm/i915_drm.h
index 923ed7f..5cb9fd1 100644
--- a/include/uapi/drm/i915_drm.h
+++ b/include/uapi/drm/i915_drm.h
@@ -310,6 +310,7 @@ typedef struct drm_i915_irq_wait {
 #define I915_PARAM_HAS_PINNED_BATCHES	 24
 #define I915_PARAM_HAS_EXEC_NO_RELOC	 25
 #define I915_PARAM_HAS_EXEC_HANDLE_LUT   26
+#define I915_PARAM_HAS_FULL_PPGTT	 27
 
 typedef struct drm_i915_getparam {
 	int param;
-- 
1.8.3.1




More information about the Intel-gfx mailing list