Lines Matching refs:surf
269 etna_rs_gen_clear_surface(struct etna_context *ctx, struct etna_surface *surf, in etna_rs_gen_clear_surface() argument
273 struct etna_resource *dst = etna_resource(surf->base.texture); in etna_rs_gen_clear_surface()
276 switch (util_format_get_blocksizebits(surf->base.format)) { in etna_rs_gen_clear_surface()
293 bool tiled_clear = (surf->surf.padded_width & ETNA_RS_WIDTH_MASK) == 0 && in etna_rs_gen_clear_surface()
294 (surf->surf.padded_height & ETNA_RS_HEIGHT_MASK) == 0; in etna_rs_gen_clear_surface()
296 etna_compile_rs_state( ctx, &surf->clear_command, &(struct rs_state) { in etna_rs_gen_clear_surface()
300 .dest_offset = surf->surf.offset, in etna_rs_gen_clear_surface()
301 .dest_stride = surf->surf.stride, in etna_rs_gen_clear_surface()
302 .dest_padded_height = surf->surf.padded_height, in etna_rs_gen_clear_surface()
305 ….width = surf->surf.padded_width, /* These must be padded to 16x4 if !LINEAR, otherwise RS will ha… in etna_rs_gen_clear_surface()
306 .height = surf->surf.padded_height, in etna_rs_gen_clear_surface()
318 struct etna_surface *surf = etna_surface(dst); in etna_blit_clear_color_rs() local
319 uint64_t new_clear_value = etna_clear_blit_pack_rgba(surf->base.format, color); in etna_blit_clear_color_rs()
321 if (surf->surf.ts_size) { /* TS: use precompiled clear command */ in etna_blit_clear_color_rs()
328 surf->surf.padded_width * surf->surf.padded_height / 16); in etna_blit_clear_color_rs()
332 surf->level->ts_valid = true; in etna_blit_clear_color_rs()
334 …} else if (unlikely(new_clear_value != surf->level->clear_value)) { /* Queue normal RS clear for n… in etna_blit_clear_color_rs()
336 etna_rs_gen_clear_surface(ctx, surf, new_clear_value); in etna_blit_clear_color_rs()
339 etna_submit_rs_state(ctx, &surf->clear_command); in etna_blit_clear_color_rs()
341 surf->level->clear_value = new_clear_value; in etna_blit_clear_color_rs()
342 resource_written(ctx, surf->base.texture); in etna_blit_clear_color_rs()
343 etna_resource(surf->base.texture)->seqno++; in etna_blit_clear_color_rs()
351 struct etna_surface *surf = etna_surface(dst); in etna_blit_clear_zs_rs() local
352 uint32_t new_clear_value = translate_clear_depth_stencil(surf->base.format, depth, stencil); in etna_blit_clear_zs_rs()
356 switch (surf->base.format) { in etna_blit_clear_zs_rs()
381 if (surf->surf.ts_size) { /* TS: use precompiled clear command */ in etna_blit_clear_zs_rs()
387 surf->surf.padded_width * surf->surf.padded_height / 16); in etna_blit_clear_zs_rs()
391 surf->level->ts_valid = true; in etna_blit_clear_zs_rs()
394 …if (unlikely(new_clear_value != surf->level->clear_value)) { /* Queue normal RS clear for non-TS s… in etna_blit_clear_zs_rs()
396 etna_rs_gen_clear_surface(ctx, surf, new_clear_value); in etna_blit_clear_zs_rs()
399 etna_modify_rs_clearbits(&surf->clear_command, new_clear_bits); in etna_blit_clear_zs_rs()
402 etna_submit_rs_state(ctx, &surf->clear_command); in etna_blit_clear_zs_rs()
404 surf->level->clear_value = new_clear_value; in etna_blit_clear_zs_rs()
405 resource_written(ctx, surf->base.texture); in etna_blit_clear_zs_rs()
406 etna_resource(surf->base.texture)->seqno++; in etna_blit_clear_zs_rs()
426 struct etna_surface *surf = etna_surface(ctx->framebuffer_s.cbufs[0]); in etna_clear_rs() local
427 if (surf->surf.ts_size) in etna_clear_rs()
431 struct etna_surface *surf = etna_surface(ctx->framebuffer_s.zsbuf); in etna_clear_rs() local
433 if (surf->surf.ts_size) in etna_clear_rs()