]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915/guc: handle GuC messages received with CTB disabled
authorDaniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Fri, 21 Jun 2019 18:21:23 +0000 (11:21 -0700)
committerChris Wilson <chris@chris-wilson.co.uk>
Fri, 21 Jun 2019 18:47:34 +0000 (19:47 +0100)
commit87406f39e0a596023cfb366d868e420ed41c0cc4
treeac55d4f46304fb02f8fdfffe8905106f085428ca
parent5a7fa0c563ac8a6f6be66bed9b8c2c442fc27794
drm/i915/guc: handle GuC messages received with CTB disabled

There is a very small chance of triggering a log flush event when
enabling or disabling CT buffers. Events triggered while CT buffers
are disabled are logged in the SCRATCH_15 register using the same bits
used in the CT message payload. Since our communication channel with
GuC is turned off, we can save the message and handle it after we turn
it back on.
GuC should be idle and not generate more events in the meantime because
we're not talking to it.

v2: clear the mmio register on stop_communication as well (Chris)

Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Link: https://patchwork.freedesktop.org/patch/msgid/20190621182123.31368-2-daniele.ceraolospurio@intel.com
drivers/gpu/drm/i915/intel_guc.h
drivers/gpu/drm/i915/intel_uc.c