summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcin Koƛcielnicki <koriakin@0x04.net>2009-12-28 16:11:51 +0000
committerFrancisco Jerez <currojerez@riseup.net>2009-12-28 18:06:05 +0100
commit920a346e14cdc40efe9e89c3583d8e573e7e2f87 (patch)
tree83d33ada54c20bc521ce7ad0cb851c63034b6497
parent7c72ac1f47e19af97c997f57012e3af12f941894 (diff)
nv50: Dehexify and bring up to date with new method defines.
Signed-off-by: Francisco Jerez <currojerez@riseup.net>
-rw-r--r--src/nouveau_exa.c20
-rw-r--r--src/nouveau_xv.c4
-rw-r--r--src/nv50_accel.c37
-rw-r--r--src/nv50_exa.c18
-rw-r--r--src/nv50_xv.c12
-rw-r--r--src/nv_accel_common.c8
6 files changed, 49 insertions, 50 deletions
diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
index 165484b..5707add 100644
--- a/src/nouveau_exa.c
+++ b/src/nouveau_exa.c
@@ -82,7 +82,7 @@ NVAccelDownloadM2MF(PixmapPtr pspix, int x, int y, int w, int h,
if (MARK_RING(chan, 32, 6))
return FALSE;
- BEGIN_RING(chan, m2mf, 0x184, 2);
+ BEGIN_RING(chan, m2mf, NV04_MEMORY_TO_MEMORY_FORMAT_DMA_BUFFER_IN, 2);
if (OUT_RELOCo(chan, bo, NOUVEAU_BO_GART | NOUVEAU_BO_VRAM |
NOUVEAU_BO_RD) ||
OUT_RELOCo(chan, pNv->GART, NOUVEAU_BO_GART |
@@ -93,7 +93,7 @@ NVAccelDownloadM2MF(PixmapPtr pspix, int x, int y, int w, int h,
if (pNv->Architecture >= NV_ARCH_50) {
if (!linear) {
- BEGIN_RING(chan, m2mf, 0x0200, 7);
+ BEGIN_RING(chan, m2mf, NV50_MEMORY_TO_MEMORY_FORMAT_LINEAR_IN, 7);
OUT_RING (chan, 0);
OUT_RING (chan, bo->tile_mode << 4);
OUT_RING (chan, pspix->drawable.width * cpp);
@@ -102,14 +102,14 @@ NVAccelDownloadM2MF(PixmapPtr pspix, int x, int y, int w, int h,
OUT_RING (chan, 0);
OUT_RING (chan, (y << 16) | (x * cpp));
} else {
- BEGIN_RING(chan, m2mf, 0x0200, 1);
+ BEGIN_RING(chan, m2mf, NV50_MEMORY_TO_MEMORY_FORMAT_LINEAR_IN, 1);
OUT_RING (chan, 1);
}
- BEGIN_RING(chan, m2mf, 0x021c, 1);
+ BEGIN_RING(chan, m2mf, NV50_MEMORY_TO_MEMORY_FORMAT_LINEAR_OUT, 1);
OUT_RING (chan, 1);
- BEGIN_RING(chan, m2mf, 0x238, 2);
+ BEGIN_RING(chan, m2mf, NV50_MEMORY_TO_MEMORY_FORMAT_OFFSET_IN_HIGH, 2);
if (OUT_RELOCh(chan, bo, src_offset, NOUVEAU_BO_GART |
NOUVEAU_BO_VRAM | NOUVEAU_BO_RD) ||
OUT_RELOCh(chan, pNv->GART, 0, NOUVEAU_BO_GART |
@@ -217,7 +217,7 @@ NVAccelUploadM2MF(PixmapPtr pdpix, int x, int y, int w, int h,
if (MARK_RING(chan, 32, 6))
return FALSE;
- BEGIN_RING(chan, m2mf, 0x184, 2);
+ BEGIN_RING(chan, m2mf, NV04_MEMORY_TO_MEMORY_FORMAT_DMA_BUFFER_IN, 2);
if (OUT_RELOCo(chan, pNv->GART, NOUVEAU_BO_GART |
NOUVEAU_BO_RD) ||
OUT_RELOCo(chan, bo, NOUVEAU_BO_VRAM | NOUVEAU_BO_GART |
@@ -227,11 +227,11 @@ NVAccelUploadM2MF(PixmapPtr pdpix, int x, int y, int w, int h,
}
if (pNv->Architecture >= NV_ARCH_50) {
- BEGIN_RING(chan, m2mf, 0x0200, 1);
+ BEGIN_RING(chan, m2mf, NV50_MEMORY_TO_MEMORY_FORMAT_LINEAR_IN, 1);
OUT_RING (chan, 1);
if (!linear) {
- BEGIN_RING(chan, m2mf, 0x021c, 7);
+ BEGIN_RING(chan, m2mf, NV50_MEMORY_TO_MEMORY_FORMAT_LINEAR_OUT, 7);
OUT_RING (chan, 0);
OUT_RING (chan, bo->tile_mode << 4);
OUT_RING (chan, pdpix->drawable.width * cpp);
@@ -240,11 +240,11 @@ NVAccelUploadM2MF(PixmapPtr pdpix, int x, int y, int w, int h,
OUT_RING (chan, 0);
OUT_RING (chan, (y << 16) | (x * cpp));
} else {
- BEGIN_RING(chan, m2mf, 0x021c, 1);
+ BEGIN_RING(chan, m2mf, NV50_MEMORY_TO_MEMORY_FORMAT_LINEAR_OUT, 1);
OUT_RING (chan, 1);
}
- BEGIN_RING(chan, m2mf, 0x0238, 2);
+ BEGIN_RING(chan, m2mf, NV50_MEMORY_TO_MEMORY_FORMAT_OFFSET_IN_HIGH, 2);
if (OUT_RELOCh(chan, pNv->GART, 0, NOUVEAU_BO_GART |
NOUVEAU_BO_RD) ||
OUT_RELOCh(chan, bo, dst_offset, NOUVEAU_BO_VRAM |
diff --git a/src/nouveau_xv.c b/src/nouveau_xv.c
index 33b3bd4..ee72848 100644
--- a/src/nouveau_xv.c
+++ b/src/nouveau_xv.c
@@ -1109,10 +1109,10 @@ NVPutImage(ScrnInfoPtr pScrn, short src_x, short src_y, short drw_x,
OUT_RING (chan, pNv->chan->vram->handle);
if (pNv->Architecture >= NV_ARCH_50) {
- BEGIN_RING(chan, m2mf, 0x0200, 1);
+ BEGIN_RING(chan, m2mf, NV50_MEMORY_TO_MEMORY_FORMAT_LINEAR_IN, 1);
OUT_RING (chan, 1);
- BEGIN_RING(chan, m2mf, 0x021c, 7);
+ BEGIN_RING(chan, m2mf, NV50_MEMORY_TO_MEMORY_FORMAT_LINEAR_OUT, 7);
OUT_RING (chan, 0);
OUT_RING (chan, destination_buffer->tile_mode << 4);
OUT_RING (chan, dstPitch);
diff --git a/src/nv50_accel.c b/src/nv50_accel.c
index b3b1584..4804c77 100644
--- a/src/nv50_accel.c
+++ b/src/nv50_accel.c
@@ -34,21 +34,21 @@ NVAccelInitNV50TCL(ScrnInfoPtr pScrn)
switch (pNv->NVArch & 0xf0) {
case 0x50:
- class = 0x5097;
+ class = NV50TCL;
break;
case 0x80:
case 0x90:
- class = 0x8297;
+ class = NV84TCL;
break;
case 0xa0:
switch (pNv->NVArch) {
case 0xa0:
case 0xaa:
case 0xac:
- class = 0x8397;
+ class = NVA0TCL;
break;
default:
- class = 0x8597;
+ class = NVA8TCL;
break;
}
break;
@@ -93,17 +93,17 @@ NVAccelInitNV50TCL(ScrnInfoPtr pScrn)
BEGIN_RING(chan, nvsw, 0x0400, 1);
OUT_RING (chan, 0);
- BEGIN_RING(chan, tesla, 0x1558, 1);
- OUT_RING (chan, 1);
+ BEGIN_RING(chan, tesla, NV50TCL_COND_MODE, 1);
+ OUT_RING (chan, NV50TCL_COND_MODE_ALWAYS);
BEGIN_RING(chan, tesla, NV50TCL_DMA_NOTIFY, 1);
OUT_RING (chan, chan->nullobj->handle);
- BEGIN_RING(chan, tesla, NV50TCL_DMA_UNK0(0), NV50TCL_DMA_UNK0__SIZE);
- for (i = 0; i < NV50TCL_DMA_UNK0__SIZE; i++)
+ BEGIN_RING(chan, tesla, NV50TCL_DMA_ZETA, 11);
+ for (i = 0; i < 11; i++)
OUT_RING (chan, pNv->chan->vram->handle);
- BEGIN_RING(chan, tesla, NV50TCL_DMA_UNK1(0), NV50TCL_DMA_UNK1__SIZE);
- for (i = 0; i < NV50TCL_DMA_UNK1__SIZE; i++)
+ BEGIN_RING(chan, tesla, NV50TCL_DMA_COLOR(0), NV50TCL_DMA_COLOR__SIZE);
+ for (i = 0; i < NV50TCL_DMA_COLOR__SIZE; i++)
OUT_RING (chan, pNv->chan->vram->handle);
- BEGIN_RING(chan, tesla, 0x121c, 1);
+ BEGIN_RING(chan, tesla, NV50TCL_RT_CONTROL, 1);
OUT_RING (chan, 1);
BEGIN_RING(chan, tesla, NV50TCL_VIEWPORT_TRANSFORM_EN, 1);
@@ -111,11 +111,10 @@ NVAccelInitNV50TCL(ScrnInfoPtr pScrn)
BEGIN_RING(chan, tesla, 0x0f90, 1);
OUT_RING (chan, 1);
- BEGIN_RING(chan, tesla, 0x1234, 1);
+ BEGIN_RING(chan, tesla, NV50TCL_LINKED_TSC, 1);
OUT_RING (chan, 1);
- /*XXX: NFI - gets the oddball 0x1458 method working "properly" */
- BEGIN_RING(chan, tesla, 0x13bc, 1);
+ BEGIN_RING(chan, tesla, NV50TCL_TEX_LIMITS(2), 1);
OUT_RING (chan, 0x54);
BEGIN_RING(chan, tesla, NV50TCL_CB_DEF_ADDRESS_HIGH, 3);
@@ -368,19 +367,19 @@ NVAccelInitNV50TCL(ScrnInfoPtr pScrn)
OUT_RING (chan, 0x08040404);
OUT_RING (chan, 0x00000008); /* NV50TCL_FP_REG_ALLOC_TEMP */
- BEGIN_RING(chan, tesla, NV50TCL_SCISSOR_ENABLE, 1);
+ BEGIN_RING(chan, tesla, NV50TCL_SCISSOR_ENABLE(0), 1);
OUT_RING (chan, 1);
- BEGIN_RING(chan, tesla, NV50TCL_VIEWPORT_HORIZ, 2);
+ BEGIN_RING(chan, tesla, NV50TCL_VIEWPORT_HORIZ(0), 2);
OUT_RING (chan, 8192 << NV50TCL_VIEWPORT_HORIZ_W_SHIFT);
OUT_RING (chan, 8192 << NV50TCL_VIEWPORT_VERT_H_SHIFT);
/* NV50TCL_SCISSOR_VERT_T_SHIFT is wrong, because it was deducted with
* origin lying at the bottom left. This will be changed to _MIN_ and _MAX_
* later, because it is origin dependent.
*/
- BEGIN_RING(chan, tesla, NV50TCL_SCISSOR_HORIZ, 2);
- OUT_RING (chan, 8192 << NV50TCL_SCISSOR_HORIZ_R_SHIFT);
- OUT_RING (chan, 8192 << NV50TCL_SCISSOR_VERT_T_SHIFT);
+ BEGIN_RING(chan, tesla, NV50TCL_SCISSOR_HORIZ(0), 2);
+ OUT_RING (chan, 8192 << NV50TCL_SCISSOR_HORIZ_MAX_SHIFT);
+ OUT_RING (chan, 8192 << NV50TCL_SCISSOR_VERT_MAX_SHIFT);
BEGIN_RING(chan, tesla, NV50TCL_SCREEN_SCISSOR_HORIZ, 2);
OUT_RING (chan, 8192 << NV50TCL_SCREEN_SCISSOR_HORIZ_W_SHIFT);
OUT_RING (chan, 8192 << NV50TCL_SCREEN_SCISSOR_VERT_H_SHIFT);
diff --git a/src/nv50_exa.c b/src/nv50_exa.c
index c7609b3..1f5a4ac 100644
--- a/src/nv50_exa.c
+++ b/src/nv50_exa.c
@@ -79,7 +79,7 @@ NV50EXA2DSurfaceFormat(PixmapPtr ppix, uint32_t *fmt)
switch (ppix->drawable.depth) {
case 8 : *fmt = NV50_2D_SRC_FORMAT_R8_UNORM; break;
- case 15: *fmt = NV50_2D_SRC_FORMAT_X1B5G5R5_UNORM; break;
+ case 15: *fmt = NV50_2D_SRC_FORMAT_X1R5G5B5_UNORM; break;
case 16: *fmt = NV50_2D_SRC_FORMAT_R5G6B5_UNORM; break;
case 24: *fmt = NV50_2D_SRC_FORMAT_X8R8G8B8_UNORM; break;
case 30: *fmt = NV50_2D_SRC_FORMAT_A2B10G10R10_UNORM; break;
@@ -240,8 +240,8 @@ NV50EXAPrepareSolid(PixmapPtr pdpix, int alu, Pixel planemask, Pixel fg)
NV50EXASetROP(pdpix, alu, planemask);
- BEGIN_RING(chan, eng2d, 0x580, 3);
- OUT_RING (chan, 4);
+ BEGIN_RING(chan, eng2d, NV50_2D_DRAW_SHAPE, 3);
+ OUT_RING (chan, NV50_2D_DRAW_SHAPE_RECTANGLES);
OUT_RING (chan, fmt);
OUT_RING (chan, fg);
@@ -259,7 +259,7 @@ NV50EXASolid(PixmapPtr pdpix, int x1, int y1, int x2, int y2)
NV50EXA_LOCALS(pdpix);
WAIT_RING (chan, 5);
- BEGIN_RING(chan, eng2d, NV50_2D_RECT_X1, 4);
+ BEGIN_RING(chan, eng2d, NV50_2D_DRAW_POINT32_X(0), 4);
OUT_RING (chan, x1);
OUT_RING (chan, y1);
OUT_RING (chan, x2);
@@ -391,7 +391,7 @@ NV50EXAUploadSIFC(const char *src, int src_pitch,
BEGIN_RING(chan, eng2d, NV50_2D_OPERATION, 1);
OUT_RING (chan, NV50_2D_OPERATION_SRCCOPY);
- BEGIN_RING(chan, eng2d, NV50_2D_SIFC_UNK0800, 2);
+ BEGIN_RING(chan, eng2d, NV50_2D_SIFC_BITMAP_ENABLE, 2);
OUT_RING (chan, 0);
OUT_RING (chan, sifc_fmt);
BEGIN_RING(chan, eng2d, NV50_2D_SIFC_WIDTH, 10);
@@ -491,7 +491,7 @@ NV50EXARenderTarget(PixmapPtr ppix, PicturePtr ppict)
BEGIN_RING(chan, tesla, NV50TCL_RT_HORIZ(0), 2);
OUT_RING (chan, ppix->drawable.width);
OUT_RING (chan, ppix->drawable.height);
- BEGIN_RING(chan, tesla, 0x1224, 1);
+ BEGIN_RING(chan, tesla, NV50TCL_RT_ARRAY_MODE, 1);
OUT_RING (chan, 0x00000001);
return TRUE;
@@ -861,9 +861,9 @@ NV50EXAPrepareComposite(int op,
BEGIN_RING(chan, tesla, 0x1334, 1);
OUT_RING (chan, 0);
- BEGIN_RING(chan, tesla, 0x1458, 1);
+ BEGIN_RING(chan, tesla, NV50TCL_BIND_TIC(2), 1);
OUT_RING (chan, 1);
- BEGIN_RING(chan, tesla, 0x1458, 1);
+ BEGIN_RING(chan, tesla, NV50TCL_BIND_TIC(2), 1);
OUT_RING (chan, 0x203);
pNv->alu = op;
@@ -906,7 +906,7 @@ NV50EXAComposite(PixmapPtr pdpix, int sx, int sy, int mx, int my,
float sX0, sX1, sX2, sY0, sY1, sY2;
WAIT_RING (chan, 64);
- BEGIN_RING(chan, tesla, NV50TCL_SCISSOR_HORIZ, 2);
+ BEGIN_RING(chan, tesla, NV50TCL_SCISSOR_HORIZ(0), 2);
OUT_RING (chan, (dx + w) << 16 | dx);
OUT_RING (chan, (dy + h) << 16 | dy);
BEGIN_RING(chan, tesla, NV50TCL_VERTEX_BEGIN, 1);
diff --git a/src/nv50_xv.c b/src/nv50_xv.c
index daf1a41..b0eccfd 100644
--- a/src/nv50_xv.c
+++ b/src/nv50_xv.c
@@ -88,7 +88,7 @@ nv50_xv_state_emit(PixmapPtr ppix, int id, struct nouveau_bo *src,
BEGIN_RING(chan, tesla, NV50TCL_RT_HORIZ(0), 2);
OUT_RING (chan, ppix->drawable.width);
OUT_RING (chan, ppix->drawable.height);
- BEGIN_RING(chan, tesla, 0x1224, 1);
+ BEGIN_RING(chan, tesla, NV50TCL_RT_ARRAY_MODE, 1);
OUT_RING (chan, 1);
BEGIN_RING(chan, tesla, NV50TCL_BLEND_ENABLE(0), 1);
@@ -247,9 +247,9 @@ nv50_xv_state_emit(PixmapPtr ppix, int id, struct nouveau_bo *src,
BEGIN_RING(chan, tesla, 0x1334, 1);
OUT_RING (chan, 0);
- BEGIN_RING(chan, tesla, 0x1458, 1);
+ BEGIN_RING(chan, tesla, NV50TCL_BIND_TIC(2), 1);
OUT_RING (chan, 1);
- BEGIN_RING(chan, tesla, 0x1458, 1);
+ BEGIN_RING(chan, tesla, NV50TCL_BIND_TIC(2), 1);
OUT_RING (chan, 0x203);
return TRUE;
@@ -342,9 +342,9 @@ nv50_xv_image_put(ScrnInfoPtr pScrn,
* origin lying at the bottom left. This will be changed to _MIN_ and _MAX_
* later, because it is origin dependent.
*/
- BEGIN_RING(chan, tesla, NV50TCL_SCISSOR_HORIZ, 2);
- OUT_RING (chan, sx2 << NV50TCL_SCISSOR_HORIZ_R_SHIFT | sx1);
- OUT_RING (chan, sy2 << NV50TCL_SCISSOR_VERT_T_SHIFT | sy1 );
+ BEGIN_RING(chan, tesla, NV50TCL_SCISSOR_HORIZ(0), 2);
+ OUT_RING (chan, sx2 << NV50TCL_SCISSOR_HORIZ_MAX_SHIFT | sx1);
+ OUT_RING (chan, sy2 << NV50TCL_SCISSOR_VERT_MAX_SHIFT | sy1 );
BEGIN_RING(chan, tesla, NV50TCL_VERTEX_BEGIN, 1);
OUT_RING (chan, NV50TCL_VERTEX_BEGIN_TRIANGLES);
diff --git a/src/nv_accel_common.c b/src/nv_accel_common.c
index 3c8911e..05fdeb9 100644
--- a/src/nv_accel_common.c
+++ b/src/nv_accel_common.c
@@ -452,12 +452,12 @@ NVAccelInit2D_NV50(ScrnInfoPtr pScrn)
struct nouveau_grobj *eng2d;
if (!pNv->Nv2D) {
- if (nouveau_grobj_alloc(chan, Nv2D, 0x502d, &pNv->Nv2D))
+ if (nouveau_grobj_alloc(chan, Nv2D, NV50_2D, &pNv->Nv2D))
return FALSE;
}
eng2d = pNv->Nv2D;
- BEGIN_RING(chan, eng2d, 0x180, 3);
+ BEGIN_RING(chan, eng2d, NV50_2D_DMA_NOTIFY, 3);
OUT_RING (chan, pNv->notify0->handle);
OUT_RING (chan, pNv->chan->vram->handle);
OUT_RING (chan, pNv->chan->vram->handle);
@@ -467,9 +467,9 @@ NVAccelInit2D_NV50(ScrnInfoPtr pScrn)
*/
BEGIN_RING(chan, eng2d, 0x260, 1);
OUT_RING (chan, 1);
- BEGIN_RING(chan, eng2d, 0x290, 1);
+ BEGIN_RING(chan, eng2d, NV50_2D_CLIP_ENABLE, 1);
OUT_RING (chan, 1);
- BEGIN_RING(chan, eng2d, 0x29c, 1);
+ BEGIN_RING(chan, eng2d, NV50_2D_COLOR_KEY_ENABLE, 1);
OUT_RING (chan, 0);
BEGIN_RING(chan, eng2d, 0x58c, 1);
OUT_RING (chan, 0x111);