drm/i915: Convert gt workarounds to intel_gt
authorTvrtko Ursulin <tvrtko.ursulin@intel.com>
Fri, 21 Jun 2019 07:07:48 +0000 (08:07 +0100)
committerTvrtko Ursulin <tvrtko.ursulin@intel.com>
Fri, 21 Jun 2019 12:48:25 +0000 (13:48 +0100)
More conversion of i915_gem_init_hw to uncore.

Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Link: https://patchwork.freedesktop.org/patch/msgid/20190621070811.7006-10-tvrtko.ursulin@linux.intel.com
drivers/gpu/drm/i915/gt/intel_workarounds.c
drivers/gpu/drm/i915/gt/intel_workarounds.h
drivers/gpu/drm/i915/i915_gem.c

index 686df92b48663b1bd4c74dd1a0401c9b87f3c7a6..91f20f87fd034f73ad4080d0cf33f32f9040fbd5 100644 (file)
@@ -6,6 +6,7 @@
 
 #include "i915_drv.h"
 #include "intel_context.h"
+#include "intel_gt.h"
 #include "intel_workarounds.h"
 
 /**
@@ -984,9 +985,9 @@ wa_list_apply(struct intel_uncore *uncore, const struct i915_wa_list *wal)
        spin_unlock_irqrestore(&uncore->lock, flags);
 }
 
-void intel_gt_apply_workarounds(struct drm_i915_private *i915)
+void intel_gt_apply_workarounds(struct intel_gt *gt)
 {
-       wa_list_apply(&i915->uncore, &i915->gt_wa_list);
+       wa_list_apply(gt->uncore, &gt->i915->gt_wa_list);
 }
 
 static bool wa_list_verify(struct intel_uncore *uncore,
@@ -1005,10 +1006,9 @@ static bool wa_list_verify(struct intel_uncore *uncore,
        return ok;
 }
 
-bool intel_gt_verify_workarounds(struct drm_i915_private *i915,
-                                const char *from)
+bool intel_gt_verify_workarounds(struct intel_gt *gt, const char *from)
 {
-       return wa_list_verify(&i915->uncore, &i915->gt_wa_list, from);
+       return wa_list_verify(gt->uncore, &gt->i915->gt_wa_list, from);
 }
 
 static void
index 3761a6ee58bb9ad6ca1a226745fdf06ff997daa9..8c9c769c220436ccfb92bae0767441e183482230 100644 (file)
@@ -14,6 +14,7 @@
 struct drm_i915_private;
 struct i915_request;
 struct intel_engine_cs;
+struct intel_gt;
 
 static inline void intel_wa_list_free(struct i915_wa_list *wal)
 {
@@ -25,9 +26,8 @@ void intel_engine_init_ctx_wa(struct intel_engine_cs *engine);
 int intel_engine_emit_ctx_wa(struct i915_request *rq);
 
 void intel_gt_init_workarounds(struct drm_i915_private *i915);
-void intel_gt_apply_workarounds(struct drm_i915_private *i915);
-bool intel_gt_verify_workarounds(struct drm_i915_private *i915,
-                                const char *from);
+void intel_gt_apply_workarounds(struct intel_gt *gt);
+bool intel_gt_verify_workarounds(struct intel_gt *gt, const char *from);
 
 void intel_engine_init_whitelist(struct intel_engine_cs *engine);
 void intel_engine_apply_whitelist(struct intel_engine_cs *engine);
index 6f96d360e8d54d7b0d54c6263b43fef0698f7688..0a313289f9849ced22cd2dca23248d4a6a2159c2 100644 (file)
@@ -1248,9 +1248,9 @@ int i915_gem_init_hw(struct drm_i915_private *dev_priv)
                           LOWER_SLICE_ENABLED : LOWER_SLICE_DISABLED);
 
        /* Apply the GT workarounds... */
-       intel_gt_apply_workarounds(dev_priv);
+       intel_gt_apply_workarounds(&dev_priv->gt);
        /* ...and determine whether they are sticking. */
-       intel_gt_verify_workarounds(dev_priv, "init");
+       intel_gt_verify_workarounds(&dev_priv->gt, "init");
 
        intel_gt_init_swizzling(&dev_priv->gt);