mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-20 10:44:23 +08:00
[media] rcar-vin: fix bug in pixelformat selection
If the requested pixelformat is not supported fallback to the default format, do not revert the entire format. Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
This commit is contained in:
parent
8afb72eda5
commit
e09c3481d9
@ -206,7 +206,6 @@ static int __rvin_try_format(struct rvin_dev *vin,
|
||||
struct v4l2_pix_format *pix,
|
||||
struct rvin_source_fmt *source)
|
||||
{
|
||||
const struct rvin_video_format *info;
|
||||
u32 rwidth, rheight, walign;
|
||||
int ret;
|
||||
|
||||
@ -218,17 +217,11 @@ static int __rvin_try_format(struct rvin_dev *vin,
|
||||
if (pix->field == V4L2_FIELD_ANY)
|
||||
pix->field = vin->format.field;
|
||||
|
||||
/*
|
||||
* Retrieve format information and select the current format if the
|
||||
* requested format isn't supported.
|
||||
*/
|
||||
info = rvin_format_from_pixel(pix->pixelformat);
|
||||
if (!info) {
|
||||
vin_dbg(vin, "Format %x not found, keeping %x\n",
|
||||
pix->pixelformat, vin->format.pixelformat);
|
||||
*pix = vin->format;
|
||||
pix->width = rwidth;
|
||||
pix->height = rheight;
|
||||
/* If requested format is not supported fallback to the default */
|
||||
if (!rvin_format_from_pixel(pix->pixelformat)) {
|
||||
vin_dbg(vin, "Format 0x%x not found, using default 0x%x\n",
|
||||
pix->pixelformat, RVIN_DEFAULT_FORMAT);
|
||||
pix->pixelformat = RVIN_DEFAULT_FORMAT;
|
||||
}
|
||||
|
||||
/* Always recalculate */
|
||||
|
Loading…
Reference in New Issue
Block a user