Re: [Intel-gfx] [PATCH 1/3] drm/i915/overlay: Stash the kernel context on initialisation

2019-07-04 Thread Matthew Auld
On Thu, 4 Jul 2019 at 21:05, Chris Wilson  wrote:
>
> Simplify runtime request creation by storing the context we need to use
> during initialisation. This allows us to remove one more hardcoded
> engine lookup.
>
> Signed-off-by: Chris Wilson 
Reviewed-by: Matthew Auld 
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

[Intel-gfx] [PATCH 1/3] drm/i915/overlay: Stash the kernel context on initialisation

2019-07-04 Thread Chris Wilson
Simplify runtime request creation by storing the context we need to use
during initialisation. This allows us to remove one more hardcoded
engine lookup.

Signed-off-by: Chris Wilson 
---
 drivers/gpu/drm/i915/display/intel_overlay.c | 10 +++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_overlay.c 
b/drivers/gpu/drm/i915/display/intel_overlay.c
index 21339b7f6a3e..07929726b780 100644
--- a/drivers/gpu/drm/i915/display/intel_overlay.c
+++ b/drivers/gpu/drm/i915/display/intel_overlay.c
@@ -175,6 +175,7 @@ struct overlay_registers {
 
 struct intel_overlay {
struct drm_i915_private *i915;
+   struct intel_context *context;
struct intel_crtc *crtc;
struct i915_vma *vma;
struct i915_vma *old_vma;
@@ -239,9 +240,7 @@ static int intel_overlay_do_wait_request(struct 
intel_overlay *overlay,
 
 static struct i915_request *alloc_request(struct intel_overlay *overlay)
 {
-   struct intel_engine_cs *engine = overlay->i915->engine[RCS0];
-
-   return i915_request_create(engine->kernel_context);
+   return i915_request_create(overlay->context);
 }
 
 /* overlay needs to be disable in OCMD reg */
@@ -1359,11 +1358,16 @@ void intel_overlay_setup(struct drm_i915_private 
*dev_priv)
if (!HAS_OVERLAY(dev_priv))
return;
 
+   if (!HAS_ENGINE(dev_priv, RCS0))
+   return;
+
overlay = kzalloc(sizeof(*overlay), GFP_KERNEL);
if (!overlay)
return;
 
overlay->i915 = dev_priv;
+   overlay->context = dev_priv->engine[RCS0]->kernel_context;
+   GEM_BUG_ON(!overlay->context);
 
overlay->color_key = 0x0101fe;
overlay->color_key_enabled = true;
-- 
2.20.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx