summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjsg <jsg@openbsd.org>2020-06-26 04:54:50 +0000
committerjsg <jsg@openbsd.org>2020-06-26 04:54:50 +0000
commite80f4449c63a5e619b8d8678a9ade497917d49e5 (patch)
treeb45274975199fb51a30c37466eb8ece898d9fd5a
parentdrm/i915/gem: Avoid iterating an empty list (diff)
downloadwireguard-openbsd-e80f4449c63a5e619b8d8678a9ade497917d49e5.tar.xz
wireguard-openbsd-e80f4449c63a5e619b8d8678a9ade497917d49e5.zip
drm/i915: Whitelist context-local timestamp in the gen9 cmdparser
From Chris Wilson f11a45d13e11a238868afa6dbe1790ae816ef8af in linux 5.7.y/5.7.6 273500ae71711c040d258a7b3f4b6f44c368fff2 in mainline linux
-rw-r--r--sys/dev/pci/drm/i915/i915_cmd_parser.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/dev/pci/drm/i915/i915_cmd_parser.c b/sys/dev/pci/drm/i915/i915_cmd_parser.c
index ec634f4fa4c..06ee43c6298 100644
--- a/sys/dev/pci/drm/i915/i915_cmd_parser.c
+++ b/sys/dev/pci/drm/i915/i915_cmd_parser.c
@@ -572,6 +572,9 @@ struct drm_i915_reg_descriptor {
#define REG32(_reg, ...) \
{ .addr = (_reg), __VA_ARGS__ }
+#define REG32_IDX(_reg, idx) \
+ { .addr = _reg(idx) }
+
/*
* Convenience macro for adding 64-bit registers.
*
@@ -669,6 +672,7 @@ static const struct drm_i915_reg_descriptor gen9_blt_regs[] = {
REG64_IDX(RING_TIMESTAMP, BSD_RING_BASE),
REG32(BCS_SWCTRL),
REG64_IDX(RING_TIMESTAMP, BLT_RING_BASE),
+ REG32_IDX(RING_CTX_TIMESTAMP, BLT_RING_BASE),
REG64_IDX(BCS_GPR, 0),
REG64_IDX(BCS_GPR, 1),
REG64_IDX(BCS_GPR, 2),