amd/vpelib: Solve the downscaling problem for 2 tap

We should set default value of tap if we enable the
skip_optimal_tap_check flag for 2 tap case.

Reviewed-by: Tomson Chang <tomson.chang@amd.com>
Acked-by: Alan Liu <haoping.liu@amd.com>
Signed-off-by: Jude Shih <shenshih@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26841>
This commit is contained in:
Shih, Jude 2023-12-13 13:06:14 +08:00 committed by Marge Bot
parent 25d0384df8
commit 7e4d95c271

View file

@ -175,9 +175,16 @@ static bool vpe10_init_scaler_data(struct vpe_priv *vpe_priv, struct stream_ctx
struct dpp *dpp = vpe_priv->resource.dpp[0];
calculate_scaling_ratios(scl_data, src_rect, dst_rect, stream_ctx->stream.surface_info.format);
if (!vpe_priv->init.debug.skip_optimal_tap_check && !dpp->funcs->get_optimal_number_of_taps(
dpp, scl_data, &stream_ctx->stream.scaling_info.taps))
return false;
if (vpe_priv->init.debug.skip_optimal_tap_check) {
scl_data->taps.v_taps = stream_ctx->stream.scaling_info.taps.v_taps;
scl_data->taps.h_taps = stream_ctx->stream.scaling_info.taps.h_taps;
scl_data->taps.v_taps_c = stream_ctx->stream.scaling_info.taps.v_taps_c;
scl_data->taps.h_taps_c = stream_ctx->stream.scaling_info.taps.h_taps_c;
} else {
if (!dpp->funcs->get_optimal_number_of_taps(
dpp, scl_data, &stream_ctx->stream.scaling_info.taps))
return false;
}
if ((stream_ctx->stream.use_external_scaling_coeffs ==
false) || /* don't try to optimize is the scaler is configured externally*/