summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/softpipe
diff options
context:
space:
mode:
authorThomas Balling Sørensen <tball@tball-laptop.(none)>2010-10-26 13:01:40 +0200
committerThomas Balling Sørensen <tball@tball-laptop.(none)>2010-10-26 13:01:40 +0200
commit4926c5748028d33da4808f8a5473aa7b2f2bdc62 (patch)
treecc899247d6a3435ce56535cffd6a4a4190eb98d8 /src/gallium/drivers/softpipe
parentdbf3a15313eed930a3d8fdde12e457259c43651b (diff)
parent97a7cf230a70c64fff300931ae7c00aa00449c97 (diff)
Merge branch 'pipe-video' of git://anongit.freedesktop.org/~deathsimple/xvmc-r600 into pipe-video
Conflicts: configure.ac src/gallium/auxiliary/vl/vl_compositor.c src/gallium/auxiliary/vl/vl_mpeg12_mc_renderer.c src/gallium/drivers/softpipe/sp_video_context.c src/gallium/include/pipe/p_defines.h src/gallium/include/pipe/p_screen.h
Diffstat (limited to 'src/gallium/drivers/softpipe')
-rw-r--r--src/gallium/drivers/softpipe/sp_video_context.c38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/gallium/drivers/softpipe/sp_video_context.c b/src/gallium/drivers/softpipe/sp_video_context.c
index a8c1b14428f..f39c46e596c 100644
--- a/src/gallium/drivers/softpipe/sp_video_context.c
+++ b/src/gallium/drivers/softpipe/sp_video_context.c
@@ -98,8 +98,13 @@ sp_mpeg12_is_format_supported(struct pipe_video_context *vpipe,
if (geom & PIPE_TEXTURE_GEOM_NON_POWER_OF_TWO)
return FALSE;
+<<<<<<< HEAD
return ctx->pipe->screen->is_format_supported(ctx->pipe->screen, format, PIPE_TEXTURE_2D, 1,
usage, geom);
+=======
+ return ctx->pipe->screen->is_format_supported(ctx->pipe->screen, format, PIPE_TEXTURE_2D,
+ 0, usage, geom);
+>>>>>>> 97a7cf230a70c64fff300931ae7c00aa00449c97
}
static void
@@ -133,6 +138,7 @@ sp_mpeg12_clear_render_target(struct pipe_video_context *vpipe,
unsigned width, unsigned height)
{
struct sp_mpeg12_context *ctx = (struct sp_mpeg12_context*)vpipe;
+ float rgba[4] = { 0, 0, 0, 0 };
assert(vpipe);
assert(dst);
@@ -158,10 +164,27 @@ sp_mpeg12_resource_copy_region(struct pipe_video_context *vpipe,
assert(vpipe);
assert(dst);
+<<<<<<< HEAD
if (ctx->pipe->resource_copy_region)
ctx->pipe->resource_copy_region(ctx->pipe, dst, subdst, dstx, dsty, dstz, src, subsrc, srcx, srcy, srcz, width, height);
else
util_resource_copy_region(ctx->pipe, dst, subdst, dstx, dsty, dstz, src, subsrc, srcx, srcy, srcz, width, height);
+=======
+ struct pipe_subresource subdst, subsrc;
+ subdst.face = dst->face;
+ subdst.level = dst->level;
+ subsrc.face = src->face;
+ subsrc.level = src->level;
+
+ if (ctx->pipe->resource_copy_region)
+ ctx->pipe->resource_copy_region(ctx->pipe, dst->texture, subdst, dstx, dsty, dst->zslice,
+ src->texture, subsrc, srcx, srcy, src->zslice,
+ width, height);
+ else
+ util_resource_copy_region(ctx->pipe, dst->texture, subdst, dstx, dsty, dst->zslice,
+ src->texture, subsrc, srcx, srcy, src->zslice,
+ width, height);
+>>>>>>> 97a7cf230a70c64fff300931ae7c00aa00449c97
}
static struct pipe_transfer*
@@ -339,12 +362,22 @@ init_pipe_state(struct sp_mpeg12_context *ctx)
assert(ctx);
+ memset(&rast, 0, sizeof rast);
rast.flatshade = 1;
rast.flatshade_first = 0;
rast.light_twoside = 0;
+<<<<<<< HEAD
rast.cull_face = PIPE_FACE_FRONT;
rast.fill_front = PIPE_POLYGON_MODE_FILL;
rast.fill_back = PIPE_POLYGON_MODE_FILL;
+=======
+ rast.front_ccw = 1;
+ rast.cull_face = PIPE_FACE_NONE;
+ rast.fill_back = PIPE_POLYGON_MODE_FILL;
+ rast.fill_front = PIPE_POLYGON_MODE_FILL;
+ rast.offset_point = 0;
+ rast.offset_line = 0;
+>>>>>>> 97a7cf230a70c64fff300931ae7c00aa00449c97
rast.scissor = 0;
rast.poly_smooth = 0;
rast.poly_stipple_enable = 0;
@@ -367,7 +400,11 @@ init_pipe_state(struct sp_mpeg12_context *ctx)
ctx->rast = ctx->pipe->create_rasterizer_state(ctx->pipe, &rast);
ctx->pipe->bind_rasterizer_state(ctx->pipe, ctx->rast);
+<<<<<<< HEAD
+=======
+ memset(&blend, 0, sizeof blend);
+>>>>>>> 97a7cf230a70c64fff300931ae7c00aa00449c97
blend.independent_blend_enable = 0;
blend.rt[0].blend_enable = 0;
blend.rt[0].rgb_func = PIPE_BLEND_ADD;
@@ -384,6 +421,7 @@ init_pipe_state(struct sp_mpeg12_context *ctx)
ctx->blend = ctx->pipe->create_blend_state(ctx->pipe, &blend);
ctx->pipe->bind_blend_state(ctx->pipe, ctx->blend);
+ memset(&dsa, 0, sizeof dsa);
dsa.depth.enabled = 0;
dsa.depth.writemask = 0;
dsa.depth.func = PIPE_FUNC_ALWAYS;