mirror of
https://github.com/torvalds/linux.git
synced 2026-06-02 11:33:28 +02:00
media: omap3isp: isp_video_mbus_to_pix/pix_to_mbus fixes
The isp_video_mbus_to_pix/pix_to_mbus functions did not take
the last empty entry { 0, } of the formats array into account.
As a result, isp_video_mbus_to_pix would accept code 0 and
isp_video_pix_to_mbus would select code 0 if no match was found.
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
This commit is contained in:
parent
a03c909815
commit
44c03802a5
|
|
@ -148,12 +148,12 @@ static unsigned int isp_video_mbus_to_pix(const struct isp_video *video,
|
|||
pix->width = mbus->width;
|
||||
pix->height = mbus->height;
|
||||
|
||||
for (i = 0; i < ARRAY_SIZE(formats); ++i) {
|
||||
for (i = 0; i < ARRAY_SIZE(formats) - 1; ++i) {
|
||||
if (formats[i].code == mbus->code)
|
||||
break;
|
||||
}
|
||||
|
||||
if (WARN_ON(i == ARRAY_SIZE(formats)))
|
||||
if (WARN_ON(i == ARRAY_SIZE(formats) - 1))
|
||||
return 0;
|
||||
|
||||
min_bpl = pix->width * formats[i].bpp;
|
||||
|
|
@ -191,7 +191,7 @@ static void isp_video_pix_to_mbus(const struct v4l2_pix_format *pix,
|
|||
/* Skip the last format in the loop so that it will be selected if no
|
||||
* match is found.
|
||||
*/
|
||||
for (i = 0; i < ARRAY_SIZE(formats) - 1; ++i) {
|
||||
for (i = 0; i < ARRAY_SIZE(formats) - 2; ++i) {
|
||||
if (formats[i].pixelformat == pix->pixelformat)
|
||||
break;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user