Explorar o código

drm/i915: Add I915_PARAM_REVISION

Adds a parameter which can be used with DRM_I915_GETPARAM to query the
GPU revision. The intention is to use this in Mesa to implement the
WaDisableSIMD16On3SrcInstr workaround on Skylake but only for
revision 2.

Signed-off-by: Neil Roberts <neil@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Neil Roberts %!s(int64=10) %!d(string=hai) anos
pai
achega
27cd44618b
Modificáronse 2 ficheiros con 4 adicións e 0 borrados
  1. 3 0
      drivers/gpu/drm/i915/i915_dma.c
  2. 1 0
      include/uapi/drm/i915_drm.h

+ 3 - 0
drivers/gpu/drm/i915/i915_dma.c

@@ -68,6 +68,9 @@ static int i915_getparam(struct drm_device *dev, void *data,
 	case I915_PARAM_CHIPSET_ID:
 	case I915_PARAM_CHIPSET_ID:
 		value = dev->pdev->device;
 		value = dev->pdev->device;
 		break;
 		break;
+	case I915_PARAM_REVISION:
+		value = dev->pdev->revision;
+		break;
 	case I915_PARAM_HAS_GEM:
 	case I915_PARAM_HAS_GEM:
 		value = 1;
 		value = 1;
 		break;
 		break;

+ 1 - 0
include/uapi/drm/i915_drm.h

@@ -347,6 +347,7 @@ typedef struct drm_i915_irq_wait {
 #define I915_PARAM_HAS_COHERENT_PHYS_GTT 29
 #define I915_PARAM_HAS_COHERENT_PHYS_GTT 29
 #define I915_PARAM_MMAP_VERSION          30
 #define I915_PARAM_MMAP_VERSION          30
 #define I915_PARAM_HAS_BSD2		 31
 #define I915_PARAM_HAS_BSD2		 31
+#define I915_PARAM_REVISION              32
 
 
 typedef struct drm_i915_getparam {
 typedef struct drm_i915_getparam {
 	int param;
 	int param;