[Intel-gfx] [PATCH] drm/i915/gt: Clear the whole first page of LRC on gen9
Chris Wilson
chris at chris-wilson.co.uk
Sat Jan 18 10:52:17 UTC 2020
Try clearing the whole first page of the LRC on gen9, just in case HW
tries peeking at the poisoned data.
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
Cc: Mika Kuoppala <mika.kuoppala at linux.intel.com>
---
drivers/gpu/drm/i915/gt/intel_lrc.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c
index 2d6b41e66b16..bf0c5a998428 100644
--- a/drivers/gpu/drm/i915/gt/intel_lrc.c
+++ b/drivers/gpu/drm/i915/gt/intel_lrc.c
@@ -549,7 +549,7 @@ static void set_offsets(u32 *regs,
}
if (clear) {
- u8 count = *++data;
+ unsigned int count = *++data * 16u;
/* Clear past the tail for HW access */
GEM_BUG_ON(dword_in_page(regs) > count);
@@ -594,7 +594,7 @@ static const u8 gen8_xcs_offsets[] = {
REG16(0x200),
REG(0x028),
- END(80)
+ END(5)
};
static const u8 gen9_xcs_offsets[] = {
@@ -678,7 +678,7 @@ static const u8 gen9_xcs_offsets[] = {
REG16(0x67c),
REG(0x068),
- END(176)
+ END(64)
};
static const u8 gen12_xcs_offsets[] = {
@@ -710,7 +710,7 @@ static const u8 gen12_xcs_offsets[] = {
REG16(0x274),
REG16(0x270),
- END(80)
+ END(5)
};
static const u8 gen8_rcs_offsets[] = {
@@ -747,7 +747,7 @@ static const u8 gen8_rcs_offsets[] = {
LRI(1, 0),
REG(0x0c8),
- END(80)
+ END(5)
};
static const u8 gen9_rcs_offsets[] = {
@@ -831,7 +831,7 @@ static const u8 gen9_rcs_offsets[] = {
REG16(0x67c),
REG(0x68),
- END(176)
+ END(64)
};
static const u8 gen11_rcs_offsets[] = {
@@ -872,7 +872,7 @@ static const u8 gen11_rcs_offsets[] = {
LRI(1, 0),
REG(0x0c8),
- END(80)
+ END(5)
};
static const u8 gen12_rcs_offsets[] = {
@@ -913,7 +913,7 @@ static const u8 gen12_rcs_offsets[] = {
LRI(1, 0),
REG(0x0c8),
- END(80)
+ END(5)
};
#undef END
--
2.25.0
More information about the Intel-gfx
mailing list