+static inline struct tu_draw_state
+tu_cs_draw_state(struct tu_cs *sub_cs, struct tu_cs *cs, uint32_t size)
+{
+ struct tu_cs_memory memory;
+
+ /* TODO: clean this up */
+ tu_cs_alloc(sub_cs, size, 1, &memory);
+ tu_cs_init_external(cs, memory.map, memory.map + size);
+ tu_cs_begin(cs);
+ tu_cs_reserve_space(cs, size);
+
+ return (struct tu_draw_state) {
+ .iova = memory.iova,
+ .size = size,
+ };
+}
+