From: Philipp Zabel Date: Wed, 14 Aug 2019 08:53:30 +0000 (+0200) Subject: gpu: ipu-v3: image-convert: only sample into the next tile if necessary X-Git-Tag: v5.4-rc1~106^2~10^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=4d24376370fbfc87231d54434a683f2913abcce4;p=thirdparty%2Flinux.git gpu: ipu-v3: image-convert: only sample into the next tile if necessary The first pixel of the next tile is only sampled by the hardware if the fractional input position corresponding to the last written output pixel is not an integer position. Signed-off-by: Philipp Zabel --- diff --git a/drivers/gpu/ipu-v3/ipu-image-convert.c b/drivers/gpu/ipu-v3/ipu-image-convert.c index 1a466611ad48e..eeca50d9a1ee4 100644 --- a/drivers/gpu/ipu-v3/ipu-image-convert.c +++ b/drivers/gpu/ipu-v3/ipu-image-convert.c @@ -1151,7 +1151,7 @@ static void calc_tile_resize_coefficients(struct ipu_image_convert_ctx *ctx) * burst size. */ last_output = resized_width - 1; - if (closest) + if (closest && ((last_output * resize_coeff_h) % 8192)) last_output++; in_width = round_up( (DIV_ROUND_UP(last_output * resize_coeff_h, 8192) + 1) @@ -1208,7 +1208,7 @@ static void calc_tile_resize_coefficients(struct ipu_image_convert_ctx *ctx) * IDMAC restrictions. */ last_output = resized_height - 1; - if (closest) + if (closest && ((last_output * resize_coeff_v) % 8192)) last_output++; in_height = round_up( (DIV_ROUND_UP(last_output * resize_coeff_v, 8192) + 1)