From: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
To: Intel-gfx@lists.freedesktop.org
Subject: [PATCH 1/3] drm/i915: Make i915_gem_load_power_context take struct intel_gt
Date: Wed, 16 Oct 2019 13:28:41 +0100 [thread overview]
Message-ID: <20191016122843.9429-1-tvrtko.ursulin@linux.intel.com> (raw)
From: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
The code underneath works on intel_gt and also rename to
i915_gem_load_gt_power_context to signify it is operating on GT.
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
---
drivers/gpu/drm/i915/gem/i915_gem_pm.c | 24 +++++++++++++-----------
drivers/gpu/drm/i915/gem/i915_gem_pm.h | 3 ++-
drivers/gpu/drm/i915/i915_gem.c | 2 +-
3 files changed, 16 insertions(+), 13 deletions(-)
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_pm.c b/drivers/gpu/drm/i915/gem/i915_gem_pm.c
index 7987b54fb1f5..b2c18674c455 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_pm.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_pm.c
@@ -56,9 +56,9 @@ static bool switch_to_kernel_context_sync(struct intel_gt *gt)
return result;
}
-bool i915_gem_load_power_context(struct drm_i915_private *i915)
+bool i915_gem_load_gt_power_context(struct intel_gt *gt)
{
- return switch_to_kernel_context_sync(&i915->gt);
+ return switch_to_kernel_context_sync(gt);
}
static void user_forcewake(struct intel_gt *gt, bool suspend)
@@ -172,11 +172,13 @@ void i915_gem_suspend_late(struct drm_i915_private *i915)
void i915_gem_resume(struct drm_i915_private *i915)
{
+ struct intel_gt *gt = &i915->gt;
+
GEM_TRACE("\n");
- intel_uncore_forcewake_get(&i915->uncore, FORCEWAKE_ALL);
+ intel_uncore_forcewake_get(gt->uncore, FORCEWAKE_ALL);
- if (intel_gt_init_hw(&i915->gt))
+ if (intel_gt_init_hw(gt))
goto err_wedged;
/*
@@ -184,26 +186,26 @@ void i915_gem_resume(struct drm_i915_private *i915)
* guarantee that the context image is complete. So let's just reset
* it and start again.
*/
- if (intel_gt_resume(&i915->gt))
+ if (intel_gt_resume(gt))
goto err_wedged;
- intel_uc_resume(&i915->gt.uc);
+ intel_uc_resume(>->uc);
/* Always reload a context for powersaving. */
- if (!i915_gem_load_power_context(i915))
+ if (!i915_gem_load_gt_power_context(gt))
goto err_wedged;
- user_forcewake(&i915->gt, false);
+ user_forcewake(gt, false);
out_unlock:
- intel_uncore_forcewake_put(&i915->uncore, FORCEWAKE_ALL);
+ intel_uncore_forcewake_put(gt->uncore, FORCEWAKE_ALL);
return;
err_wedged:
- if (!intel_gt_is_wedged(&i915->gt)) {
+ if (!intel_gt_is_wedged(gt)) {
dev_err(i915->drm.dev,
"Failed to re-initialize GPU, declaring it wedged!\n");
- intel_gt_set_wedged(&i915->gt);
+ intel_gt_set_wedged(gt);
}
goto out_unlock;
}
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_pm.h b/drivers/gpu/drm/i915/gem/i915_gem_pm.h
index 6f7d5d11ac3b..38eace4cb6ba 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_pm.h
+++ b/drivers/gpu/drm/i915/gem/i915_gem_pm.h
@@ -10,11 +10,12 @@
#include <linux/types.h>
struct drm_i915_private;
+struct intel_gt;
struct work_struct;
void i915_gem_init__pm(struct drm_i915_private *i915);
-bool i915_gem_load_power_context(struct drm_i915_private *i915);
+bool i915_gem_load_gt_power_context(struct intel_gt *gt);
void i915_gem_resume(struct drm_i915_private *i915);
void i915_gem_idle_work_handler(struct work_struct *work);
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 0ddbd3a5fb8d..c4ebc21c6820 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -1132,7 +1132,7 @@ static int __intel_engines_record_defaults(struct drm_i915_private *i915)
}
/* Flush the default context image to memory, and enable powersaving. */
- if (!i915_gem_load_power_context(i915)) {
+ if (!i915_gem_load_gt_power_context(&i915->gt)) {
err = -EIO;
goto out;
}
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next reply other threads:[~2019-10-16 12:28 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-16 12:28 Tvrtko Ursulin [this message]
2019-10-16 12:28 ` [PATCH 2/3] drm/i915: Store engine mask in intel_gt Tvrtko Ursulin
2019-10-16 13:03 ` Chris Wilson
2019-10-16 13:31 ` Tvrtko Ursulin
2019-10-16 13:41 ` Chris Wilson
2019-10-16 12:28 ` [PATCH 3/3] drm/i915: Pass in intel_gt at some for_each_engine sites Tvrtko Ursulin
2019-10-16 13:04 ` Chris Wilson
-- strict thread matches above, loose matches on Subject: below --
2019-10-16 12:25 [PATCH 1/3] drm/i915: Make i915_gem_load_power_context take struct intel_gt Tvrtko Ursulin
2019-10-16 12:42 ` Chris Wilson
2019-10-16 12:53 ` Tvrtko Ursulin
2019-10-16 21:05 ` Andi Shyti
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20191016122843.9429-1-tvrtko.ursulin@linux.intel.com \
--to=tvrtko.ursulin@linux.intel.com \
--cc=Intel-gfx@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.