]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/video/nvidia/nv_local.h
nvidiafb: prevent triggering of softlockup
[linux-2.6-omap-h63xx.git] / drivers / video / nvidia / nv_local.h
index afee284fc73c964bbc4fb2782c0fa251b13ccb28..68e508daa417e4861b14ea492faa0205302b7fe6 100644 (file)
@@ -73,9 +73,9 @@
 #define NVDmaNext(par, data) \
      NV_WR32(&(par)->dmaBase[(par)->dmaCurrent++], 0, (data))
 
-#define NVDmaStart(par, tag, size) {          \
+#define NVDmaStart(info, par, tag, size) {    \
      if((par)->dmaFree <= (size))             \
-        NVDmaWait(par, size);                 \
+        NVDmaWait(info, size);                \
      NVDmaNext(par, ((size) << 18) | (tag));  \
      (par)->dmaFree -= ((size) + 1);          \
 }
 #define READ_GET(par) (NV_RD32(&(par)->FIFO[0x0011], 0) >> 2)
 
 #ifdef __LITTLE_ENDIAN
+
+#include <linux/bitrev.h>
+
 #define reverse_order(l)        \
 do {                            \
        u8 *a = (u8 *)(l);      \
-       *a = byte_rev[*a], a++; \
-       *a = byte_rev[*a], a++; \
-       *a = byte_rev[*a], a++; \
-       *a = byte_rev[*a];      \
+       a[0] = bitrev8(a[0]);   \
+       a[1] = bitrev8(a[1]);   \
+       a[2] = bitrev8(a[2]);   \
+       a[3] = bitrev8(a[3]);   \
 } while(0)
 #else
-#define reverse_order(l)
+#define reverse_order(l) do { } while(0)
 #endif                          /* __LITTLE_ENDIAN */
 
 #endif                         /* __NV_LOCAL_H__ */