mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-15 08:14:15 +08:00
gpu: ipu-v3: image-convert: Fix input bytesperline for packed formats
The input bytesperline calculation for packed pixel formats was
incorrect. The min/max clamping values must be multiplied by the
packed bits-per-pixel. This was causing corrupted converted images
when the input format was RGB4 (probably also other input packed
formats).
Fixes: d966e23d61
("gpu: ipu-v3: image-convert: fix bytesperline
adjustment")
Reported-by: Harsha Manjula Mallikarjun <Harsha.ManjulaMallikarjun@in.bosch.com>
Suggested-by: Harsha Manjula Mallikarjun <Harsha.ManjulaMallikarjun@in.bosch.com>
Signed-off-by: Steve Longerbeam <slongerbeam@gmail.com>
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
This commit is contained in:
parent
ff391ecd65
commit
bca4d70cf1
@ -1933,7 +1933,9 @@ void ipu_image_convert_adjust(struct ipu_image *in, struct ipu_image *out,
|
|||||||
clamp_align(in->pix.width, 2 << w_align_in, MAX_W,
|
clamp_align(in->pix.width, 2 << w_align_in, MAX_W,
|
||||||
w_align_in) :
|
w_align_in) :
|
||||||
clamp_align((in->pix.width * infmt->bpp) >> 3,
|
clamp_align((in->pix.width * infmt->bpp) >> 3,
|
||||||
2 << w_align_in, MAX_W, w_align_in);
|
((2 << w_align_in) * infmt->bpp) >> 3,
|
||||||
|
(MAX_W * infmt->bpp) >> 3,
|
||||||
|
w_align_in);
|
||||||
in->pix.sizeimage = infmt->planar ?
|
in->pix.sizeimage = infmt->planar ?
|
||||||
(in->pix.height * in->pix.bytesperline * infmt->bpp) >> 3 :
|
(in->pix.height * in->pix.bytesperline * infmt->bpp) >> 3 :
|
||||||
in->pix.height * in->pix.bytesperline;
|
in->pix.height * in->pix.bytesperline;
|
||||||
|
Loading…
Reference in New Issue
Block a user