drm/nv50-/kms: add some evo tracing ability for debugging
authorBen Skeggs <bskeggs@redhat.com>
Mon, 3 Nov 2014 06:43:59 +0000 (16:43 +1000)
committerBen Skeggs <bskeggs@redhat.com>
Tue, 2 Dec 2014 05:44:02 +0000 (15:44 +1000)
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
drivers/gpu/drm/nouveau/nv50_display.c

index 49f6128..2016d8e 100644 (file)
@@ -440,8 +440,21 @@ evo_kick(u32 *push, void *evoc)
        mutex_unlock(&dmac->lock);
 }
 
+#if 1
 #define evo_mthd(p,m,s) *((p)++) = (((s) << 18) | (m))
 #define evo_data(p,d)   *((p)++) = (d)
+#else
+#define evo_mthd(p,m,s) do {                                                   \
+       const u32 _m = (m), _s = (s);                                          \
+       printk(KERN_ERR "%04x %d %s\n", _m, _s, __func__);                     \
+       *((p)++) = ((_s << 18) | _m);                                          \
+} while(0)
+#define evo_data(p,d) do {                                                     \
+       const u32 _d = (d);                                                    \
+       printk(KERN_ERR "\t%08x\n", _d);                                       \
+       *((p)++) = _d;                                                         \
+} while(0)
+#endif
 
 static bool
 evo_sync_wait(void *data)