Lines Matching refs:dsc_reg_vals

208 	struct dsc_reg_values dsc_reg_vals;  in dsc2_get_packed_pps()  local
211 memset(&dsc_reg_vals, 0, sizeof(dsc_reg_vals)); in dsc2_get_packed_pps()
217 is_config_ok = dsc_prepare_config(dsc_cfg, &dsc_reg_vals, &dsc_optc_cfg); in dsc2_get_packed_pps()
219 …drm_dsc_pps_payload_pack((struct drm_dsc_picture_parameter_set *)dsc_packed_pps, &dsc_reg_vals.pps… in dsc2_get_packed_pps()
220 dsc_log_pps(dsc, &dsc_reg_vals.pps); in dsc2_get_packed_pps()
366 bool dsc_prepare_config(const struct dsc_config *dsc_cfg, struct dsc_reg_values *dsc_reg_vals, in dsc_prepare_config() argument
398 dsc_init_reg_values(dsc_reg_vals); in dsc_prepare_config()
401dsc_reg_vals->pixel_format = dsc_dc_pixel_encoding_to_dsc_pixel_format(dsc_cfg->pixel_encoding, ds… in dsc_prepare_config()
402 dsc_reg_vals->num_slices_h = dsc_cfg->dc_dsc_cfg.num_slices_h; in dsc_prepare_config()
403 dsc_reg_vals->num_slices_v = dsc_cfg->dc_dsc_cfg.num_slices_v; in dsc_prepare_config()
404 dsc_reg_vals->pps.dsc_version_minor = dsc_cfg->dc_dsc_cfg.version_minor; in dsc_prepare_config()
405 dsc_reg_vals->pps.pic_width = dsc_cfg->pic_width; in dsc_prepare_config()
406 dsc_reg_vals->pps.pic_height = dsc_cfg->pic_height; in dsc_prepare_config()
407dsc_reg_vals->pps.bits_per_component = dsc_dc_color_depth_to_dsc_bits_per_comp(dsc_cfg->color_dept… in dsc_prepare_config()
408 dsc_reg_vals->pps.block_pred_enable = dsc_cfg->dc_dsc_cfg.block_pred_enable; in dsc_prepare_config()
409 dsc_reg_vals->pps.line_buf_depth = dsc_cfg->dc_dsc_cfg.linebuf_depth; in dsc_prepare_config()
410 dsc_reg_vals->alternate_ich_encoding_en = dsc_reg_vals->pps.dsc_version_minor == 1 ? 0 : 1; in dsc_prepare_config()
411 dsc_reg_vals->ich_reset_at_eol = (dsc_cfg->is_odm || dsc_reg_vals->num_slices_h > 1) ? 0xF : 0; in dsc_prepare_config()
415 dsc_reg_vals->pps.slice_width = dsc_cfg->pic_width / dsc_cfg->dc_dsc_cfg.num_slices_h; in dsc_prepare_config()
416 dsc_reg_vals->pps.slice_height = dsc_cfg->pic_height / dsc_cfg->dc_dsc_cfg.num_slices_v; in dsc_prepare_config()
418 ASSERT(dsc_reg_vals->pps.slice_height * dsc_cfg->dc_dsc_cfg.num_slices_v == dsc_cfg->pic_height); in dsc_prepare_config()
419 if (!(dsc_reg_vals->pps.slice_height * dsc_cfg->dc_dsc_cfg.num_slices_v == dsc_cfg->pic_height)) { in dsc_prepare_config()
424 dsc_reg_vals->bpp_x32 = dsc_cfg->dc_dsc_cfg.bits_per_pixel << 1; in dsc_prepare_config()
425 …if (dsc_reg_vals->pixel_format == DSC_PIXFMT_NATIVE_YCBCR420 || dsc_reg_vals->pixel_format == DSC_… in dsc_prepare_config()
426 dsc_reg_vals->pps.bits_per_pixel = dsc_reg_vals->bpp_x32; in dsc_prepare_config()
428 dsc_reg_vals->pps.bits_per_pixel = dsc_reg_vals->bpp_x32 >> 1; in dsc_prepare_config()
430 dsc_reg_vals->pps.convert_rgb = dsc_reg_vals->pixel_format == DSC_PIXFMT_RGB ? 1 : 0; in dsc_prepare_config()
431 dsc_reg_vals->pps.native_422 = (dsc_reg_vals->pixel_format == DSC_PIXFMT_NATIVE_YCBCR422); in dsc_prepare_config()
432 dsc_reg_vals->pps.native_420 = (dsc_reg_vals->pixel_format == DSC_PIXFMT_NATIVE_YCBCR420); in dsc_prepare_config()
433 dsc_reg_vals->pps.simple_422 = (dsc_reg_vals->pixel_format == DSC_PIXFMT_SIMPLE_YCBCR422); in dsc_prepare_config()
435 calc_rc_params(&rc, &dsc_reg_vals->pps); in dsc_prepare_config()
440 if (dscc_compute_dsc_parameters(&dsc_reg_vals->pps, &rc, &dsc_params)) { in dsc_prepare_config()
445 dsc_update_from_dsc_parameters(dsc_reg_vals, &dsc_params); in dsc_prepare_config()
448 dsc_optc_cfg->slice_width = dsc_reg_vals->pps.slice_width; in dsc_prepare_config()
449 dsc_optc_cfg->is_pixel_format_444 = dsc_reg_vals->pixel_format == DSC_PIXFMT_RGB || in dsc_prepare_config()
450 dsc_reg_vals->pixel_format == DSC_PIXFMT_YCBCR444 || in dsc_prepare_config()
451 dsc_reg_vals->pixel_format == DSC_PIXFMT_SIMPLE_YCBCR422; in dsc_prepare_config()