• Home
  • Raw
  • Download

Lines Matching full:info

51 vc4_tile_blit(struct pipe_context *pctx, const struct pipe_blit_info *info)  in vc4_tile_blit()  argument
54 bool msaa = (info->src.resource->nr_samples > 1 || in vc4_tile_blit()
55 info->dst.resource->nr_samples > 1); in vc4_tile_blit()
59 if (util_format_is_depth_or_stencil(info->dst.resource->format)) in vc4_tile_blit()
62 if (info->scissor_enable) in vc4_tile_blit()
65 if ((info->mask & PIPE_MASK_RGBA) == 0) in vc4_tile_blit()
68 if (info->dst.box.x != info->src.box.x || in vc4_tile_blit()
69 info->dst.box.y != info->src.box.y || in vc4_tile_blit()
70 info->dst.box.width != info->src.box.width || in vc4_tile_blit()
71 info->dst.box.height != info->src.box.height) { in vc4_tile_blit()
75 int dst_surface_width = u_minify(info->dst.resource->width0, in vc4_tile_blit()
76 info->dst.level); in vc4_tile_blit()
77 int dst_surface_height = u_minify(info->dst.resource->height0, in vc4_tile_blit()
78 info->dst.level); in vc4_tile_blit()
79 if (is_tile_unaligned(info->dst.box.x, tile_width) || in vc4_tile_blit()
80 is_tile_unaligned(info->dst.box.y, tile_height) || in vc4_tile_blit()
81 (is_tile_unaligned(info->dst.box.width, tile_width) && in vc4_tile_blit()
82 info->dst.box.x + info->dst.box.width != dst_surface_width) || in vc4_tile_blit()
83 (is_tile_unaligned(info->dst.box.height, tile_height) && in vc4_tile_blit()
84 info->dst.box.y + info->dst.box.height != dst_surface_height)) { in vc4_tile_blit()
97 struct vc4_resource *rsc = vc4_resource(info->src.resource); in vc4_tile_blit()
101 if (info->src.resource->nr_samples > 1) in vc4_tile_blit()
103 else if (rsc->slices[info->src.level].tiling == VC4_TILING_FORMAT_T) in vc4_tile_blit()
108 if (stride != rsc->slices[info->src.level].stride) in vc4_tile_blit()
111 if (info->dst.resource->format != info->src.resource->format) in vc4_tile_blit()
116 info->src.box.x, in vc4_tile_blit()
117 info->src.box.y, in vc4_tile_blit()
118 info->dst.box.x, in vc4_tile_blit()
119 info->dst.box.y, in vc4_tile_blit()
120 info->dst.box.width, in vc4_tile_blit()
121 info->dst.box.height); in vc4_tile_blit()
125 vc4_get_blit_surface(pctx, info->dst.resource, info->dst.level); in vc4_tile_blit()
127 vc4_get_blit_surface(pctx, info->src.resource, info->src.level); in vc4_tile_blit()
129 vc4_flush_jobs_reading_resource(vc4, info->src.resource); in vc4_tile_blit()
137 if (!job->msaa && info->src.resource->nr_samples > 1) { in vc4_tile_blit()
143 job->draw_min_x = info->dst.box.x; in vc4_tile_blit()
144 job->draw_min_y = info->dst.box.y; in vc4_tile_blit()
145 job->draw_max_x = info->dst.box.x + info->dst.box.width; in vc4_tile_blit()
146 job->draw_max_y = info->dst.box.y + info->dst.box.height; in vc4_tile_blit()
187 vc4_render_blit(struct pipe_context *ctx, struct pipe_blit_info *info) in vc4_render_blit() argument
191 if (!util_blitter_is_blit_supported(vc4->blitter, info)) { in vc4_render_blit()
193 util_format_short_name(info->src.resource->format), in vc4_render_blit()
194 util_format_short_name(info->dst.resource->format)); in vc4_render_blit()
199 if (!info->scissor_enable) { in vc4_render_blit()
200 info->scissor_enable = true; in vc4_render_blit()
201 info->scissor.minx = info->dst.box.x; in vc4_render_blit()
202 info->scissor.miny = info->dst.box.y; in vc4_render_blit()
203 info->scissor.maxx = info->dst.box.x + info->dst.box.width; in vc4_render_blit()
204 info->scissor.maxy = info->dst.box.y + info->dst.box.height; in vc4_render_blit()
208 util_blitter_blit(vc4->blitter, info); in vc4_render_blit()
219 struct pipe_blit_info info = *blit_info; in vc4_blit() local
224 if (info.mask & PIPE_MASK_S) { in vc4_blit()
225 if (util_try_blit_via_copy_region(pctx, &info)) in vc4_blit()
228 info.mask &= ~PIPE_MASK_S; in vc4_blit()
232 if (vc4_render_blit(pctx, &info)) in vc4_blit()