diff options
author | Ben Skeggs <skeggsb@gmail.com> | 2007-10-17 23:22:05 +1100 |
---|---|---|
committer | Ben Skeggs <skeggsb@gmail.com> | 2007-10-17 23:22:05 +1100 |
commit | a5c4786aaeadce6103fcc9b3a6f4e6f25a66730f (patch) | |
tree | 6569fa058406cabdbcf7f88bdf30ad3121173fc7 /src/nv_dma.h | |
parent | 0d1835d67e38ca12347a7965ac43fbfc29063b87 (diff) | |
download | xorg-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.h | 32 |
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 */ |