Mesa (gallium-0.2): g3dvl: Catch up to gallium changes, fix build.

Younes Manton ymanton at kemper.freedesktop.org
Fri Feb 6 19:38:48 UTC 2009


Module: Mesa
Branch: gallium-0.2
Commit: 776d86606cd8b250802730410d5e55a41944cf0a
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=776d86606cd8b250802730410d5e55a41944cf0a

Author: Younes Manton <younes.m at gmail.com>
Date:   Fri Feb  6 14:37:35 2009 -0500

g3dvl: Catch up to gallium changes, fix build.

---

 src/gallium/state_trackers/g3dvl/vl_basic_csc.c    |   10 ++++------
 src/gallium/state_trackers/g3dvl/vl_context.c      |    2 +-
 .../state_trackers/g3dvl/vl_r16snorm_mc_buf.c      |   10 ++++------
 src/gallium/state_trackers/g3dvl/vl_surface.c      |   10 +++++-----
 src/gallium/winsys/g3dvl/nouveau/Makefile          |    4 +++-
 .../winsys/g3dvl/nouveau/nouveau_screen_vl.c       |    2 +-
 .../winsys/g3dvl/nouveau/nouveau_swapbuffers.c     |    5 +++--
 7 files changed, 21 insertions(+), 22 deletions(-)

diff --git a/src/gallium/state_trackers/g3dvl/vl_basic_csc.c b/src/gallium/state_trackers/g3dvl/vl_basic_csc.c
index 122c42e..187a13a 100644
--- a/src/gallium/state_trackers/g3dvl/vl_basic_csc.c
+++ b/src/gallium/state_trackers/g3dvl/vl_basic_csc.c
@@ -544,7 +544,7 @@ static int vlCreateDataBufs
 	 * to display a rendered surface
 	 * Quad is rendered as a tri strip
 	 */
-	csc->vertex_bufs[0].pitch = sizeof(struct vlVertex2f);
+	csc->vertex_bufs[0].stride = sizeof(struct vlVertex2f);
 	csc->vertex_bufs[0].max_index = 3;
 	csc->vertex_bufs[0].buffer_offset = 0;
 	csc->vertex_bufs[0].buffer = pipe_buffer_create
@@ -573,7 +573,7 @@ static int vlCreateDataBufs
 	 * Create our texcoord buffer and texcoord buffer element
 	 * Texcoord buffer contains the TCs for mapping the rendered surface to the 4 vertices
 	 */
-	csc->vertex_bufs[1].pitch = sizeof(struct vlVertex2f);
+	csc->vertex_bufs[1].stride = sizeof(struct vlVertex2f);
 	csc->vertex_bufs[1].max_index = 3;
 	csc->vertex_bufs[1].buffer_offset = 0;
 	csc->vertex_bufs[1].buffer = pipe_buffer_create
@@ -602,26 +602,24 @@ static int vlCreateDataBufs
 	 * Create our vertex shader's constant buffer
 	 * Const buffer contains scaling and translation vectors
 	 */
-	csc->vs_const_buf.size = sizeof(struct vlVertexShaderConsts);
 	csc->vs_const_buf.buffer = pipe_buffer_create
 	(
 		pipe->screen,
 		1,
 		PIPE_BUFFER_USAGE_CONSTANT | PIPE_BUFFER_USAGE_DISCARD,
-		csc->vs_const_buf.size
+		sizeof(struct vlVertexShaderConsts)
 	);
 
 	/*
 	 * Create our fragment shader's constant buffer
 	 * Const buffer contains the color conversion matrix and bias vectors
 	 */
-	csc->fs_const_buf.size = sizeof(struct vlFragmentShaderConsts);
 	csc->fs_const_buf.buffer = pipe_buffer_create
 	(
 		pipe->screen,
 		1,
 		PIPE_BUFFER_USAGE_CONSTANT,
-		csc->fs_const_buf.size
+		sizeof(struct vlFragmentShaderConsts)
 	);
 
 	/*
diff --git a/src/gallium/state_trackers/g3dvl/vl_context.c b/src/gallium/state_trackers/g3dvl/vl_context.c
index c4c4e23..65ddb9f 100644
--- a/src/gallium/state_trackers/g3dvl/vl_context.c
+++ b/src/gallium/state_trackers/g3dvl/vl_context.c
@@ -86,7 +86,7 @@ static int vlInitCommon(struct vlContext *context)
 	}
 	dsa.alpha.enabled = 0;
 	dsa.alpha.func = PIPE_FUNC_ALWAYS;
-	dsa.alpha.ref = 0;
+	dsa.alpha.ref_value = 0;
 	context->dsa = pipe->create_depth_stencil_alpha_state(pipe, &dsa);
 	pipe->bind_depth_stencil_alpha_state(pipe, context->dsa);
 
diff --git a/src/gallium/state_trackers/g3dvl/vl_r16snorm_mc_buf.c b/src/gallium/state_trackers/g3dvl/vl_r16snorm_mc_buf.c
index d53482f..2176bb8 100644
--- a/src/gallium/state_trackers/g3dvl/vl_r16snorm_mc_buf.c
+++ b/src/gallium/state_trackers/g3dvl/vl_r16snorm_mc_buf.c
@@ -911,7 +911,7 @@ static int vlCreateDataBufs
 	mc->macroblocks_per_picture = mbw * mbh;
 
 	/* Create our vertex buffers */
