Lines Matching refs:cfg

266         pan_pack(zs_crc_ext, ZS_CRC_EXTENSION, cfg) {
267 pan_prepare_crc(fb, rt_crc, &cfg);
268 cfg.zs_clean_pixel_write_enable = fb->zs.clear.z || fb->zs.clear.s;
269 pan_prepare_zs(fb, &cfg);
270 pan_prepare_s(fb, &cfg);
348 struct MALI_RENDER_TARGET *cfg)
364 cfg->srgb = true;
369 cfg->internal_format = fmt.internal;
370 cfg->writeback_format = fmt.writeback;
381 cfg->internal_format =
384 cfg->writeback_format = pan_mfbd_raw_format(bits);
387 cfg->swizzle = panfrost_translate_swizzle_4(swizzle);
393 struct MALI_RENDER_TARGET *cfg)
395 cfg->clean_pixel_write_enable = fb->rts[idx].clear;
396 cfg->internal_buffer_offset = cbuf_offset;
398 cfg->clear.color_0 = fb->rts[idx].clear_value[0];
399 cfg->clear.color_1 = fb->rts[idx].clear_value[1];
400 cfg->clear.color_2 = fb->rts[idx].clear_value[2];
401 cfg->clear.color_3 = fb->rts[idx].clear_value[3];
406 cfg->internal_format = MALI_COLOR_BUFFER_INTERNAL_FORMAT_R8G8B8A8;
407 cfg->internal_buffer_offset = cbuf_offset;
409 cfg->writeback_block_format = MALI_BLOCK_FORMAT_TILED_U_INTERLEAVED;
410 cfg->dithering_enable = true;
415 cfg->write_enable = true;
416 cfg->dithering_enable = true;
430 cfg->writeback_msaa = mali_sampling_mode(rt);
432 pan_rt_init_format(rt, cfg);
435 cfg->writeback_block_format = mod_to_block_fmt(rt->image->layout.modifier);
437 cfg->writeback_block_format = mod_to_block_fmt(rt->image->layout.modifier);
447 cfg->afbc.row_stride = slice->afbc.row_stride /
449 cfg->afbc.afbc_wide_block_enable =
452 cfg->afbc.chunk_size = 9;
453 cfg->afbc.sparse = true;
454 cfg->afbc.body_size = slice->afbc.body_size;
457 cfg->afbc.header = surf.afbc.header;
458 cfg->afbc.body = surf.afbc.body;
461 cfg->afbc.yuv_transform_enable = true;
465 cfg->rgb.base = surf.data;
466 cfg->rgb.row_stride = row_stride;
467 cfg->rgb.surface_stride = layer_stride;
476 pan_pack(out, LOCAL_STORAGE, cfg) {
481 cfg.tls_size = shift;
482 cfg.tls_base_pointer = info->tls.ptr;
488 cfg.wls_base_pointer = info->wls.ptr;
490 cfg.wls_instances = pan_wls_instances(&info->wls.dim);
491 cfg.wls_size_scale = util_logbase2(wls_size) + 1;
493 cfg.wls_instances = MALI_LOCAL_STORAGE_NO_WORKGROUP_MEM;
509 pan_pack(out, TILER_CONTEXT, cfg) {
513 cfg.hierarchy_mask =
518 cfg.polygon_list_size = header_size + (hierarchy ? 0 : 4);
519 cfg.heap_start = tiler_ctx->midgard.polygon_list->ptr.gpu;
520 cfg.heap_end = tiler_ctx->midgard.polygon_list->ptr.gpu;
522 cfg.hierarchy_mask =
528 cfg.hierarchy_mask,
530 cfg.polygon_list_size =
532 cfg.hierarchy_mask,
534 cfg.heap_start = dev->tiler_heap->ptr.gpu;
535 cfg.heap_end = dev->tiler_heap->ptr.gpu + dev->tiler_heap->size;
538 cfg.polygon_list = tiler_ctx->midgard.polygon_list->ptr.gpu;
539 cfg.polygon_list_body = cfg.polygon_list + header_size;
549 pan_pack(out, RENDER_TARGET, cfg) {
550 pan_prepare_rt(fb, idx, cbuf_offset, &cfg);
637 pan_section_pack(fbd, FRAMEBUFFER, PARAMETERS, cfg) {
641 cfg.sample_locations =
643 cfg.pre_frame_0 = pan_fix_frame_shader_mode(fb->bifrost.pre_post.modes[0], force_clean_write);
644 cfg.pre_frame_1 = pan_fix_frame_shader_mode(fb->bifrost.pre_post.modes[1], force_clean_write);
645 cfg.post_frame = pan_fix_frame_shader_mode(fb->bifrost.pre_post.modes[2], force_clean_write);
646 cfg.frame_shader_dcds = fb->bifrost.pre_post.dcds.gpu;
647 cfg.tiler = tiler_ctx->bifrost;
649 cfg.width = fb->width;
650 cfg.height = fb->height;
651 cfg.bound_max_x = fb->width - 1;
652 cfg.bound_max_y = fb->height - 1;
654 cfg.effective_tile_size = tile_size;
655 cfg.tie_break_rule = MALI_TIE_BREAK_RULE_MINUS_180_IN_0_OUT;
656 cfg.render_target_count = MAX2(fb->rt_count, 1);
659 cfg.z_internal_format =
664 cfg.z_clear = fb->zs.clear_value.depth;
665 cfg.s_clear = fb->zs.clear_value.stencil;
666 cfg.color_buffer_allocation = internal_cbuf_size;
667 cfg.sample_count = fb->nr_samples;
668 cfg.sample_pattern = pan_sample_pattern(fb->nr_samples);
669 cfg.z_write_enable = (fb->zs.view.zs && !fb->zs.discard.z);
670 cfg.s_write_enable = (fb->zs.view.s && !fb->zs.discard.s);
671 cfg.has_zs_crc_extension = has_zs_crc_ext;
679 cfg.crc_read_enable = *valid;
684 cfg.crc_write_enable = *valid || full;
750 pan_section_pack(fbd, FRAMEBUFFER, PARAMETERS, cfg) {
751 cfg.bound_max_x = fb->width - 1;
752 cfg.bound_max_y = fb->height - 1;
753 cfg.dithering_enable = true;
754 cfg.clean_pixel_write_enable = true;
755 cfg.tie_break_rule = MALI_TIE_BREAK_RULE_MINUS_180_IN_0_OUT;
757 cfg.clear_color_0 = fb->rts[0].clear_value[0];
758 cfg.clear_color_1 = fb->rts[0].clear_value[1];
759 cfg.clear_color_2 = fb->rts[0].clear_value[2];
760 cfg.clear_color_3 = fb->rts[0].clear_value[3];
764 cfg.z_clear = fb->zs.clear_value.depth;
767 cfg.s_clear = fb->zs.clear_value.stencil;
778 cfg.swizzle = panfrost_translate_swizzle_4(swizzle);
782 cfg.internal_format = fmt.internal;
783 cfg.color_writeback_format = fmt.writeback;
793 cfg.color_write_enable = !fb->rts[0].discard;
794 cfg.color_writeback.base = surf.data;
795 cfg.color_writeback.row_stride =
798 cfg.color_block_format = mod_to_block_fmt(rt->image->layout.modifier);
799 assert(cfg.color_block_format == MALI_BLOCK_FORMAT_LINEAR ||
800 cfg.color_block_format == MALI_BLOCK_FORMAT_TILED_U_INTERLEAVED);
806 cfg.crc_buffer.row_stride = slice->crc.stride;
808 cfg.crc_buffer.base = rt->image->data.bo->ptr.gpu +
812 cfg.crc_buffer.base = rt->image->crc.bo->ptr.gpu +
826 cfg.zs_write_enable = !fb->zs.discard.z;
827 cfg.zs_writeback.base = surf.data;
828 cfg.zs_writeback.row_stride =
830 cfg.zs_block_format = mod_to_block_fmt(zs->image->layout.modifier);
831 assert(cfg.zs_block_format == MALI_BLOCK_FORMAT_LINEAR ||
832 cfg.zs_block_format == MALI_BLOCK_FORMAT_TILED_U_INTERLEAVED);
834 cfg.zs_format = translate_zs_format(zs->format);
837 cfg.sample_count = fb->nr_samples;
840 cfg.msaa = mali_sampling_mode(fb->rts[0].view);