summaryrefslogtreecommitdiff
path: root/src/nv_dma.h
diff options
context:
space:
mode:
authorBen Skeggs <skeggsb@gmail.com>2007-10-17 23:22:05 +1100
committerBen Skeggs <skeggsb@gmail.com>2007-10-17 23:22:05 +1100
commita5c4786aaeadce6103fcc9b3a6f4e6f25a66730f (patch)
tree6569fa058406cabdbcf7f88bdf30ad3121173fc7 /src/nv_dma.h
parent0d1835d67e38ca12347a7965ac43fbfc29063b87 (diff)
downloadxorg-driver-xf86-video-nouveau-a5c4786aaeadce6103fcc9b3a6f4e6f25a66730f.tar.gz
Switch to *_RING instead of NVDma*
Diffstat (limited to 'src/nv_dma.h')
-rw-r--r--src/nv_dma.h32
1 files changed, 21 insertions, 11 deletions
diff --git a/src/nv_dma.h b/src/nv_dma.h
index f28dab1..39b6bb8 100644
--- a/src/nv_dma.h
+++ b/src/nv_dma.h
@@ -73,20 +73,30 @@ enum DMAObjects {
NvDmaXvNotifier5 = 0xE8000005,
};
-extern void NVDmaStart(NVPtr pNv, uint32_t object, uint32_t tag, int size);
+extern void NVDmaStartNNN(NVPtr pNv, uint32_t object, uint32_t tag, int size);
-#define NVDmaNext(pNv, data) do { \
- NVDEBUG("\tNVDmaNext: @0x%08x 0x%08x\n", (unsigned)((pNv)->dmaCurrent),(unsigned)(data)); \
- (pNv)->dmaBase[(pNv)->dmaCurrent++] = (data); \
+#define BEGIN_RING(obj,mthd,size) do { \
+ NVDmaStartNNN(pNv, (obj), (mthd), (size)); \
} while(0)
-#define NVDmaFloat(pNv, data) do { \
- union { \
- float v; \
- uint32_t u; \
- } c; \
- c.v = (data); \
- NVDmaNext((pNv), c.u); \
+#define OUT_RING(data) do { \
+ NVDEBUG("\tOUT_RING : @0x%08x 0x%08x\n", \
+ (unsigned)(pNv->dmaCurrent), (unsigned)(data)); \
+ pNv->dmaBase[pNv->dmaCurrent++] = (data); \
+} while(0)
+
+#define OUT_RINGf(data) do { \
+ union { float v; uint32_t u; } c; \
+ c.v = (data); \
+ OUT_RING(c.u); \
+} while(0)
+
+#define WAIT_RING(size) do { \
+ NVDmaWaitNNN(pScrn, (size)); \
+} while(0)
+
+#define FIRE_RING() do { \
+ NVDmaKickoffNNN(pNv); \
} while(0)
#endif /* NV_DMA_H */