Lines Matching defs:layout

103         } else if (desc->layout == UTIL_FORMAT_LAYOUT_ASTC) {
177 iview->image->layout.nr_samples,
239 panfrost_get_surface_strides(const struct pan_image_layout *layout,
243 const struct pan_image_slice_layout *slice = &layout->slices[l];
245 if (drm_is_afbc(layout->modifier)) {
257 assert(pan_is_stride_aligned(layout->format, *row_stride));
261 assert(pan_is_stride_aligned(layout->format, *surf_stride));
265 panfrost_get_surface_pointer(const struct pan_image_layout *layout,
273 if (layout->dim == MALI_TEXTURE_DIMENSION_3D) {
275 offset = layout->slices[l].offset +
276 (w * panfrost_get_layer_stride(layout, l));
278 offset = panfrost_texture_offset(layout, l, (w * face_mult) + f, s);
373 panfrost_emit_plane(const struct pan_image_layout *layout,
380 util_format_description(layout->format);
384 panfrost_get_surface_strides(layout, level, &row_stride, &surface_stride);
387 bool afbc = drm_is_afbc(layout->modifier);
392 cfg.size = layout->data_size - layout->slices[level].offset;
394 cfg.slice_stride = layout->nr_samples ?
395 layout->slices[level].surface_stride :
396 panfrost_get_layer_stride(layout, level);
398 if (desc->layout == UTIL_FORMAT_LAYOUT_ASTC) {
427 cfg.afbc.superblock_size = translate_superblock_size(layout->modifier);
428 cfg.afbc.ytr = (layout->modifier & AFBC_FORMAT_MOD_YTR);
429 cfg.afbc.tiled_header = (layout->modifier & AFBC_FORMAT_MOD_TILED);
432 cfg.afbc.header_stride = layout->slices[level].afbc.header_size;
438 if (!afbc && layout->modifier == DRM_FORMAT_MOD_ARM_16X16_BLOCK_U_INTERLEAVED)
451 const struct pan_image_layout *layout = &iview->image->layout;
465 base |= panfrost_compression_tag(desc, layout->dim, layout->modifier);
468 assert(PAN_ARCH >= 5 || !drm_is_afbc(layout->modifier));
469 assert(PAN_ARCH >= 5 || desc->layout != UTIL_FORMAT_LAYOUT_ASTC);
478 unsigned nr_samples = PAN_ARCH <= 7 ? layout->nr_samples : 1;
494 panfrost_get_surface_pointer(layout, iview->dim, base,
499 panfrost_emit_plane(layout, format, pointer, iter.level, payload);
504 panfrost_get_surface_strides(layout, iter.level,
544 const struct pan_image_layout *layout = &iview->image->layout;
582 assert(layout->nr_samples == 1);
583 assert(layout->height == 1 && layout->depth == 1);
584 assert(iview->buf.offset + iview->buf.size <= layout->width);
587 width = u_minify(layout->width, iview->first_level);
594 cfg.height = u_minify(layout->height, iview->first_level);
596 cfg.depth = u_minify(layout->depth, iview->first_level);
598 cfg.sample_count = layout->nr_samples;
602 (layout->modifier != DRM_FORMAT_MOD_LINEAR) ||
606 panfrost_modifier_to_layout(layout->modifier);