]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915: "Race-to-idle" after switching to the kernel context
authorChris Wilson <chris@chris-wilson.co.uk>
Thu, 31 May 2018 08:22:44 +0000 (09:22 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Thu, 31 May 2018 18:29:52 +0000 (19:29 +0100)
commit0606035fcab6b2630b0d95a5b31e235ec9ad5642
tree646be44daf750003cf7389a739520ea5beb9d2d1
parent4dfacb0bcbee79fa2ef4b2e9e64a8f8a28598934
drm/i915: "Race-to-idle" after switching to the kernel context

During suspend we want to flush out all active contexts and their
rendering. To do so we queue a request from the kernel's context, once
we know that request is done, we know the GPU is completely idle. To
speed up that switch bump the GPU clocks.

Switching to the kernel context prior to idling is also used to enforce
a barrier before changing OA properties, and when evicting active
rendering from the global GTT. All cases where we do want to
race-to-idle.

v2: Limit the boosting to only the switch before suspend.
v3: Limit it to the wait-for-idle on suspend.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: David Weinehall <david.weinehall@linux.intel.com>
Cc: Mika Kuoppala <mika.kuoppala@intel.com>
Tested-by: David Weinehall <david.weinehall@linux.intel.com> #v1
Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180531082246.9763-2-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/i915_gem.c
drivers/gpu/drm/i915/i915_request.h