gallium: split depth_clip into depth_clip_near & depth_clip_far
[mesa.git] / src / gallium / state_trackers / xa / xa_renderer.c
index fda07e5b68e7d40f175127f16aa6156f8e245f99..d87a14e80880cc154a6175d296042f97018ce0a2 100644 (file)
@@ -121,7 +121,8 @@ renderer_init_state(struct xa_context *r)
     memset(&raster, 0, sizeof(struct pipe_rasterizer_state));
     raster.half_pixel_center = 1;
     raster.bottom_edge_rule = 1;
-    raster.depth_clip = 1;
+    raster.depth_clip_near = 1;
+    raster.depth_clip_far = 1;
     raster.scissor = 1;
     cso_set_rasterizer(r->cso, &raster);
 
@@ -393,9 +394,10 @@ renderer_set_constants(struct xa_context *r,
        &r->fs_const_buffer;
 
     pipe_resource_reference(cbuf, NULL);
-    *cbuf = pipe_buffer_create(r->pipe->screen,
-                              PIPE_BIND_CONSTANT_BUFFER, PIPE_USAGE_DEFAULT,
-                              param_bytes);
+    *cbuf = pipe_buffer_create_const0(r->pipe->screen,
+                                      PIPE_BIND_CONSTANT_BUFFER,
+                                      PIPE_USAGE_DEFAULT,
+                                      param_bytes);
 
     if (*cbuf) {
        pipe_buffer_write(r->pipe, *cbuf, 0, param_bytes, params);
@@ -416,7 +418,7 @@ renderer_copy_prepare(struct xa_context *r,
     uint32_t fs_traits = FS_COMPOSITE;
 
     assert(screen->is_format_supported(screen, dst_surface->format,
-                                      PIPE_TEXTURE_2D, 0,
+                                      PIPE_TEXTURE_2D, 0, 0,
                                       PIPE_BIND_RENDER_TARGET));
     (void)screen;
 
@@ -465,9 +467,11 @@ renderer_copy_prepare(struct xa_context *r,
     }
 
     /* shaders */
-    if (src_texture->format == PIPE_FORMAT_L8_UNORM)
+    if (src_texture->format == PIPE_FORMAT_L8_UNORM ||
+        src_texture->format == PIPE_FORMAT_R8_UNORM)
        fs_traits |= FS_SRC_LUMINANCE;
-    if (dst_surface->format == PIPE_FORMAT_L8_UNORM)
+    if (dst_surface->format == PIPE_FORMAT_L8_UNORM ||
+        dst_surface->format == PIPE_FORMAT_R8_UNORM)
        fs_traits |= FS_DST_LUMINANCE;
     if (xa_format_a(dst_xa_format) != 0 &&
        xa_format_a(src_xa_format) == 0)