Lines Matching defs:src

115    /* NB: blob sets format to 1 in dest/src config for clear, and the swizzle to RRRR.
153 VIVS_BLT_CONFIG_SRC_ENDIAN(op->src.endian_mode) |
155 etna_set_state(stream, VIVS_BLT_SRC_STRIDE, blt_compute_stride_bits(&op->src));
156 etna_set_state(stream, VIVS_BLT_SRC_CONFIG, blt_compute_img_config_bits(&op->src, false));
158 blt_compute_swizzle_bits(&op->src, false) |
162 if (op->src.use_ts) {
163 etna_set_state_reloc(stream, VIVS_BLT_SRC_TS, &op->src.ts_addr);
164 etna_set_state(stream, VIVS_BLT_SRC_TS_CLEAR_VALUE0, op->src.ts_clear_value[0]);
165 etna_set_state(stream, VIVS_BLT_SRC_TS_CLEAR_VALUE1, op->src.ts_clear_value[1]);
167 etna_set_state_reloc(stream, VIVS_BLT_SRC_ADDR, &op->src.addr);
373 struct etna_resource *src = etna_resource(blit_info->src.resource);
378 assert(blit_info->src.level <= src->base.last_level);
381 if (!translate_samples_to_xyscale(src->base.nr_samples, &msaa_xscale, &msaa_yscale))
389 if (blit_info->dst.box.width != blit_info->src.box.width ||
390 blit_info->dst.box.height != abs(blit_info->src.box.height)) { /* allow y flip for glTexImage2D */
392 blit_info->src.box.width, blit_info->src.box.height,
410 if (blit_info->src.format != blit_info->dst.format)
418 blit_info->dst.box.depth != blit_info->src.box.depth ||
423 struct etna_resource_level *src_lev = &src->levels[blit_info->src.level];
430 if (src == dst) {
431 assert(!memcmp(&blit_info->src, &blit_info->dst, sizeof(blit_info->src)));
437 if (src == dst && src_lev->ts_compress_fmt < 0) {
441 op.addr.bo = src->bo;
442 op.addr.offset = src_lev->offset + blit_info->src.box.z * src_lev->layer_stride;
444 op.ts_addr.bo = src->ts_bo;
445 op.ts_addr.offset = src_lev->ts_offset + blit_info->src.box.z * src_lev->ts_layer_stride;
452 op.bpp = util_format_get_blocksize(src->base.format);
461 op.src.addr.bo = src->bo;
462 op.src.addr.offset = src_lev->offset + blit_info->src.box.z * src_lev->layer_stride;
463 op.src.addr.flags = ETNA_RELOC_READ;
464 op.src.format = format;
465 op.src.stride = src_lev->stride;
466 op.src.tiling = src->layout;
468 op.src.swizzle[x] = x;
471 op.src.use_ts = 1;
472 op.src.ts_addr.bo = src->ts_bo;
473 op.src.ts_addr.offset = src_lev->ts_offset + blit_info->src.box.z * src_lev->ts_layer_stride;
474 op.src.ts_addr.flags = ETNA_RELOC_READ;
475 op.src.ts_clear_value[0] = src_lev->clear_value;
476 op.src.ts_clear_value[1] = src_lev->clear_value;
477 op.src.ts_mode = src_lev->ts_mode;
478 op.src.ts_compress_fmt = src_lev->ts_compress_fmt;
492 op.src_x = blit_info->src.box.x;
493 op.src_y = blit_info->src.box.y;
497 if (blit_info->src.box.height < 0) { /* flipped? fix up base y */
499 op.src_y += blit_info->src.box.height;
522 resource_read(ctx, &src->base);
534 if (blit_info->src.resource->nr_samples > 1 &&
536 !util_format_is_depth_or_stencil(blit_info->src.resource->format) &&
537 !util_format_is_pure_integer(blit_info->src.resource->format)) {