Enable compilation on non-Intel, non-DRM systems.

A few of the tools can be performed post-mortem from a different system,
so it is useful to be able to compile those tools on those foreign
systems. Obviously, any program to interact with the PCI device or talk
to GEM will fail on a non-Intel system.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
diff --git a/tools/intel_error_decode.c b/tools/intel_error_decode.c
index d4bf8bc..af205dc 100644
--- a/tools/intel_error_decode.c
+++ b/tools/intel_error_decode.c
@@ -55,9 +55,15 @@
 #include "instdone.h"
 
 static void
-print_instdone (unsigned int instdone, unsigned int instdone1)
+print_instdone (uint32_t devid, unsigned int instdone, unsigned int instdone1)
 {
     int i;
+    static int once;
+
+    if (!once) {
+	init_instdone_definitions(devid);
+	once = 1;
+    }
 
     for (i = 0; i < num_instdone_bits; i++) {
 	int busy = 0;
@@ -190,11 +196,11 @@
 
 	    matched = sscanf (line, "  INSTDONE: 0x%08x\n", &reg);
 	    if (matched)
-		print_instdone (reg, -1);
+		print_instdone (devid, reg, -1);
 
 	    matched = sscanf (line, "  INSTDONE1: 0x%08x\n", &reg);
 	    if (matched)
-		print_instdone (-1, reg);
+		print_instdone (devid, -1, reg);
 
 	    continue;
 	}
@@ -247,8 +253,6 @@
 	return 1;
     }
 
-    init_instdone_definitions();
-
     if (argc == 1) {
 	path = "/debug/dri/0";
 	err = stat (path, &st);