#define __PAN_CMDSTREAM_H__
#include "pipe/p_defines.h"
+#include "pipe/p_state.h"
#include "panfrost-job.h"
#include "pan_job.h"
+void panfrost_sampler_desc_init(const struct pipe_sampler_state *cso,
+ struct mali_sampler_descriptor *hw);
+
+void
+panfrost_vt_attach_framebuffer(struct panfrost_context *ctx,
+ struct midgard_payload_vertex_tiler *vt);
+
+void
+panfrost_vt_update_rasterizer(struct panfrost_context *ctx,
+ struct midgard_payload_vertex_tiler *tp);
+
+void
+panfrost_vt_update_occlusion_query(struct panfrost_context *ctx,
+ struct midgard_payload_vertex_tiler *tp);
+
+void
+panfrost_vt_set_draw_info(struct panfrost_context *ctx,
+ const struct pipe_draw_info *info,
+ enum mali_draw_mode draw_mode,
+ struct midgard_payload_vertex_tiler *vp,
+ struct midgard_payload_vertex_tiler *tp,
+ unsigned *vertex_count,
+ unsigned *padded_count);
+
+void
+panfrost_emit_shader_meta(struct panfrost_batch *batch,
+ enum pipe_shader_type st,
+ struct midgard_payload_vertex_tiler *vtp);
+
void
panfrost_emit_viewport(struct panfrost_batch *batch,
struct midgard_payload_vertex_tiler *tp);
enum pipe_shader_type stage,
struct midgard_payload_vertex_tiler *vtp);
+void
+panfrost_emit_shared_memory(struct panfrost_batch *batch,
+ const struct pipe_grid_info *info,
+ struct midgard_payload_vertex_tiler *vtp);
+
+void
+panfrost_emit_texture_descriptors(struct panfrost_batch *batch,
+ enum pipe_shader_type stage,
+ struct midgard_payload_vertex_tiler *vtp);
+
+void
+panfrost_emit_sampler_descriptors(struct panfrost_batch *batch,
+ enum pipe_shader_type stage,
+ struct midgard_payload_vertex_tiler *vtp);
+
+void
+panfrost_emit_vertex_attr_meta(struct panfrost_batch *batch,
+ struct midgard_payload_vertex_tiler *vp);
+
+void
+panfrost_emit_vertex_tiler_jobs(struct panfrost_batch *batch,
+ struct midgard_payload_vertex_tiler *vp,
+ struct midgard_payload_vertex_tiler *tp);
+
#endif /* __PAN_CMDSTREAM_H__ */