Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8e1cb32d authored by Chris Wilson's avatar Chris Wilson
Browse files

drm/i915: Park the GPU on module load



Once we have flushed the first request through the system to both load a
context and record the default state; tell the GPU to park and idle
itself, putting itself immediately (hopefully at least) into a
powersaving state, and allowing ourselves to start from known state
after setting up all our bookkeeping.

Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180920161343.1117-1-chris@chris-wilson.co.uk
parent b8bdd9cc
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -5419,6 +5419,14 @@ static int __intel_engines_record_defaults(struct drm_i915_private *i915)

	assert_kernel_context_is_current(i915);

	/*
	 * Immediately park the GPU so that we enable powersaving and
	 * treat it as idle. The next time we issue a request, we will
	 * unpark and start using the engine->pinned_default_state, otherwise
	 * it is in limbo and an early reset may fail.
	 */
	__i915_gem_park(i915);

	for_each_engine(engine, i915, id) {
		struct i915_vma *state;
		void *vaddr;