Home
last modified time | relevance | path

Searched refs:dsc_cfg (Results 1 – 25 of 32) sorted by relevance

12

/linux/drivers/gpu/drm/amd/display/dc/dsc/
A Drc_calc_dpi.c89 dsc_cfg->rc_model_size = rc->rc_model_size; in copy_rc_to_cfg()
90 dsc_cfg->rc_edge_factor = rc->rc_edge_factor; in copy_rc_to_cfg()
91 dsc_cfg->rc_tgt_offset_high = rc->rc_tgt_offset_hi; in copy_rc_to_cfg()
92 dsc_cfg->rc_tgt_offset_low = rc->rc_tgt_offset_lo; in copy_rc_to_cfg()
95 dsc_cfg->rc_buf_thresh[i] = rc->rc_buf_thresh[i]; in copy_rc_to_cfg()
103 struct drm_dsc_config dsc_cfg; in dscc_compute_dsc_parameters() local
108 copy_pps_fields(&dsc_cfg, &dsc_params->pps); in dscc_compute_dsc_parameters()
109 copy_rc_to_cfg(&dsc_cfg, rc); in dscc_compute_dsc_parameters()
113 ret = drm_dsc_compute_rc_parameters(&dsc_cfg); in dscc_compute_dsc_parameters()
115 (uint32_t)(div_u64(((uint64_t)dsc_cfg.slice_chunk_size * 0x10000000 + (dsc_cfg.slice_width - 1)), in dscc_compute_dsc_parameters()
[all …]
A Ddc_dsc.c96 timing->dsc_cfg.bits_per_pixel, in dc_bandwidth_in_kbps_from_timing()
97 timing->dsc_cfg.num_slices_h, in dc_bandwidth_in_kbps_from_timing()
98 timing->dsc_cfg.is_dp); in dc_bandwidth_in_kbps_from_timing()
183 struct dc_dsc_config *dsc_cfg);
868 struct dc_dsc_config *dsc_cfg) in setup_dsc_config() argument
906 dsc_cfg->ycbcr422_simple = false; in setup_dsc_config()
1049 dsc_cfg->num_slices_h = num_slices_h; in setup_dsc_config()
1091 dsc_cfg->bits_per_pixel = target_bpp; in setup_dsc_config()
1102 dsc_cfg->is_dp = dsc_sink_caps->is_dp; in setup_dsc_config()
1119 struct dc_dsc_config *dsc_cfg) in dc_dsc_compute_config() argument
[all …]
A Ddsc.h102 …ol (*dsc_validate_stream)(struct display_stream_compressor *dsc, const struct dsc_config *dsc_cfg);
103 void (*dsc_set_config)(struct display_stream_compressor *dsc, const struct dsc_config *dsc_cfg,
105 bool (*dsc_get_packed_pps)(struct display_stream_compressor *dsc, const struct dsc_config *dsc_cfg,
/linux/drivers/gpu/drm/amd/display/dc/dsc/dcn20/
A Ddcn20_dsc.c196 dsc_config_log(dsc, dsc_cfg); in dsc2_set_config()
215 dsc_config_log(dsc, dsc_cfg); in dsc2_get_packed_pps()
378 ASSERT(dsc_cfg->dc_dsc_cfg.version_minor == 1 || dsc_cfg->dc_dsc_cfg.version_minor == 2); in dsc_prepare_config()
379 ASSERT(dsc_cfg->pic_width); in dsc_prepare_config()
380 ASSERT(dsc_cfg->pic_height); in dsc_prepare_config()
388 if (!dsc_cfg->dc_dsc_cfg.num_slices_v || !dsc_cfg->dc_dsc_cfg.num_slices_h || in dsc_prepare_config()
389 !(dsc_cfg->dc_dsc_cfg.version_minor == 1 || dsc_cfg->dc_dsc_cfg.version_minor == 2) || in dsc_prepare_config()
390 !dsc_cfg->pic_width || !dsc_cfg->pic_height || in dsc_prepare_config()
392 8 <= dsc_cfg->dc_dsc_cfg.linebuf_depth && dsc_cfg->dc_dsc_cfg.linebuf_depth <= 13) || in dsc_prepare_config()
418 dsc_reg_vals->pps.slice_width = dsc_cfg->pic_width / dsc_cfg->dc_dsc_cfg.num_slices_h; in dsc_prepare_config()
[all …]
A Ddcn20_dsc.h575 bool dsc_prepare_config(const struct dsc_config *dsc_cfg,
599 const struct dsc_config *dsc_cfg,
603 bool dsc2_validate_stream(struct display_stream_compressor *dsc, const struct dsc_config *dsc_cfg);
604 void dsc2_set_config(struct display_stream_compressor *dsc, const struct dsc_config *dsc_cfg,
/linux/drivers/gpu/drm/display/
A Ddrm_dsc_helper.c111 dsc_cfg->dsc_version_minor | in drm_dsc_pps_payload_pack()
118 dsc_cfg->line_buf_depth | in drm_dsc_pps_payload_pack()
158 ((dsc_cfg->initial_xmit_delay & in drm_dsc_pps_payload_pack()
174 dsc_cfg->initial_scale_value; in drm_dsc_pps_payload_pack()
182 ((dsc_cfg->scale_decrement_interval & in drm_dsc_pps_payload_pack()
194 dsc_cfg->first_line_bpg_offset; in drm_dsc_pps_payload_pack()
198 cpu_to_be16(dsc_cfg->nfl_bpg_offset); in drm_dsc_pps_payload_pack()
225 dsc_cfg->rc_quant_incr_limit0; in drm_dsc_pps_payload_pack()
229 dsc_cfg->rc_quant_incr_limit1; in drm_dsc_pps_payload_pack()
238 dsc_cfg->rc_buf_thresh[i]; in drm_dsc_pps_payload_pack()
[all …]
/linux/drivers/gpu/drm/amd/display/dc/hwss/dcn314/
A Ddcn314_hwseq.c84 struct dsc_config dsc_cfg; in update_dsc_on_stream() local
91 dsc_cfg.pixel_encoding = stream->timing.pixel_encoding; in update_dsc_on_stream()
92 dsc_cfg.color_depth = stream->timing.display_color_depth; in update_dsc_on_stream()
93 dsc_cfg.is_odm = pipe_ctx->next_odm_pipe ? true : false; in update_dsc_on_stream()
94 dsc_cfg.dc_dsc_cfg = stream->timing.dsc_cfg; in update_dsc_on_stream()
95 ASSERT(dsc_cfg.dc_dsc_cfg.num_slices_h % opp_cnt == 0); in update_dsc_on_stream()
96 dsc_cfg.dc_dsc_cfg.num_slices_h /= opp_cnt; in update_dsc_on_stream()
98 dsc->funcs->dsc_set_config(dsc, &dsc_cfg, &dsc_optc_cfg); in update_dsc_on_stream()
104 odm_dsc->funcs->dsc_set_config(odm_dsc, &dsc_cfg, &dsc_optc_cfg); in update_dsc_on_stream()
107 dsc_cfg.dc_dsc_cfg.num_slices_h *= opp_cnt; in update_dsc_on_stream()
[all …]
/linux/drivers/gpu/drm/amd/display/dc/dsc/dcn401/
A Ddcn401_dsc.c20 …ol dsc401_validate_stream(struct display_stream_compressor *dsc, const struct dsc_config *dsc_cfg);
21 …tic void dsc401_set_config(struct display_stream_compressor *dsc, const struct dsc_config *dsc_cfg,
137 …ool dsc401_validate_stream(struct display_stream_compressor *dsc, const struct dsc_config *dsc_cfg) in dsc401_validate_stream() argument
142 if (dsc_cfg->pic_width > dsc401->max_image_width) in dsc401_validate_stream()
145 return dsc_prepare_config(dsc_cfg, &dsc401->reg_vals, &dsc_optc_cfg); in dsc401_validate_stream()
148 …tic void dsc401_set_config(struct display_stream_compressor *dsc, const struct dsc_config *dsc_cfg, in dsc401_set_config() argument
155 dsc_config_log(dsc, dsc_cfg); in dsc401_set_config()
156 is_config_ok = dsc_prepare_config(dsc_cfg, &dsc401->reg_vals, dsc_optc_cfg); in dsc401_set_config()
/linux/drivers/gpu/drm/amd/display/dc/link/
A Dlink_dpms.c806 struct dsc_config dsc_cfg; in link_set_dsc_on_stream() local
813 dsc_cfg.pixel_encoding = stream->timing.pixel_encoding; in link_set_dsc_on_stream()
816 dsc_cfg.dc_dsc_cfg = stream->timing.dsc_cfg; in link_set_dsc_on_stream()
817 ASSERT(dsc_cfg.dc_dsc_cfg.num_slices_h % opp_cnt == 0); in link_set_dsc_on_stream()
818 dsc_cfg.dc_dsc_cfg.num_slices_h /= opp_cnt; in link_set_dsc_on_stream()
832 dsc_cfg.dc_dsc_cfg.num_slices_h *= opp_cnt; in link_set_dsc_on_stream()
833 dsc_cfg.pic_width *= opp_cnt; in link_set_dsc_on_stream()
935 struct dsc_config dsc_cfg; in link_set_dsc_pps_packet() local
938 memset(&dsc_cfg, 0, sizeof(dsc_cfg)); in link_set_dsc_pps_packet()
944 dsc_cfg.pixel_encoding = stream->timing.pixel_encoding; in link_set_dsc_pps_packet()
[all …]
A Dlink_validation.c128 if (timing->flags.DSC && !timing->dsc_cfg.is_frl) in dp_active_dongle_validate_timing()
/linux/drivers/gpu/drm/amd/display/dc/core/
A Ddc_stream.c112 memset(&stream->timing.dsc_cfg, 0, sizeof(stream->timing.dsc_cfg)); in dc_stream_construct()
113 stream->timing.dsc_cfg.num_slices_h = 0; in dc_stream_construct()
114 stream->timing.dsc_cfg.num_slices_v = 0; in dc_stream_construct()
115 stream->timing.dsc_cfg.bits_per_pixel = 128; in dc_stream_construct()
116 stream->timing.dsc_cfg.block_pred_enable = 1; in dc_stream_construct()
117 stream->timing.dsc_cfg.linebuf_depth = 9; in dc_stream_construct()
118 stream->timing.dsc_cfg.version_minor = 2; in dc_stream_construct()
119 stream->timing.dsc_cfg.ycbcr422_simple = 0; in dc_stream_construct()
835 stream->timing.dsc_cfg.mst_pbn); in dc_stream_log()
/linux/drivers/gpu/drm/amd/display/dc/hwss/dcn35/
A Ddcn35_hwseq.c334 struct dsc_config dsc_cfg; in update_dsc_on_stream() local
354 dsc_cfg.pixel_encoding = stream->timing.pixel_encoding; in update_dsc_on_stream()
355 dsc_cfg.color_depth = stream->timing.display_color_depth; in update_dsc_on_stream()
356 dsc_cfg.is_odm = pipe_ctx->next_odm_pipe ? true : false; in update_dsc_on_stream()
357 dsc_cfg.dc_dsc_cfg = stream->timing.dsc_cfg; in update_dsc_on_stream()
358 ASSERT(dsc_cfg.dc_dsc_cfg.num_slices_h % opp_cnt == 0); in update_dsc_on_stream()
359 dsc_cfg.dc_dsc_cfg.num_slices_h /= opp_cnt; in update_dsc_on_stream()
361 dsc->funcs->dsc_set_config(dsc, &dsc_cfg, &dsc_optc_cfg); in update_dsc_on_stream()
367 odm_dsc->funcs->dsc_set_config(odm_dsc, &dsc_cfg, &dsc_optc_cfg); in update_dsc_on_stream()
370 dsc_cfg.dc_dsc_cfg.num_slices_h *= opp_cnt; in update_dsc_on_stream()
[all …]
/linux/include/drm/display/
A Ddrm_dsc_helper.h25 const struct drm_dsc_config *dsc_cfg);
/linux/drivers/gpu/drm/amd/display/dc/hwss/dcn32/
A Ddcn32_hwseq.c1032 struct dsc_config dsc_cfg; in dcn32_update_dsc_on_stream() local
1051dsc_cfg.pic_width = (stream->timing.h_addressable + stream->timing.h_border_left + stream->timing.… in dcn32_update_dsc_on_stream()
1052dsc_cfg.pic_height = stream->timing.v_addressable + stream->timing.v_border_top + stream->timing.v… in dcn32_update_dsc_on_stream()
1053 dsc_cfg.pixel_encoding = stream->timing.pixel_encoding; in dcn32_update_dsc_on_stream()
1054 dsc_cfg.color_depth = stream->timing.display_color_depth; in dcn32_update_dsc_on_stream()
1055 dsc_cfg.is_odm = pipe_ctx->next_odm_pipe ? true : false; in dcn32_update_dsc_on_stream()
1056 dsc_cfg.dc_dsc_cfg = stream->timing.dsc_cfg; in dcn32_update_dsc_on_stream()
1057 ASSERT(dsc_cfg.dc_dsc_cfg.num_slices_h % opp_cnt == 0); in dcn32_update_dsc_on_stream()
1058 dsc_cfg.dc_dsc_cfg.num_slices_h /= opp_cnt; in dcn32_update_dsc_on_stream()
1062 dsc->funcs->dsc_set_config(dsc, &dsc_cfg, &dsc_optc_cfg); in dcn32_update_dsc_on_stream()
[all …]
/linux/drivers/gpu/drm/amd/display/amdgpu_dm/
A Damdgpu_dm_mst_types.c846 memset(&params[i].timing->dsc_cfg, 0, sizeof(params[i].timing->dsc_cfg)); in set_dsc_configs_from_fairness_vars()
854 &params[i].timing->dsc_cfg)) { in set_dsc_configs_from_fairness_vars()
858 params[i].timing->dsc_cfg.bits_per_pixel = params[i].bpp_overwrite; in set_dsc_configs_from_fairness_vars()
860 params[i].timing->dsc_cfg.bits_per_pixel = vars[i + k].bpp_x16; in set_dsc_configs_from_fairness_vars()
863 params[i].timing->dsc_cfg.num_slices_h = params[i].num_slices_h; in set_dsc_configs_from_fairness_vars()
866 params[i].timing->dsc_cfg.num_slices_v = params[i].num_slices_v; in set_dsc_configs_from_fairness_vars()
870 params[i].timing->dsc_cfg.mst_pbn = vars[i + k].pbn; in set_dsc_configs_from_fairness_vars()
883 params[i].timing->dsc_cfg.bits_per_pixel, in set_dsc_configs_from_fairness_vars()
1840 &stream->timing.dsc_cfg)) { in dm_dp_mst_is_port_support_mode()
/linux/drivers/gpu/drm/amd/display/dc/
A Ddc_dsc.h87 struct dc_dsc_config *dsc_cfg);
A Ddc_hw_types.h977 struct dc_dsc_config dsc_cfg; member
/linux/drivers/gpu/drm/amd/display/dc/resource/dcn20/
A Ddcn20_resource.c1680 struct dsc_config dsc_cfg; in dcn20_validate_dsc() local
1691 dsc_cfg.pic_width = (stream->timing.h_addressable + stream->timing.h_border_left in dcn20_validate_dsc()
1693 dsc_cfg.pic_height = stream->timing.v_addressable + stream->timing.v_border_top in dcn20_validate_dsc()
1695 dsc_cfg.pixel_encoding = stream->timing.pixel_encoding; in dcn20_validate_dsc()
1696 dsc_cfg.color_depth = stream->timing.display_color_depth; in dcn20_validate_dsc()
1697 dsc_cfg.is_odm = pipe_ctx->next_odm_pipe ? true : false; in dcn20_validate_dsc()
1698 dsc_cfg.dc_dsc_cfg = stream->timing.dsc_cfg; in dcn20_validate_dsc()
1699 dsc_cfg.dc_dsc_cfg.num_slices_h /= opp_cnt; in dcn20_validate_dsc()
1701 if (!pipe_ctx->stream_res.dsc->funcs->dsc_validate_stream(pipe_ctx->stream_res.dsc, &dsc_cfg)) in dcn20_validate_dsc()
/linux/drivers/gpu/drm/amd/display/dc/dio/dcn401/
A Ddcn401_dio_stream_encoder.c259 && !timing->dsc_cfg.ycbcr422_simple); in is_two_pixels_per_containter()
545 if (hw_crtc_timing.dsc_cfg.ycbcr422_simple) in enc401_stream_encoder_dp_set_stream_attribute()
/linux/drivers/gpu/drm/amd/display/modules/power/
A Dpower_helpers.c955 !stream->timing.dsc_cfg.num_slices_v) in psr_su_set_dsc_slice_height()
961 if (stream->timing.dsc_cfg.num_slices_v == 0) in psr_su_set_dsc_slice_height()
964 slice_height = pic_height / stream->timing.dsc_cfg.num_slices_v; in psr_su_set_dsc_slice_height()
/linux/drivers/gpu/drm/amd/display/dc/dio/dcn314/
A Ddcn314_dio_stream_encoder.c273 && !timing->dsc_cfg.ycbcr422_simple); in is_two_pixels_per_containter()
/linux/drivers/gpu/drm/amd/display/dc/dio/dcn32/
A Ddcn32_dio_stream_encoder.c240 && !timing->dsc_cfg.ycbcr422_simple); in is_two_pixels_per_containter()
/linux/drivers/gpu/drm/amd/display/dc/dio/dcn35/
A Ddcn35_dio_stream_encoder.c272 && !timing->dsc_cfg.ycbcr422_simple); in is_two_pixels_per_containter()
/linux/drivers/gpu/drm/amd/display/dc/dio/dcn20/
A Ddcn20_stream_encoder.c464 && !timing->dsc_cfg.ycbcr422_simple); in is_two_pixels_per_containter()
/linux/drivers/gpu/drm/amd/display/dc/dml2/dml21/
A Ddml21_translation_helper.c387 timing->dsc.overrides.num_slices = stream->timing.dsc_cfg.num_slices_h; in populate_dml21_timing_config_from_stream_state()
388 timing->dsc.dsc_compressed_bpp_x16 = stream->timing.dsc_cfg.bits_per_pixel; in populate_dml21_timing_config_from_stream_state()
458 if (stream->timing.flags.DSC && !stream->timing.dsc_cfg.ycbcr422_simple) in populate_dml21_output_config_from_stream_state()

Completed in 77 milliseconds

12