summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/nouveau/nouveau_context.c
diff options
context:
space:
mode:
authorBen Skeggs <darktama@iinet.net.au>2006-12-23 10:56:19 +1100
committerBen Skeggs <darktama@iinet.net.au>2006-12-23 10:56:19 +1100
commit1dd6759c059e054a9a2279d2339a5bd8bb83f6b4 (patch)
tree7ed01f6d055cbb4bf1383e95f9788bc07a60912e /src/mesa/drivers/dri/nouveau/nouveau_context.c
parentb766643e5c3c9ed174c59b54e520f94e3420e39a (diff)
nouveau: get 16bpp working
Diffstat (limited to 'src/mesa/drivers/dri/nouveau/nouveau_context.c')
-rw-r--r--src/mesa/drivers/dri/nouveau/nouveau_context.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/nouveau/nouveau_context.c b/src/mesa/drivers/dri/nouveau/nouveau_context.c
index 22c1f58874..ac940ac595 100644
--- a/src/mesa/drivers/dri/nouveau/nouveau_context.c
+++ b/src/mesa/drivers/dri/nouveau/nouveau_context.c
@@ -319,7 +319,10 @@ static void nouveauDoSwapBuffers(nouveauContextPtr nmesa,
if (nbox) {
BEGIN_RING_SIZE(NvSubCtxSurf2D,
NV10_CONTEXT_SURFACES_2D_FORMAT, 4);
- OUT_RING (6); /* X8R8G8B8 */
+ if (src->mesa._ActualFormat == GL_RGBA8)
+ OUT_RING (6); /* X8R8G8B8 */
+ else
+ OUT_RING (4); /* R5G6B5 */
OUT_RING ((dst->pitch << 16) | src->pitch);
OUT_RING (src->offset);
OUT_RING (dst->offset);