diff options
author | James Simmons <jsimmons@infradead.org> | 2012-06-03 20:24:54 -0400 |
---|---|---|
committer | James Simmons <jsimmons@infradead.org> | 2012-06-03 20:24:54 -0400 |
commit | ec466d77f951a5c56bc198a8c24903437b43eea4 (patch) | |
tree | abc3272f406fce6f568a0de663b17f24539c3526 | |
parent | 2783001987d6dfd95eda520a1feed44372923693 (diff) |
Move TwodRegs to ViaCommandBuffer
-rw-r--r-- | src/via_dmabuffer.h | 3 | ||||
-rw-r--r-- | src/via_driver.h | 1 | ||||
-rw-r--r-- | src/via_exa.c | 104 |
3 files changed, 54 insertions, 54 deletions
diff --git a/src/via_dmabuffer.h b/src/via_dmabuffer.h index 39eeb7e..626962e 100644 --- a/src/via_dmabuffer.h +++ b/src/via_dmabuffer.h @@ -1,5 +1,5 @@ /* - * Copyright (C) Thomas Hellstrom (2005) + * Copyright (C) Thomas Hellstrom (2005) * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -37,6 +37,7 @@ typedef struct _ViaCommandBuffer int header_start; int rindex; Bool has3dState; + const unsigned *TwodRegs; void (*flushFunc) (struct _ViaCommandBuffer * cb); } ViaCommandBuffer; diff --git a/src/via_driver.h b/src/via_driver.h index b46fa90..9bd02d0 100644 --- a/src/via_driver.h +++ b/src/via_driver.h @@ -284,7 +284,6 @@ typedef struct _VIA { CARD32 lastMarkerRead; Bool agpDMA; Bool nPOT[VIA_NUM_TEXUNITS]; - const unsigned *TwodRegs; const unsigned *HqvCmeRegs; ExaDriverPtr exaDriverPtr; ExaOffscreenArea *exa_scratch; diff --git a/src/via_exa.c b/src/via_exa.c index b3fd0da..3951f82 100644 --- a/src/via_exa.c +++ b/src/via_exa.c @@ -128,20 +128,20 @@ static const unsigned via_2d_regs_m1[] = { [MONOPATBGC] = VIA_REG_MONOPATBGC_M1 }; -#define VIA_REG(pVia, name) (pVia)->TwodRegs[name] +#define VIA_REG(name) (cb->TwodRegs[name]) /* * Use PCI MMIO to flush the command buffer when AGP DMA is not available. */ static void -viaDumpDMA(ViaCommandBuffer * buf) +viaDumpDMA(ViaCommandBuffer *cb) { - register CARD32 *bp = buf->buf; - CARD32 *endp = bp + buf->pos; + register CARD32 *bp = cb->buf; + CARD32 *endp = bp + cb->pos; while (bp != endp) { - if (((bp - buf->buf) & 3) == 0) { - ErrorF("\n %04lx: ", (unsigned long)(bp - buf->buf)); + if (((bp - cb->buf) & 3) == 0) { + ErrorF("\n %04lx: ", (unsigned long)(bp - cb->buf)); } ErrorF("0x%08x ", (unsigned)*bp++); } @@ -149,15 +149,15 @@ viaDumpDMA(ViaCommandBuffer * buf) } void -viaFlushPCI(ViaCommandBuffer * buf) +viaFlushPCI(ViaCommandBuffer *cb) { - register CARD32 *bp = buf->buf; + register CARD32 *bp = cb->buf; CARD32 transSetting; - CARD32 *endp = bp + buf->pos; + CARD32 *endp = bp + cb->pos; unsigned loop = 0; register CARD32 offset = 0; register CARD32 value; - VIAPtr pVia = VIAPTR(buf->pScrn); + VIAPtr pVia = VIAPTR(cb->pScrn); while (bp < endp) { if (*bp == HALCYON_HEADER2) { @@ -215,9 +215,9 @@ viaFlushPCI(ViaCommandBuffer * buf) ErrorF("Command stream parser error.\n"); } } - buf->pos = 0; - buf->mode = 0; - buf->has3dState = FALSE; + cb->pos = 0; + cb->mode = 0; + cb->has3dState = FALSE; } #ifdef XF86DRI @@ -227,7 +227,7 @@ viaFlushPCI(ViaCommandBuffer * buf) * the DRM command verifier will lose track of the 3D engine state. */ static void -viaFlushDRIEnabled(ViaCommandBuffer * cb) +viaFlushDRIEnabled(ViaCommandBuffer *cb) { ScrnInfoPtr pScrn = cb->pScrn; VIAPtr pVia = VIAPTR(pScrn); @@ -271,27 +271,27 @@ viaFlushDRIEnabled(ViaCommandBuffer * cb) * are intended for Unichrome Pro group A video commands. */ int -viaSetupCBuffer(ScrnInfoPtr pScrn, ViaCommandBuffer * buf, unsigned size) +viaSetupCBuffer(ScrnInfoPtr pScrn, ViaCommandBuffer *cb, unsigned size) { #ifdef XF86DRI VIAPtr pVia = VIAPTR(pScrn); #endif - buf->pScrn = pScrn; - buf->bufSize = ((size == 0) ? VIA_DMASIZE : size) >> 2; - buf->buf = (CARD32 *) calloc(buf->bufSize, sizeof(CARD32)); - if (!buf->buf) + cb->pScrn = pScrn; + cb->bufSize = ((size == 0) ? VIA_DMASIZE : size) >> 2; + cb->buf = (CARD32 *) calloc(cb->bufSize, sizeof(CARD32)); + if (!cb->buf) return BadAlloc; - buf->waitFlags = 0; - buf->pos = 0; - buf->mode = 0; - buf->header_start = 0; - buf->rindex = 0; - buf->has3dState = FALSE; - buf->flushFunc = viaFlushPCI; + cb->waitFlags = 0; + cb->pos = 0; + cb->mode = 0; + cb->header_start = 0; + cb->rindex = 0; + cb->has3dState = FALSE; + cb->flushFunc = viaFlushPCI; #ifdef XF86DRI if (pVia->directRenderingType == DRI_1) { - buf->flushFunc = viaFlushDRIEnabled; + cb->flushFunc = viaFlushDRIEnabled; } #endif return Success; @@ -301,11 +301,11 @@ viaSetupCBuffer(ScrnInfoPtr pScrn, ViaCommandBuffer * buf, unsigned size) * Free resources associated with a command buffer. */ void -viaTearDownCBuffer(ViaCommandBuffer * buf) +viaTearDownCBuffer(ViaCommandBuffer *cb) { - if (buf && buf->buf) - free(buf->buf); - buf->buf = NULL; + if (cb && cb->buf) + free(cb->buf); + cb->buf = NULL; } /* @@ -486,10 +486,10 @@ viaInitialize2DEngine(ScrnInfoPtr pScrn) case VIA_VX800: case VIA_VX855: case VIA_VX900: - pVia->TwodRegs = via_2d_regs_m1; + pVia->cb.TwodRegs = via_2d_regs_m1; break; default: - pVia->TwodRegs = via_2d_regs; + pVia->cb.TwodRegs = via_2d_regs; break; } @@ -594,7 +594,7 @@ viaPitchHelper(VIAPtr pVia, unsigned dstPitch, unsigned srcPitch) pVia->Chipset != VIA_VX900) { val |= VIA_PITCH_ENABLE; } - OUT_RING_H1(VIA_REG(pVia, PITCH), val); + OUT_RING_H1(VIA_REG(PITCH), val); } /* @@ -612,9 +612,9 @@ viaAccelClippingHelper(VIAPtr pVia, int refY) refY = (refY < tdc->clipY1) ? refY : tdc->clipY1; tdc->cmd |= VIA_GEC_CLIP_ENABLE; BEGIN_RING(4); - OUT_RING_H1(VIA_REG(pVia, CLIPTL), + OUT_RING_H1(VIA_REG(CLIPTL), ((tdc->clipY1 - refY) << 16) | tdc->clipX1); - OUT_RING_H1(VIA_REG(pVia, CLIPBR), + OUT_RING_H1(VIA_REG(CLIPBR), ((tdc->clipY2 - refY) << 16) | tdc->clipX2); } else { tdc->cmd &= ~VIA_GEC_CLIP_ENABLE; @@ -633,13 +633,13 @@ viaAccelSolidHelper(VIAPtr pVia, int x, int y, int w, int h, RING_VARS; BEGIN_RING(14); - OUT_RING_H1(VIA_REG(pVia, GEMODE), mode); - OUT_RING_H1(VIA_REG(pVia, DSTBASE), fbBase >> 3); + OUT_RING_H1(VIA_REG(GEMODE), mode); + OUT_RING_H1(VIA_REG(DSTBASE), fbBase >> 3); viaPitchHelper(pVia, pitch, 0); - OUT_RING_H1(VIA_REG(pVia, DSTPOS), (y << 16) | (x & 0xFFFF)); - OUT_RING_H1(VIA_REG(pVia, DIMENSION), ((h - 1) << 16) | (w - 1)); - OUT_RING_H1(VIA_REG(pVia, MONOPATFGC), fg); - OUT_RING_H1(VIA_REG(pVia, GECMD), cmd); + OUT_RING_H1(VIA_REG(DSTPOS), (y << 16) | (x & 0xFFFF)); + OUT_RING_H1(VIA_REG(DIMENSION), ((h - 1) << 16) | (w - 1)); + OUT_RING_H1(VIA_REG(MONOPATFGC), fg); + OUT_RING_H1(VIA_REG(GECMD), cmd); } /* @@ -695,9 +695,9 @@ viaAccelTransparentHelper(VIAPtr pVia, CARD32 keyControl, tdc->keyControl &= ((usePlaneMask) ? 0xF0000000 : 0x00000000); tdc->keyControl |= (keyControl & 0x0FFFFFFF); BEGIN_RING(4); - OUT_RING_H1(VIA_REG(pVia, KEYCONTROL), tdc->keyControl); + OUT_RING_H1(VIA_REG(KEYCONTROL), tdc->keyControl); if (keyControl) { - OUT_RING_H1(VIA_REG(pVia, SRCCOLORKEY), transColor); + OUT_RING_H1(VIA_REG(SRCCOLORKEY), transColor); } } @@ -723,14 +723,14 @@ viaAccelCopyHelper(VIAPtr pVia, int xs, int ys, int xd, int yd, } BEGIN_RING(16); - OUT_RING_H1(VIA_REG(pVia, GEMODE), mode); - OUT_RING_H1(VIA_REG(pVia, SRCBASE), srcFbBase >> 3); - OUT_RING_H1(VIA_REG(pVia, DSTBASE), dstFbBase >> 3); + OUT_RING_H1(VIA_REG(GEMODE), mode); + OUT_RING_H1(VIA_REG(SRCBASE), srcFbBase >> 3); + OUT_RING_H1(VIA_REG(DSTBASE), dstFbBase >> 3); viaPitchHelper(pVia, dstPitch, srcPitch); - OUT_RING_H1(VIA_REG(pVia, SRCPOS), (ys << 16) | (xs & 0xFFFF)); - OUT_RING_H1(VIA_REG(pVia, DSTPOS), (yd << 16) | (xd & 0xFFFF)); - OUT_RING_H1(VIA_REG(pVia, DIMENSION), ((h - 1) << 16) | (w - 1)); - OUT_RING_H1(VIA_REG(pVia, GECMD), cmd); + OUT_RING_H1(VIA_REG(SRCPOS), (ys << 16) | (xs & 0xFFFF)); + OUT_RING_H1(VIA_REG(DSTPOS), (yd << 16) | (xd & 0xFFFF)); + OUT_RING_H1(VIA_REG(DIMENSION), ((h - 1) << 16) | (w - 1)); + OUT_RING_H1(VIA_REG(GECMD), cmd); } /* @@ -754,7 +754,7 @@ viaAccelMarkSync(ScreenPtr pScreen) if (pVia->agpDMA) { BEGIN_RING(2); - OUT_RING_H1(VIA_REG(pVia, KEYCONTROL), 0x00); + OUT_RING_H1(VIA_REG(KEYCONTROL), 0x00); viaAccelSolidHelper(pVia, 0, 0, 1, 1, pVia->markerOffset, VIA_GEM_32bpp, 4, pVia->curMarker, (0xF0 << 24) | VIA_GEC_BLT | VIA_GEC_FIXCOLOR_PAT); |