summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/nvfx/nvfx_screen.c
diff options
context:
space:
mode:
authorLuca Barbieri <luca@luca-barbieri.com>2010-02-23 11:06:31 +0100
committerLuca Barbieri <luca@luca-barbieri.com>2010-04-12 12:13:15 +0200
commite0af5c9b5457d560ab075118881de01e0277ed14 (patch)
treeb3ffc3090c9b2b6a211bc663c6d24f9741195a44 /src/gallium/drivers/nvfx/nvfx_screen.c
parent507dc546c3da415036521fcf91e76af88c2cbf69 (diff)
nouveau: bind the 3D engine to subchannel 7 and add RING_3D
RING_3D creates a method start for subchannel 7. Bind the 3D engine to a fixed subchannel to make it work This is much faster than the old BEGIN_RING, since we don't need to waste cycles trying to "autobind" stuff, when a fast static binding is perfectly good. Subchannel 7 is chosen because the kernel takes up the lowest ones.
Diffstat (limited to 'src/gallium/drivers/nvfx/nvfx_screen.c')
-rw-r--r--src/gallium/drivers/nvfx/nvfx_screen.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gallium/drivers/nvfx/nvfx_screen.c b/src/gallium/drivers/nvfx/nvfx_screen.c
index 1f6e6e3497..e63e1abcea 100644
--- a/src/gallium/drivers/nvfx/nvfx_screen.c
+++ b/src/gallium/drivers/nvfx/nvfx_screen.c
@@ -418,6 +418,8 @@ nvfx_screen_create(struct pipe_winsys *ws, struct nouveau_device *dev)
return NULL;
}
+ BIND_RING(chan, screen->eng3d, 7);
+
/* Static eng3d initialisation */
/* make the so big and don't worry about exact values
since we it will be thrown away immediately after use */