LIMA_CONTEXT_DIRTY_STENCIL_REF = (1 << 12),
LIMA_CONTEXT_DIRTY_CONST_BUFF = (1 << 13),
LIMA_CONTEXT_DIRTY_TEXTURES = (1 << 14),
+ LIMA_CONTEXT_DIRTY_CLIP = (1 << 15),
} dirty;
struct u_upload_mgr *uploader;
struct pipe_blend_color blend_color;
struct lima_blend_state *blend;
struct pipe_stencil_ref stencil_ref;
+ struct pipe_clip_state clip;
struct lima_context_constant_buffer const_buffer[PIPE_SHADER_TYPES];
struct lima_texture_stateobj tex_stateobj;
struct lima_pp_stream_state pp_stream;
}
static void
+lima_set_clip_state(struct pipe_context *pctx,
+ const struct pipe_clip_state *clip)
+{
+ struct lima_context *ctx = lima_context(pctx);
+ ctx->clip = *clip;
+
+ ctx->dirty |= LIMA_CONTEXT_DIRTY_CLIP;
+}
+
+static void
lima_set_constant_buffer(struct pipe_context *pctx,
enum pipe_shader_type shader, uint index,
const struct pipe_constant_buffer *cb)
ctx->base.set_scissor_states = lima_set_scissor_states;
ctx->base.set_blend_color = lima_set_blend_color;
ctx->base.set_stencil_ref = lima_set_stencil_ref;
+ ctx->base.set_clip_state = lima_set_clip_state;
ctx->base.set_vertex_buffers = lima_set_vertex_buffers;
ctx->base.set_constant_buffer = lima_set_constant_buffer;