/Linux-v6.6/drivers/gpu/drm/amd/display/dc/dcn201/ |
D | dcn201_dpp.c | 185 struct scaler_data *scl_data, in dpp201_get_optimal_number_of_taps() argument 188 if (scl_data->viewport.width != scl_data->h_active && in dpp201_get_optimal_number_of_taps() 189 scl_data->viewport.height != scl_data->v_active && in dpp201_get_optimal_number_of_taps() 191 scl_data->format == PIXEL_FORMAT_FP16) in dpp201_get_optimal_number_of_taps() 194 if (scl_data->viewport.width > scl_data->h_active && in dpp201_get_optimal_number_of_taps() 196 scl_data->viewport.width > dpp->ctx->dc->debug.max_downscale_src_width) in dpp201_get_optimal_number_of_taps() 199 if (scl_data->ratios.horz.value == (8ll << 32)) in dpp201_get_optimal_number_of_taps() 200 scl_data->ratios.horz.value--; in dpp201_get_optimal_number_of_taps() 201 if (scl_data->ratios.vert.value == (8ll << 32)) in dpp201_get_optimal_number_of_taps() 202 scl_data->ratios.vert.value--; in dpp201_get_optimal_number_of_taps() [all …]
|
D | dcn201_dpp.h | 72 struct scaler_data scl_data; member
|
/Linux-v6.6/drivers/gpu/drm/amd/display/dc/dcn10/ |
D | dcn10_dpp_dscl.c | 280 const struct scaler_data *scl_data, in dpp1_dscl_set_scl_filter() argument 287 uint32_t h_2tap_sharp_factor = scl_data->sharpness.horz; in dpp1_dscl_set_scl_filter() 288 uint32_t v_2tap_sharp_factor = scl_data->sharpness.vert; in dpp1_dscl_set_scl_filter() 295 h_2tap_hardcode_coef_en = scl_data->taps.h_taps < 3 in dpp1_dscl_set_scl_filter() 296 && scl_data->taps.h_taps_c < 3 in dpp1_dscl_set_scl_filter() 297 && (scl_data->taps.h_taps > 1 && scl_data->taps.h_taps_c > 1); in dpp1_dscl_set_scl_filter() 298 v_2tap_hardcode_coef_en = scl_data->taps.v_taps < 3 in dpp1_dscl_set_scl_filter() 299 && scl_data->taps.v_taps_c < 3 in dpp1_dscl_set_scl_filter() 300 && (scl_data->taps.v_taps > 1 && scl_data->taps.v_taps_c > 1); in dpp1_dscl_set_scl_filter() 317 scl_data->taps.h_taps, scl_data->ratios.horz); in dpp1_dscl_set_scl_filter() [all …]
|
D | dcn10_dpp.c | 126 struct scaler_data *scl_data, in dpp1_get_optimal_number_of_taps() argument 130 if (scl_data->format == PIXEL_FORMAT_FP16 && in dpp1_get_optimal_number_of_taps() 132 scl_data->ratios.horz.value != dc_fixpt_one.value && in dpp1_get_optimal_number_of_taps() 133 scl_data->ratios.vert.value != dc_fixpt_one.value) in dpp1_get_optimal_number_of_taps() 136 if (scl_data->viewport.width > scl_data->h_active && in dpp1_get_optimal_number_of_taps() 138 scl_data->viewport.width > dpp->ctx->dc->debug.max_downscale_src_width) in dpp1_get_optimal_number_of_taps() 144 if (scl_data->ratios.horz.value == (4ll << 32)) in dpp1_get_optimal_number_of_taps() 145 scl_data->ratios.horz.value--; in dpp1_get_optimal_number_of_taps() 146 if (scl_data->ratios.vert.value == (4ll << 32)) in dpp1_get_optimal_number_of_taps() 147 scl_data->ratios.vert.value--; in dpp1_get_optimal_number_of_taps() [all …]
|
D | dcn10_hw_sequencer.c | 2679 pipe_ctx->plane_res.scl_data.lb_params.alpha_en = per_pixel_alpha; in update_scaler() 2680 pipe_ctx->plane_res.scl_data.lb_params.depth = LB_PIXEL_DEPTH_36BPP; in update_scaler() 2683 pipe_ctx->plane_res.dpp, &pipe_ctx->plane_res.scl_data); in update_scaler() 2773 size.surface_size = pipe_ctx->plane_res.scl_data.viewport; in dcn10_update_dchubp_dpp() 2797 &pipe_ctx->plane_res.scl_data.viewport, in dcn10_update_dchubp_dpp() 2798 &pipe_ctx->plane_res.scl_data.viewport_c); in dcn10_update_dchubp_dpp() 3353 const struct scaler_data *scl_data = &pipe_ctx->plane_res.scl_data; in dcn10_can_pipe_disable_cursor() local 3354 struct rect r1 = scl_data->recout, r2, r2_half; in dcn10_can_pipe_disable_cursor() 3371 r2 = test_pipe->plane_res.scl_data.recout; in dcn10_can_pipe_disable_cursor() 3383 r2_half = split_pipe->plane_res.scl_data.recout; in dcn10_can_pipe_disable_cursor() [all …]
|
D | dcn10_dpp.h | 1371 struct scaler_data scl_data; member 1402 const struct scaler_data *scl_data, 1494 const struct scaler_data *scl_data); 1515 struct scaler_data *scl_data,
|
/Linux-v6.6/drivers/gpu/drm/amd/display/dc/dcn32/ |
D | dcn32_dpp.c | 35 const struct scaler_data *scl_data, in dscl32_calc_lb_num_partitions() argument 43 int line_size = scl_data->viewport.width < scl_data->recout.width ? in dscl32_calc_lb_num_partitions() 44 scl_data->viewport.width : scl_data->recout.width; in dscl32_calc_lb_num_partitions() 45 int line_size_c = scl_data->viewport_c.width < scl_data->recout.width ? in dscl32_calc_lb_num_partitions() 46 scl_data->viewport_c.width : scl_data->recout.width; in dscl32_calc_lb_num_partitions() 67 if (scl_data->viewport.width == scl_data->h_active && in dscl32_calc_lb_num_partitions() 68 scl_data->viewport.height == scl_data->v_active) { in dscl32_calc_lb_num_partitions() 81 if (scl_data->viewport.width == scl_data->h_active && in dscl32_calc_lb_num_partitions() 82 scl_data->viewport.height == scl_data->v_active) { in dscl32_calc_lb_num_partitions() 97 if (scl_data->lb_params.alpha_en in dscl32_calc_lb_num_partitions()
|
/Linux-v6.6/drivers/gpu/drm/amd/display/dc/dcn30/ |
D | dcn30_dpp.c | 387 struct scaler_data *scl_data, in dpp3_get_optimal_number_of_taps() argument 395 if (scl_data->viewport.width > scl_data->h_active && in dpp3_get_optimal_number_of_taps() 397 scl_data->viewport.width > dpp->ctx->dc->debug.max_downscale_src_width) in dpp3_get_optimal_number_of_taps() 406 if (dc_fixpt_ceil(scl_data->ratios.horz) > 1) in dpp3_get_optimal_number_of_taps() 407 scl_data->taps.h_taps = min(2 * dc_fixpt_ceil(scl_data->ratios.horz), 8); in dpp3_get_optimal_number_of_taps() 409 scl_data->taps.h_taps = 4; in dpp3_get_optimal_number_of_taps() 411 scl_data->taps.h_taps = in_taps->h_taps; in dpp3_get_optimal_number_of_taps() 413 if (dc_fixpt_ceil(scl_data->ratios.vert) > 1) in dpp3_get_optimal_number_of_taps() 414 scl_data->taps.v_taps = min(dc_fixpt_ceil(dc_fixpt_mul_int(scl_data->ratios.vert, 2)), 8); in dpp3_get_optimal_number_of_taps() 416 scl_data->taps.v_taps = 4; in dpp3_get_optimal_number_of_taps() [all …]
|
D | dcn30_dpp.h | 575 struct scaler_data scl_data; member 598 struct scaler_data *scl_data,
|
/Linux-v6.6/drivers/gpu/drm/amd/display/dc/dce60/ |
D | dce60_hw_sequencer.c | 151 default_adjust.surface_pixel_format = pipe_ctx->plane_res.scl_data.format; in dce60_set_default_colors() 158 default_adjust.lb_color_depth = pipe_ctx->plane_res.scl_data.lb_params.depth; in dce60_set_default_colors() 202 switch (pipe_ctx->plane_res.scl_data.format) { in dce60_get_surface_visual_confirm_color() 248 pipe_ctx->plane_res.scl_data.lb_params.depth, in dce60_program_scaler() 266 &pipe_ctx->plane_res.scl_data); in dce60_program_scaler() 312 pipe_ctx->plane_res.scl_data.lb_params.alpha_en = pipe_ctx->bottom_pipe != 0; in dce60_program_front_end_for_pipe() 371 pipe_ctx->plane_res.scl_data.viewport.width, in dce60_program_front_end_for_pipe() 372 pipe_ctx->plane_res.scl_data.viewport.height, in dce60_program_front_end_for_pipe() 373 pipe_ctx->plane_res.scl_data.viewport.x, in dce60_program_front_end_for_pipe() 374 pipe_ctx->plane_res.scl_data.viewport.y, in dce60_program_front_end_for_pipe() [all …]
|
/Linux-v6.6/drivers/gpu/drm/amd/display/dc/dcn20/ |
D | dcn20_dpp.c | 259 const struct scaler_data *scl_data, in dscl2_calc_lb_num_partitions() argument 267 int line_size = scl_data->viewport.width < scl_data->recout.width ? in dscl2_calc_lb_num_partitions() 268 scl_data->viewport.width : scl_data->recout.width; in dscl2_calc_lb_num_partitions() 269 int line_size_c = scl_data->viewport_c.width < scl_data->recout.width ? in dscl2_calc_lb_num_partitions() 270 scl_data->viewport_c.width : scl_data->recout.width; in dscl2_calc_lb_num_partitions() 304 if (scl_data->lb_params.alpha_en in dscl2_calc_lb_num_partitions()
|
D | dcn20_hwseq.c | 1429 …if (memcmp(&old_pipe->plane_res.scl_data, &new_pipe->plane_res.scl_data, sizeof(struct scaler_data… in dcn20_detect_pipe_changes() 1432 …if (memcmp(&old_pipe->plane_res.scl_data.viewport, &new_pipe->plane_res.scl_data.viewport, sizeof(… in dcn20_detect_pipe_changes() 1433 || memcmp(&old_pipe->plane_res.scl_data.viewport_c, in dcn20_detect_pipe_changes() 1434 &new_pipe->plane_res.scl_data.viewport_c, sizeof(struct rect))) in dcn20_detect_pipe_changes() 1572 pipe_ctx->plane_res.scl_data.lb_params.alpha_en = pipe_ctx->plane_state->per_pixel_alpha; in dcn20_update_dchubp_dpp() 1573 ASSERT(pipe_ctx->plane_res.scl_data.lb_params.depth == LB_PIXEL_DEPTH_36BPP); in dcn20_update_dchubp_dpp() 1576 pipe_ctx->plane_res.dpp, &pipe_ctx->plane_res.scl_data); in dcn20_update_dchubp_dpp() 1586 &pipe_ctx->plane_res.scl_data.viewport, in dcn20_update_dchubp_dpp() 1587 &pipe_ctx->plane_res.scl_data.viewport_c); in dcn20_update_dchubp_dpp() 1633 size.surface_size = pipe_ctx->plane_res.scl_data.viewport; in dcn20_update_dchubp_dpp()
|
D | dcn20_dpp.h | 693 struct scaler_data scl_data; member 746 const struct scaler_data *scl_data,
|
/Linux-v6.6/drivers/gpu/drm/amd/display/dc/dce/ |
D | dce_transform.c | 1165 struct scaler_data *scl_data, in dce_transform_get_optimal_number_of_taps() argument 1169 int pixel_width = scl_data->viewport.width; in dce_transform_get_optimal_number_of_taps() 1173 (scl_data->viewport.width > scl_data->recout.width)) in dce_transform_get_optimal_number_of_taps() 1174 pixel_width = scl_data->recout.width; in dce_transform_get_optimal_number_of_taps() 1178 scl_data->lb_params.depth, in dce_transform_get_optimal_number_of_taps() 1194 scl_data->taps.h_taps = decide_taps(scl_data->ratios.horz, in_taps->h_taps, false); in dce_transform_get_optimal_number_of_taps() 1195 scl_data->taps.v_taps = decide_taps(scl_data->ratios.vert, in_taps->v_taps, false); in dce_transform_get_optimal_number_of_taps() 1196 scl_data->taps.h_taps_c = decide_taps(scl_data->ratios.horz_c, in_taps->h_taps, true); in dce_transform_get_optimal_number_of_taps() 1197 scl_data->taps.v_taps_c = decide_taps(scl_data->ratios.vert_c, in_taps->v_taps, true); in dce_transform_get_optimal_number_of_taps() 1199 if (!IDENTITY_RATIO(scl_data->ratios.vert)) { in dce_transform_get_optimal_number_of_taps() [all …]
|
/Linux-v6.6/drivers/gpu/drm/amd/display/dc/dml/calcs/ |
D | dcn_calcs.c | 341 input->src.viewport_width = pipe->plane_res.scl_data.viewport.width; in pipe_ctx_to_e2e_pipe_params() 342 input->src.viewport_height = pipe->plane_res.scl_data.viewport.height; in pipe_ctx_to_e2e_pipe_params() 343 input->src.data_pitch = pipe->plane_res.scl_data.viewport.width; in pipe_ctx_to_e2e_pipe_params() 344 input->src.data_pitch_c = pipe->plane_res.scl_data.viewport.width; in pipe_ctx_to_e2e_pipe_params() 398 input->scale_taps.htaps = pipe->plane_res.scl_data.taps.h_taps; in pipe_ctx_to_e2e_pipe_params() 399 input->scale_ratio_depth.hscl_ratio = pipe->plane_res.scl_data.ratios.horz.value/4294967296.0; in pipe_ctx_to_e2e_pipe_params() 400 input->scale_ratio_depth.vscl_ratio = pipe->plane_res.scl_data.ratios.vert.value/4294967296.0; in pipe_ctx_to_e2e_pipe_params() 401 input->scale_ratio_depth.vinit = pipe->plane_res.scl_data.inits.v.value/4294967296.0; in pipe_ctx_to_e2e_pipe_params() 404 input->scale_taps.vtaps = pipe->plane_res.scl_data.taps.v_taps; in pipe_ctx_to_e2e_pipe_params() 405 input->scale_taps.vtaps_c = pipe->plane_res.scl_data.taps.v_taps_c; in pipe_ctx_to_e2e_pipe_params() [all …]
|
D | dce_calcs.c | 2827 data->src_width[num_displays + 4] = bw_int_to_fixed(pipe[i].plane_res.scl_data.viewport.width); in populate_initial_data() 2829 data->src_height[num_displays + 4] = bw_int_to_fixed(pipe[i].plane_res.scl_data.viewport.height); in populate_initial_data() 2830 data->h_taps[num_displays + 4] = bw_int_to_fixed(pipe[i].plane_res.scl_data.taps.h_taps); in populate_initial_data() 2831 data->v_taps[num_displays + 4] = bw_int_to_fixed(pipe[i].plane_res.scl_data.taps.v_taps); in populate_initial_data() 2832 …data->h_scale_ratio[num_displays + 4] = fixed31_32_to_bw_fixed(pipe[i].plane_res.scl_data.ratios.h… in populate_initial_data() 2833 …data->v_scale_ratio[num_displays + 4] = fixed31_32_to_bw_fixed(pipe[i].plane_res.scl_data.ratios.v… in populate_initial_data() 2882 …data->src_height[num_displays * 2 + j] = bw_int_to_fixed(pipe[i].bottom_pipe->plane_res.scl_data.v… in populate_initial_data() 2883 …data->src_width[num_displays * 2 + j] = bw_int_to_fixed(pipe[i].bottom_pipe->plane_res.scl_data.vi… in populate_initial_data() 2886 …data->h_taps[num_displays * 2 + j] = bw_int_to_fixed(pipe[i].bottom_pipe->plane_res.scl_data.taps.… in populate_initial_data() 2887 …data->v_taps[num_displays * 2 + j] = bw_int_to_fixed(pipe[i].bottom_pipe->plane_res.scl_data.taps.… in populate_initial_data() [all …]
|
/Linux-v6.6/drivers/gpu/drm/amd/display/dc/core/ |
D | dc_resource.c | 801 struct scaler_data *data = &pipe_ctx->plane_res.scl_data; in calculate_viewport_size() 1162 pipe_ctx->plane_res.scl_data.recout = shift_rec( in calculate_recout() 1166 &pipe_ctx->plane_res.scl_data.recout, in calculate_recout() 1170 memset(&pipe_ctx->plane_res.scl_data.recout, 0, in calculate_recout() 1191 pipe_ctx->plane_res.scl_data.ratios.horz = dc_fixpt_from_fraction( in calculate_scaling_ratios() 1194 pipe_ctx->plane_res.scl_data.ratios.vert = dc_fixpt_from_fraction( in calculate_scaling_ratios() 1199 pipe_ctx->plane_res.scl_data.ratios.horz.value *= 2; in calculate_scaling_ratios() 1201 pipe_ctx->plane_res.scl_data.ratios.vert.value *= 2; in calculate_scaling_ratios() 1203 pipe_ctx->plane_res.scl_data.ratios.vert.value = div64_s64( in calculate_scaling_ratios() 1204 pipe_ctx->plane_res.scl_data.ratios.vert.value * in_h, out_h); in calculate_scaling_ratios() [all …]
|
D | dc_hw_sequencer.c | 333 switch (pipe_ctx->plane_res.scl_data.format) { in get_surface_visual_confirm_color() 390 switch (top_pipe_ctx->plane_res.scl_data.format) { in get_hdr_visual_confirm_color()
|
/Linux-v6.6/drivers/gpu/drm/amd/display/dc/dce110/ |
D | dce110_transform_v.c | 48 const struct scaler_data *scl_data, in calculate_viewport() argument 53 luma_viewport->x = scl_data->viewport.x - scl_data->viewport.x % 2; in calculate_viewport() 54 luma_viewport->y = scl_data->viewport.y - scl_data->viewport.y % 2; in calculate_viewport() 56 scl_data->viewport.width - scl_data->viewport.width % 2; in calculate_viewport() 58 scl_data->viewport.height - scl_data->viewport.height % 2; in calculate_viewport() 64 if (scl_data->format == PIXEL_FORMAT_420BPP8) { in calculate_viewport()
|
D | dce110_hw_sequencer.c | 1390 pipe_ctx->plane_res.scl_data.lb_params.depth, in program_scaler() 1408 &pipe_ctx->plane_res.scl_data); in program_scaler() 1590 pipe_ctx->plane_res.scl_data.lb_params.alpha_en = pipe_ctx->bottom_pipe != NULL; in apply_single_controller_ctx_to_hw() 2336 default_adjust.surface_pixel_format = pipe_ctx->plane_res.scl_data.format; in set_default_colors() 2343 default_adjust.lb_color_depth = pipe_ctx->plane_res.scl_data.lb_params.depth; in set_default_colors() 2728 pipe_ctx->plane_res.scl_data.lb_params.alpha_en = pipe_ctx->bottom_pipe != NULL; in dce110_program_front_end_for_pipe() 2787 pipe_ctx->plane_res.scl_data.viewport.width, in dce110_program_front_end_for_pipe() 2788 pipe_ctx->plane_res.scl_data.viewport.height, in dce110_program_front_end_for_pipe() 2789 pipe_ctx->plane_res.scl_data.viewport.x, in dce110_program_front_end_for_pipe() 2790 pipe_ctx->plane_res.scl_data.viewport.y, in dce110_program_front_end_for_pipe() [all …]
|
/Linux-v6.6/drivers/gpu/drm/amd/display/dc/inc/hw/ |
D | transform.h | 186 const struct scaler_data *scl_data); 195 struct scaler_data *scl_data, 300 const struct scaler_data *scl_data,
|
D | dpp.h | 179 const struct scaler_data *scl_data); 188 struct scaler_data *scl_data,
|
/Linux-v6.6/drivers/gpu/drm/amd/display/amdgpu_dm/ |
D | amdgpu_dm_trace.h | 439 __entry->recout_x = plane_res->scl_data.recout.x; 440 __entry->recout_y = plane_res->scl_data.recout.y; 441 __entry->recout_w = plane_res->scl_data.recout.width; 442 __entry->recout_h = plane_res->scl_data.recout.height; 443 __entry->viewport_x = plane_res->scl_data.viewport.x; 444 __entry->viewport_y = plane_res->scl_data.viewport.y; 445 __entry->viewport_w = plane_res->scl_data.viewport.width; 446 __entry->viewport_h = plane_res->scl_data.viewport.height;
|
/Linux-v6.6/drivers/gpu/drm/amd/display/dc/ |
D | dc_dmub_srv.c | 845 const struct scaler_data *scl_data = &pipe_ctx->plane_res.scl_data; in dc_can_pipe_disable_cursor() local 846 struct rect r1 = scl_data->recout, r2, r2_half; in dc_can_pipe_disable_cursor() 861 r2 = test_pipe->plane_res.scl_data.recout; in dc_can_pipe_disable_cursor() 873 r2_half = split_pipe->plane_res.scl_data.recout; in dc_can_pipe_disable_cursor()
|
/Linux-v6.6/drivers/gpu/drm/amd/display/dc/inc/ |
D | core_types.h | 318 struct scaler_data scl_data; member
|