-	mc->vertex_bufs.ycbcr.pitch = sizeof(struct vlVertex2f) * 4;
+	mc->vertex_bufs.ycbcr.stride = sizeof(struct vlVertex2f) * 4;
 	mc->vertex_bufs.ycbcr.max_index = 24 * mc->macroblocks_per_picture - 1;
 	mc->vertex_bufs.ycbcr.buffer_offset = 0;
 	mc->vertex_bufs.ycbcr.buffer = pipe_buffer_create
@@ -924,7 +924,7 @@ static int vlCreateDataBufs
 
 	for (i = 1; i < 3; ++i)
 	{
-		mc->vertex_bufs.all[i].pitch = sizeof(struct vlVertex2f) * 2;
+		mc->vertex_bufs.all[i].stride = sizeof(struct vlVertex2f) * 2;
 		mc->vertex_bufs.all[i].max_index = 24 * mc->macroblocks_per_picture - 1;
 		mc->vertex_bufs.all[i].buffer_offset = 0;
 		mc->vertex_bufs.all[i].buffer = pipe_buffer_create
@@ -985,22 +985,20 @@ static int vlCreateDataBufs
 	mc->vertex_elems[7].src_format = PIPE_FORMAT_R32G32_FLOAT;
 
 	/* Create our constant buffer */
-	mc->vs_const_buf.size = sizeof(struct vlVertexShaderConsts);
 	mc->vs_const_buf.buffer = pipe_buffer_create
 	(
 		pipe->screen,
 		DEFAULT_BUF_ALIGNMENT,
 		PIPE_BUFFER_USAGE_CONSTANT | PIPE_BUFFER_USAGE_DISCARD,
-		mc->vs_const_buf.size
+		sizeof(struct vlVertexShaderConsts)
 	);
 
-	mc->fs_const_buf.size = sizeof(struct vlFragmentShaderConsts);
 	mc->fs_const_buf.buffer = pipe_buffer_create
 	(
 		pipe->screen,
 		DEFAULT_BUF_ALIGNMENT,
 		PIPE_BUFFER_USAGE_CONSTANT,
-		mc->fs_const_buf.size
+		sizeof(struct vlFragmentShaderConsts)
 	);
 
 	memcpy
diff --git a/src/gallium/state_trackers/g3dvl/vl_surface.c b/src/gallium/state_trackers/g3dvl/vl_surface.c
index 0fa7b25..92388f7 100644
--- a/src/gallium/state_trackers/g3dvl/vl_surface.c
+++ b/src/gallium/state_trackers/g3dvl/vl_surface.c
@@ -152,9 +152,9 @@ int vlPutPicture
 
 	bind_pipe_drawable(pipe, drawable);
 
-	pipe->winsys->flush_frontbuffer
+	pipe->screen->flush_frontbuffer
 	(
-		pipe->winsys,
+		pipe->screen,
 		csc->vlGetFrameBuffer(csc),
 		pipe->priv
 	);
@@ -172,13 +172,13 @@ int vlSurfaceGetStatus
 	assert(surface->context);
 	assert(status);
 
-	if (surface->render_fence && !surface->context->pipe->winsys->fence_signalled(surface->context->pipe->winsys, surface->render_fence, 0))
+	if (surface->render_fence && !surface->context->pipe->screen->fence_signalled(surface->context->pipe->screen, surface->render_fence, 0))
 	{
 		*status = vlResourceStatusRendering;
 		return 0;
 	}
 
-	if (surface->disp_fence && !surface->context->pipe->winsys->fence_signalled(surface->context->pipe->winsys, surface->disp_fence, 0))
+	if (surface->disp_fence && !surface->context->pipe->screen->fence_signalled(surface->context->pipe->screen, surface->disp_fence, 0))
 	{
 		*status = vlResourceStatusDisplaying;
 		return 0;
@@ -211,7 +211,7 @@ int vlSurfaceSync
 	assert(surface->context);
 	assert(surface->render_fence);
 
-	surface->context->pipe->winsys->fence_finish(surface->context->pipe->winsys, surface->render_fence, 0);
+	surface->context->pipe->screen->fence_finish(surface->context->pipe->screen, surface->render_fence, 0);
 
 	return 0;
 }
diff --git a/src/gallium/winsys/g3dvl/nouveau/Makefile b/src/gallium/winsys/g3dvl/nouveau/Makefile
index 22d925b..2997f6b 100644
--- a/src/gallium/winsys/g3dvl/nouveau/Makefile
+++ b/src/gallium/winsys/g3dvl/nouveau/Makefile
@@ -11,6 +11,7 @@ CFLAGS		+= -g -Wall -Werror=implicit-function-declaration -fPIC	\
 		   -I${GALLIUMDIR}/winsys/drm/nouveau			\
 		   -I${DRMDIR}/include					\
 		   -I${DRMDIR}/include/drm				\
+		   -I${DRMDIR}/include/nouveau				\
 		   -I${GALLIUMDIR}/drivers				\
 		   -I${GALLIUMDIR}/auxiliary				\
 		   -I${DRIDIR}/include
@@ -23,13 +24,14 @@ LDFLAGS		+= -L${DRMDIR}/lib				\
 		   -L${GALLIUMDIR}/auxiliary/translate		\
 		   -L${GALLIUMDIR}/auxiliary/rtasm		\
 		   -L${GALLIUMDIR}/auxiliary/cso_cache		\
+		   -L${GALLIUMDIR}/drivers/nv04			\
 		   -L${GALLIUMDIR}/drivers/nv10			\
 		   -L${GALLIUMDIR}/drivers/nv20			\
 		   -L${GALLIUMDIR}/drivers/nv30			\
 		   -L${GALLIUMDIR}/drivers/nv40			\
 		   -L${GALLIUMDIR}/drivers/nv50
 
-LIBS		+= -lnouveaudrm -ldriclient -ldrm -lnv10 -lnv20 -lnv30 -lnv40 -lnv50 -ldraw -ltgsi -ltranslate -lrtasm -lcso_cache -lm
+LIBS		+= -lnouveaudrm -ldriclient -ldrm_nouveau -ldrm -lnv04 -lnv10 -lnv20 -lnv30 -lnv40 -lnv50 -ldraw -ltgsi -ltranslate -lrtasm -lcso_cache -lm
 
 #############################################
 
diff --git a/src/gallium/winsys/g3dvl/nouveau/nouveau_screen_vl.c b/src/gallium/winsys/g3dvl/nouveau/nouveau_screen_vl.c
index 658dafd..b7c74f8 100644
--- a/src/gallium/winsys/g3dvl/nouveau/nouveau_screen_vl.c
+++ b/src/gallium/winsys/g3dvl/nouveau/nouveau_screen_vl.c
@@ -4,7 +4,7 @@
 #include <common/nouveau_dri.h>
 #include <common/nouveau_local.h>
 
-#if NOUVEAU_DRM_HEADER_PATCHLEVEL != 11
+#if NOUVEAU_DRM_HEADER_PATCHLEVEL != 12
 #error nouveau_drm.h version does not match expected version
 #endif
 
diff --git a/src/gallium/winsys/g3dvl/nouveau/nouveau_swapbuffers.c b/src/gallium/winsys/g3dvl/nouveau/nouveau_swapbuffers.c
index 16e6d55..864be37 100644
--- a/src/gallium/winsys/g3dvl/nouveau/nouveau_swapbuffers.c
+++ b/src/gallium/winsys/g3dvl/nouveau/nouveau_swapbuffers.c
@@ -9,6 +9,7 @@ nouveau_copy_buffer(dri_drawable_t *dri_drawable, struct pipe_surface *surf,
 		    const drm_clip_rect_t *rect)
 {
 	struct nouveau_context_vl	*nv = dri_drawable->private;
+	struct pipe_context		*pipe = nv->base.nvc->pctx[nv->base.pctx_id];
 	drm_clip_rect_t			*pbox;
 	int				nbox, i;
 
@@ -20,7 +21,6 @@ nouveau_copy_buffer(dri_drawable_t *dri_drawable, struct pipe_surface *surf,
 	pbox = dri_drawable->cliprects;
 	nbox = dri_drawable->num_cliprects;
 
-	nv->base.surface_copy_prep(&nv->base, nv->base.frontbuffer, surf);
 	for (i = 0; i < nbox; i++, pbox++) {
 		int sx, sy, dx, dy, w, h;
 
@@ -31,7 +31,8 @@ nouveau_copy_buffer(dri_drawable_t *dri_drawable, struct pipe_surface *surf,
 		w  = pbox->x2 - pbox->x1;
 		h  = pbox->y2 - pbox->y1;
 
-		nv->base.surface_copy(&nv->base, dx, dy, sx, sy, w, h);
+		pipe->surface_copy(pipe, FALSE, nv->base.frontbuffer,
+				   dx, dy, surf, sx, sy, w, h);
 	}
 
 	FIRE_RING(nv->base.nvc->channel);




More information about the mesa-commit mailing list