[PATCH 1/3] tools/intel_error_decode: Add ERROR decodings for gen8

Mika Kuoppala
2015-03-25T13:42:20Z

Add ERROR decodings for gen8

Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
---
tools/intel_error_decode.c | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)

diff --git a/tools/intel_error_decode.c b/tools/intel_error_decode.c
index 035b17f..fb4a2a4 100644
--- a/tools/intel_error_decode.c
+++ b/tools/intel_error_decode.c
@@ -288,10 +288,29 @@ static void print_snb_error(unsigned int reg)
printf(" Cacheline containing a PD was marked as invalid\n");
}

+static void print_bdw_error(unsigned int reg, unsigned int devid)
+{
+ print_ivb_error(reg, devid);
+
+ if (reg & (1 << 10))
+ printf(" Non WB memory type for Advanced Context\n");
+ if (reg & (1 << 11))
+ printf(" PASID not enabled\n");
+ if (reg & (1 << 12))
+ printf(" PASID boundary violation\n");
+ if (reg & (1 << 13))
+ printf(" PASID not valid\n");
+ if (reg & (1 << 14))
+ printf(" PASID was zero for untranslated request\n");
+ if (reg & (1 << 15))
+ printf(" Context was not marked as present when doing DMA\n");
+}
+
static void
print_error(unsigned int reg, unsigned int devid)
{
switch (intel_gen(devid)) {
+ case 8: return print_bdw_error(reg, devid);
case 7: return print_ivb_error(reg, devid);
case 6: return print_snb_error(reg);