}
#endif
-static void
-panvk_draw_prepare_tiler_context(struct panvk_cmd_buffer *cmdbuf,
- struct panvk_draw_info *draw)
+void
+panvk_per_arch(cmd_prepare_tiler_context)(struct panvk_cmd_buffer *cmdbuf)
{
- struct panvk_batch *batch = cmdbuf->state.batch;
+ const struct pan_fb_info *fbinfo = &cmdbuf->state.fb.info;
#if PAN_ARCH == 5
panvk_per_arch(cmd_get_polygon_list)(cmdbuf,
- batch->fb.info->width,
- batch->fb.info->height,
+ fbinfo->width,
+ fbinfo->height,
true);
#else
panvk_per_arch(cmd_get_tiler_context)(cmdbuf,
- batch->fb.info->width,
- batch->fb.info->height);
+ fbinfo->width,
+ fbinfo->height);
#endif
+}
+
+static void
+panvk_draw_prepare_tiler_context(struct panvk_cmd_buffer *cmdbuf,
+ struct panvk_draw_info *draw)
+{
+ struct panvk_batch *batch = cmdbuf->state.batch;
+ panvk_per_arch(cmd_prepare_tiler_context)(cmdbuf);
draw->tiler_ctx = &batch->tiler.ctx;
}
panvk_per_arch(cmd_alloc_fb_desc)(cmdbuf);
panvk_per_arch(cmd_alloc_tls_desc)(cmdbuf, true);
-
-#if PAN_ARCH <= 5
- panvk_per_arch(cmd_get_polygon_list)(cmdbuf,
- batch->fb.info->width,
- batch->fb.info->height,
- true);
-#else
- panvk_per_arch(cmd_get_tiler_context)(cmdbuf,
- batch->fb.info->width,
- batch->fb.info->height);
-#endif
+ panvk_per_arch(cmd_prepare_tiler_context)(cmdbuf);
mali_ptr vpd =
panvk_per_arch(meta_emit_viewport)(&cmdbuf->desc_pool.base,